如何为Airflow SparkSubmitOperator设置本地主服务器

时间:2018-05-02 21:03:33

标签: apache-spark pyspark airflow

通过Airflow的SparkSubmitOperatorSparkSubmitHook正确设置Spark主控器比预期更具挑战性。

您似乎必须为local设置正确的连接,否则默认为纱线。

我在我的shell中设置了export AIRFLOW_CONN_SPARK_LOCAL=local[2],但最终的spark-submit命令仍然是空白的:--master。我在这里重新创作:

>>> CONN_ENV_PREFIX = 'AIRFLOW_CONN_'
>>> import os
>>> conn_id = 'spark_local'
>>> os.environ.get(CONN_ENV_PREFIX + conn_id.upper())
'local[2]'
>>> from airflow.models import Connection
>>> Connection(conn_id=conn_id, uri='local[2]')
spark_local
>>> Connection(conn_id=conn_id, uri='local[2]').host
''
>>> Connection(conn_id=conn_id, uri='local').host
''
>>> Connection(conn_id=conn_id, uri='spark://local').host
'local'
>>> Connection(conn_id=conn_id, uri='spark://local[2]').host
'2'

似乎将网址设置为spark://local部分有效,但此处缺少Airflow文档,而且我不确定如何设置本地核心的数量。有什么想法吗?

0 个答案:

没有答案