【问题标题】:Expected ETA to avail Pipeline I/O and runtime parameters in apache beam GCP dataflow pipeline using python?预计 ETA 将在使用 python 的 apache Beam GCP 数据流管道中使用管道 I/O 和运行时参数?
【发布时间】:2020-05-25 13:32:12
【问题描述】:

只是想知道我们是否有更多的管道 I/O 和运行时参数可用于新版本 (3.X) 的 python。如果我是正确的,那么当前 apache beam 在使用 python 时仅提供基于文件的 IO:textio、avroio、tfrecordio。但是对于 Java,我们有更多可用的选项,例如基于文件的 IO、BigQueryIO、BigtableIO、PubSubIO 和 SpannerIO。

在我的要求中,我想使用 python 3.X 在 GCP 数据流管道中使用 BigQueryIO,但目前它不可用。有没有人对 ETA 有一些更新,什么时候可以通过 apache Beam 获得。

【问题讨论】:

    标签: python google-cloud-platform google-cloud-dataflow apache-beam apache-beam-io


    【解决方案1】:

    Python 3 的 BigTable 连接器已经开发了一段时间。目前,没有 ETA,但您可以关注官方 Apache Beam 存储库中的相关Pull-Request 以获取进一步更新。

    【讨论】:

    • 我的问题中有一个拼写错误,我刚刚更正了。在我的要求中,我正在寻找适用于 python 3 的 BigQueryIO 连接器。
    【解决方案2】:

    BigQueryIO 已在 Apache Beam Python SDK 中提供了相当长一段时间。

    还有Pub/Sub IO availableBigTable (write)SpannerIO 在我们发言时正在处理中。

    此页面有更多详细信息https://beam.apache.org/documentation/io/built-in/

    更新:

    根据 OP 提供的更多详细信息,事实证明确实不支持在 BigQuery 查询字符串中使用值提供程序。

    这已在以下 PR 中得到纠正:https://github.com/apache/beam/pull/11040,并且很可能会成为 2.21.0 版本的一部分。

    更新 2: 此新功能已添加到 Apache Beam 2.20.0 版本中 https://beam.apache.org/blog/2020/04/15/beam-2.20.0.html

    希望它能解决你的问题!

    【讨论】:

    • 仅供参考,我已经打开了issues.apache.org/jira/browse/BEAM-9305
    • 未完成的 PR 位于:github.com/apache/beam/pull/11040 预计该功能很可能会成为 2.21.0 版本的一部分。
    • @KaustubhGhole PR 已合并,很可能会成为 2.21.0 版本的一部分。同时,如果需要,您可以将 PR 中的更改添加到 Beam 的本地安装中,并使用此修改后的包使用自定义 SDK 标志运行 Dataflow。
    • 2.21.0 应该至少还有 2 个月的时间。他们可能会将此修复添加到 2.20.0,不过应该很快就会发布。
    • 该修复已添加到上周五发布的 2.20.0:beam.apache.org/blog/2020/04/15/beam-2.20.0.html 希望它能解决您的问题!
    猜你喜欢
    • 2019-04-23
    • 2022-08-16
    • 2020-06-10
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多