数据写入kafka的分区策略

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据写入kafka的分区策略相关的知识,希望对你有一定的参考价值。

参考技术A 众所周知,kafka有分区的概念,生产者写入数据到kafka,涉及到数据到底写到哪个分区?
kafka api提供了默认的partitioner函数,具体策略如下:
1、如果生产者写入数据时,指定了具体分区,则使用该分区
2、如果生产者没有指定分区,但是提供了key,partitioner函数会对该key取hash再对topic数量取模以确定分区
3、如果生产者既没有指定分区,也没有提供key,则采用round-robin的方式选取分区

项目中用到filebeat采集数据到kafka,如果filebeat配置文件中配置了round-robin,下游在消费数据时,打印record.key可以发现key=null,每条数据到分区也不一样

以上是关于数据写入kafka的分区策略的主要内容,如果未能解决你的问题,请参考以下文章

Flink实战系列Flink SQL 写入 kafka 自定义分区策略

kafka日志保留策略异常处理

kakfa从入门到放弃: 分区和副本机制高级与低级API kafka-eagle原理数据清理限速

kakfa从入门到放弃: 分区和副本机制高级与低级API kafka-eagle原理数据清理限速

Kafka分区分配策略

kafka消费者分区分配策略