构建spark结构化流媒体管道的最佳方法是什么?

6ie5vjzr  于 2021-05-27  发布在  Spark
关注(0)|答案(1)|浏览(391)

我正在把postgres数据库中的数据移动到kafka,中间用spark做一些转换。我有50个表,每一个表都有与其他表完全不同的转换。所以,我想知道如何构造spark结构化流式代码的最佳方法。我认为有三种选择:
把读写这50个表的所有逻辑函数放在一个对象中,只调用这个对象。
为每个表创建50个不同的对象,并在一个新对象中创建一个main方法,分别调用50个对象,然后调用spark.streams.awaitanytermination()
通过spark submit分别提交这50个对象
如果还有更好的选择,请和我谈谈。
谢谢您

insrf1ej

insrf1ej1#

按照方法1创建单个对象看起来不太好。很难理解和维护。
在第二步和第三步之间,我还是更喜欢第三步。有单独的工作将有点麻烦,维护(管理部署和构建公共代码),但如果做得好,它会给我们更多的灵活性。如果需要,我们可以很容易地取消部署单个表。此外,任何后续的部署或更改都意味着只部署相关的表流。其他现有的表管道将继续工作,因为它是。

相关问题