Google云数据流Java SDK与Python SDK

2024-09-27 20:19:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我开始使用谷歌云数据流进行批处理和流处理。正在开发的作业主要用于从不同来源(MySQL、Kafka和文件系统)获取数据、清理数据、进行流式处理和bath聚合,以及写回Google云存储

对于这些任务,有没有建议使用JavaSDKPython SDK来编写作业?它们之间在性能和功能方面有什么明显的差异吗

例如,我注意到对于JavaSDK,内置的I/OPTransformJdbcIO是可用的。这个PTransform读取和写入JDBC上的数据,而这在Python SDK中是不可用的(到目前为止)。是否可以只使用Java SDK创建从MySQL数据库读取数据并写入Google云存储的管道,而其他管道使用不同的SDK(例如Python)

提前感谢您的时间


Tags: kafka数据功能管道google作业mysql来源
2条回答

我一直在使用Python SDK进行开发。虽然Java SDK中有内置的PTransformJdbcIO,但也有一些社区包,例如python可用的beam-nuggets,可用于对MySQL进行读取和写入。这就是我用来开发ETL的方法

包的链接:https://pypi.org/project/beam-nuggets/

总的来说,JavaSDK中有更多的特性

如果您对python更熟悉,那么您肯定可以在java中编写一些需要使用某些独特功能的管道,其余的则在python中编写

我将继续使用javaSDK,因为特性和外部连接器更多地使用java。但是pythonSDK也在迎头赶上

当我们向数据流提交一个beam作业时,就性能考虑而言,作业步骤将在一个API调用中发送到googlecloud数据流。因此,就数据流而言,我认为在性能上没有显著差异

相关问题 更多 >

    热门问题