【发布时间】:2020-08-28 22:27:12
【问题描述】:
我目前正在使用 Google Cloud Dataflow 和 Apache Beam 来使用来自 Kafka 主题的消息,该主题存在于两个不同的 Kafka 集群中,两个集群包含相同的主题名称但主题中的数据不同。 Kafka 集群是分开的,因为它们包含来自不同区域的数据。
我只是想知道是否可以通过在单个 KafkaIO.read 数据流管道步骤中列出两个集群的所有引导服务器来使用来自两个集群的数据?
.withBootstrapServers("CLUSTER1_SERVER:PORT,CLUSTER2_SERVER:PORT");
我正在阅读有关 Kafka 引导服务器的文档,我不清楚在连接到引导服务器后,是否只会从第一个成功的引导服务器连接集群中使用消息,或者它是否会尝试提供的所有引导服务器并从找到的所有集群中消费。如果是前者,那么我将需要创建第二个 Dataflow 管道来处理来自第二个集群的消息,但如果我可以在一个管道中处理来自两个集群的消息会容易得多。
任何信息将不胜感激。
【问题讨论】:
-
您能分享您遵循的文档和Dataflow版本吗?谢谢!
-
@muscat 我关注了此页面上的文档:kafka.apache.org/documentation,我目前使用的 Dataflow/Apache Beam 版本是 2.18
标签: java google-cloud-platform apache-kafka google-cloud-dataflow apache-beam