关于kafka集群设置的提示

时间:2017-06-08 15:19:58

标签: apache-kafka

我有以下情况:

  • 4个可穿戴传感器贴在个人身上。
  • 潜在无限的个人。
  • Kafka集群。

我必须使用正在运行的apache flink实例对集群上的数据流进行实时处理。 Kafka是flink集群和传感器之间的数据中心。 此外,主题流完全独立,属于同一主题的不同流彼此独立。

我想象这个设置在我的脑海里: 我为每个主题设置了一个特定主题,每个主题在4个分区中分区,每个分区对应于特定人员的每个传感器。 通过这种方式,我可以为每个主题建立一个消费者群体。

实际上,我的数据量并不是很大,但我的兴趣是建立一个易于扩展的系统。也许有一天我可以拥有数百个人......

我的问题是:

  • 这个设置好吗?你觉得怎么样?
  • 通过这种方式,我将拥有4个kafka代理,每个代理处理一个分区,对(不考虑潜在的备份)?

摧毁我们, 并提前感谢

1 个答案:

答案 0 :(得分:1)

您在Kafka群集中无法拥有无限数量的主题,因此,如果您计划扩展超过10,000个或更多主题,那么您应该考虑另一种设计。您可以使用个人ID作为密钥,而不是为每个人提供专用主题,并将数据作为键/值对发布到较少数量的主题。在卡夫卡,你可以拥有(几乎)无限数量的钥匙。

还要考虑更多分区。您的4个经纪人中的每一个都可以处理许多分区。如果一个主题中只有4个分区,那么在消费者组中最多只能有4个消费者并行工作(在Flink的情况下)