首页 > 解决方案 > 为 pyspark 烧瓶应用程序中的每个请求创建 Spark 上下文

问题描述

我是 apace spark 的新手,我们如何为基于 web 的应用程序创建 spark 上下文。

下面我用过,

from pyspark.context import SparkContext
from pyspark.conf import SparkConf
conf = SparkConf().setAppName('Test App').setMaster('spark://localhost:7077')
app = Flask(__name__)

@app.route('/find_possible_events', methods=['POST'])
def find_possible_events():
     sc=SparkContext.getOrCreate(conf=conf)
     data=sc.parallelize([20,30,40,50])
     d=data.collect()
     sc.stop
     return d

当我们同时有单个请求时,上述工作正常,但如果我们有多个请求,则意味着出错。

线程“dispatcher-event-loop-8”java.lang.OutOfMemoryError 中的异常:超出 GC 开销限制

当我查看 spark worker 日志时,它说 spark 上下文不可用。

提前致谢

标签: python-2.7apache-sparkflaskpyspark

解决方案


推荐阅读