gpt4 book ai didi

python - 如何在 Python 3.x 上获取用于数据流 GCP 的 Apache Beam

转载 作者:太空狗 更新时间:2023-10-29 21:20:32 26 4
gpt4 key购买 nike

我是 GCP 和数据流的新手。但是,我想开始在 GCP 上测试和部署一些利用数据流的流程。根据文档和数据流周围的一切都必须使用 Apache 项目 BEAM。因此,并遵循官方文档here支持的python版本为2.7

老实说,这是相当令人失望的,因为 Python 2.x 版将由于没有官方支持而消失,而每个人都在使用 3.x 版。不过,我想知道是否有人知道如何准备好在 python 版本中运行的 beam 和 GCP 数据流。

我看到了这个video以及这个牧师如何完成这个美妙的里程碑,显然它在 Python 3.5 上运行。

更新:

伙计们,我只想提出一个想法,这个想法在我为数据流而苦苦挣扎时就闪过我的脑海。我真的感到非常失望,因为开始使用这个工具(无论是 Java 还是 Python 版本)是多么具有挑战性。从 python 来看,版本 3 有一些限制,这几乎是当前的标准。另一方面,java 在版本 11 上运行有问题,我必须稍微调整一下才能在版本 8 上运行我的代码,然后我开始为代码上的许多不兼容问题而苦恼。简而言之,如果 GCP 真的想向前迈进并成为第一,那么还有很多地方需要改进。 :失望:

解决方法:

我将我的 java 版本降级到 jdk 8,安装了 maven,现在我的 eclipse 版本可以用于 Apache Beam。

我终于解决了,但是,GCP 真的请考虑增强和跨越对最新版本的 Java/Python 的支持。

非常感谢

最佳答案

您现在可以在 Python 3.5 上运行 Apache Beam(我在 Direct 和 DataFlow runner 上都试过了)。apache-beam==2.11.0

运行时出现警告:

UserWarning: Running the Apache Beam SDK on Python 3 is not yet fully supported. You may encounter buggy behavior or missing features.

我已经注意到,beam.io.gcp.pubsub.ReadFromPubSub() 坏了。将消息推送到 PubSub,但管道从不读取消息(尝试使用 Direct Runner)。

希望随着时间的推移,情况会有所改善。

关于python - 如何在 Python 3.x 上获取用于数据流 GCP 的 Apache Beam,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54339270/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com