我有下面的场景,我有多个大文件(每个大约200M记录),我想通过kafka发送该文件。为了获得更好的性能,我想使用Kafka分区来发送数据。现在我的数据要求是针对特定的密钥,所有的消息都应该传送到特定的分区。目前,对于POC,我使用10个卡夫卡分区,并使用数字ID字段对数据进行分区。我的逻辑只是检查IT的最后一位数字并将记录发送到相应的kafka分区。 EX:ID - ***7
将总是进入分区7.现在这个逻辑不能用于推广我的代码,因为密钥可以是非数字的,分区数量可以根据需要增加/减少。在kafka分区中均匀分布数据的分区技术
我想知道是否有一个哈希算法,可以在特定范围内生成值(例如,如果我必须有10个分区,那么它应该创建以0-9
结尾的所有哈希值)?
米哈尔感谢您的评论,我看到有关于DefaultPartitioner非常少的文档。每次通过时都会为同一个密钥生成相同的散列分区号码对? – Explorer
是的,除非您更改分区数量。 –