语义分区功能在Kafka中意味着什么?

时间:2017-07-14 07:26:12

标签: apache-kafka

全部。请原谅我,我只是在学习Apache Kafka。当我阅读卡夫卡的文件时。它提到了一个名为semantic partition function的短语。

正如文件所说。

  

生产者将数据发布到他们选择的主题。制片人是   负责选择分配给哪个分区的记录   在主题内。这可以简单地以循环方式完成   平衡负载或可以根据某些语义分区来完成   功能(比如基于记录中的某些键)。更多关于使用   在一秒钟内分区!

semantic partition中的Kafka是什么意思?到目前为止,我在文档中没有找到任何关于它的内容。有人可以帮助解释一下有关它的更多信息吗?谢谢。

1 个答案:

答案 0 :(得分:2)

当生产者没有为消息指定密钥时,使用循环方式。指定密钥时,DefaultPartitioner只处理密钥上的散列(模块分区数)。如果需要,可以使用自己的分区器类。文档只想说:用于定义目标分区的“语义”取决于您,您可以开发“功能”(实际上是分区类)。例如,代替在消息中使用Kafka密钥,您可以拥有一个有效负载,让我说一个JSON,包含一些数据,并且您希望使用其中一个信息来处理正确的目标分区。