google-cloud-platform - 支持 Google Dataflow 的最佳 Apache Beam 语言是什么?
问题描述
我在使用 Dataflow 使用 Apache-beam 编写代码时遇到问题。
本来我是用python写代码的,但是在支持的语言中查了一下java、go、scio。
请就是否存在性能最佳的语言向我们提供反馈。
还是有更多的图书馆支持?
是我个人的好奇心,但是文档里的内容很难概括,所以写了一个问题。谢谢你。
解决方案
这是一个非常自以为是的问题,但我会尝试根据我的知识和经验来回答。
Java 是第一个在 Beam 上发布的具有全套功能(流式处理、批处理、窗口化......)的语言。
Python 紧随其后,一开始的功能有限,后来又丰富了(没有流式传输,然后是没有窗口的流式传输……)。Beam 和 Dataflow 不在 Python 中处理数据,它绝对没有效率。Python 语言是 Java 代码中最有效处理的包装器。这就是为什么 Python 在功能方面总是落后于 Java。
Go SDK 是一个新的,我从来没有测试过,在 Alpha 的时间太长了,我从来没有花时间去尝试过。
现在,在 Dataflow 上,情况发生了变化,如此处所述。v2 引擎仅使用语言作为流水线的描述,并在 C++ 中执行处理。
因此,特征方面的差异可能会继续存在,但会在一天之内消失。性能将是相同的。
推荐阅读
- scala - Rdd SPARK 的 Rdd
- c# - 使用列名从excel中读取数据并插入到C#中的SQL表中
- vba - 使用 VBA 将单词列表转换为 Word 表格中的单元格
- java - 无法使用 Morphia (MongoDB) 查询嵌套对象
- javascript - Vuejs 和 Webpack 5 Federation 打字稿错误
- python - 如何清理列表和熊猫数据框中的元素列表?
- python - Python 字典似乎正确,但不起作用
- pagespeed - 为什么我的最大内容绘画比我的页面加载时间大得多?
- ios - Xcode 12 中的“隐藏或显示调试区域”图标在哪里?
- excel - 两列上的 Excel V-LOOKUP 与一列上最接近的匹配