【问题标题】:apache_beam spark runner with python can't be implemented on remote spark cluster?apache_beam spark runner with python 不能在远程spark集群上实现?
【发布时间】:2019-11-28 13:54:35
【问题描述】:

我正在遵循 python 指南beam spark runner,beam_pipeline 可以将作业提交到由./gradlew :runners:spark:job-server:runShadow 使用本地火花启动的本地作业服务器, 并将参数-PsparkMasterUrl=spark://localhost:7077 添加到预部署的火花。

但我在 yarn 上有一个 spark 集群,我将启动命令设置为 ./gradlew :runners:spark:job-server:runShadow -PsparkMasterUrl=yarn(also tried yarn-client),但只能得到 org.apache.spark.SparkException: Could not parse Master URL: 'yarn'

spark runner(beam\sdks\python\apache_beam\runners\portability\spark_runnner.py)的源代码显示:

parser.add_argument('--spark_master_url',
                        default='local[4]',
                        help='Spark master URL (spark://HOST:PORT). '
                             'Use "local" (single-threaded) or "local[*]" '
                             '(multi-threaded) to start a local cluster for '
                             'the execution.')

它没有提到“纱线”,并且 Spark 便携式运行器不支持提供的 SparkContext 和 StreamingListener。那么这是否意味着带有python的apache_beam spark runner不能在远程spark集群(主要是yarn)上实现并且只能在本地测试?或者我可以将 job_endpoint 设置为我的 spark 集群的远程作业服务器 url。

每个./gradlew 命令在 98% 时被阻止,但 jab 服务器以这样的信息启动:

19/11/28 13:47:48 INFO org.apache.beam.runners.fnexecution.jobsubmission.JobServerDriver: JobService started on localhost:8099
<============-> 98% EXECUTING [16s]
> IDLE
> :runners:spark:job-server:runShadow
> IDLE

【问题讨论】:

    标签: apache-spark apache-beam


    【解决方案1】:

    这是否意味着 apache_beam spark runner with python 不能在远程 spark 集群上实现(主要是纱线)

    我们最近添加了portable Spark jars,可以通过spark-submit 提交。但是,直到 2.19.0 版本才计划将此功能包含在 Beam 版本中。

    我创建了一个JIRA ticket 来跟踪 YARN 支持的状态,以防有其他相关问题需要解决。

    每个 ./gradlew 命令都被阻止了 98%

    这是预期的行为。作业服务器将一直运行直到取消。

    【讨论】:

      猜你喜欢
      • 2017-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多