pyspark:如何释放资源

pyspark: how to free resources

我正在 IPython Notebook

中执行此代码
def some():
    import pyspark
    conf = (pyspark.SparkConf() 
                    .setMaster("yarn-client") 
                    .setAppName("MyTest")) 
    sc = pyspark.SparkContext(conf=conf)
    data = sc.textFile("/tmp/mytest/")
    print data.count()

some()

我希望 Spark 在函数 some() 执行结束后释放资源(执行程序和驱动程序应该退出)。然而它并没有发生。应用程序仅在我关闭笔记本时终止。

谁能告诉我如何从我的脚本中终止 pyspark 应用程序?

Python 是垃圾收集器,您不必太担心资源 - 内存 无论如何。

但您始终可以使用 sc.stop(),这对于其他几种情况也很方便。