【问题标题】:How to run Cloud Dataflow pipelines using Spark runner?如何使用 Spark runner 运行 Cloud Dataflow 管道?
【发布时间】:2018-11-29 05:21:18
【问题描述】:

我了解到基于 Apache Beam SDK 的 Google Cloud Dataflow 管道可以使用 Spark 或 Flink 运行。

我目前使用默认的 Cloud Dataflow 运行器在 GCP 上运行一些数据流管道,我想使用 Spark 运行器运行它,但我不知道如何操作。

是否有任何关于如何执行此操作的文档或指南?任何指针都会有所帮助。

谢谢。

【问题讨论】:

    标签: apache-spark google-cloud-platform google-cloud-dataflow apache-beam


    【解决方案1】:

    我假设您使用的是 Java,但等效的过程也适用于 Python。

    您需要迁移管道以使用 Apache Beam SDK,将您的 Google Dataflow SDK 依赖项替换为:

    <dependency>
      <groupId>org.apache.beam</groupId>
      <artifactId>beam-sdks-java-core</artifactId>
      <version>2.4.0</version>
    </dependency>
    

    然后为你想使用的运行器添加依赖:

    <dependency>
        <groupId>org.apache.beam</groupId>
        <artifactId>beam-runners-spark</artifactId>
        <version>2.4.0</version>
    </dependency>
    

    并添加--runner=spark以指定提交管道时应使用此运行器。

    请参阅https://beam.apache.org/documentation/runners/capability-matrix/ 了解跑步者的完整列表和他们的能力比较。

    【讨论】:

    • 谢谢。我会试试这个。
    【解决方案2】:

    感谢分散在网络上的多个教程和文档,我终于能够对如何将 spark runner 与任何基于 Beam SDK 的管道一起使用有了一个连贯的想法。

    我在此处记录了整个过程以供将来参考:http://opreview.blogspot.com/2018/07/running-apache-beam-pipeline-using.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-11
      • 2020-12-10
      • 2017-09-21
      相关资源
      最近更新 更多