一、topic下引入partition的作用:

topic是逻辑的概念,partition是物理的概念。

为了性能考虑,如果topic内的消息只存于一个broker,那这个broker会成为瓶颈,无法做到水平扩展。kafka通过算法尽可能的把partition分配到集群的不同服务器上。

partition也可以理解为segment的封装。一个partition对应多个segment。一个segment包含一个数据文件和一个索引文件

二、kafka分区分配策略:

partition.assignment.strategy= range(默认值) 或 roundrobin

range策略:分区顺序排序,消费者按照字母排序。

partitions的个数除于消费者线程的总数来决定每个消费者线程消费几个分区。如果除不尽,那么前面几个消费者线程将会多消费一个分区。

假设有3个消费者11个分区

C1-0 将消费 0, 1, 2, 3 分区

C1-2 将消费 4, 5, 6, 7 分区

C1-3 将消费 8, 9, 10 分区

roundrobin策略:分区按照hashcode排序,消费者按照字母排序

假设有3个消费者11个分区

C1-0 将消费 0, 3, 6, 9 分区

C1-2 将消费 1, 4, 7, 10 分区

C1-3 将消费 2, 5, 8 分区

注意:

1、一个分区只能被一个消费者消费,但一个消费者可以消费多个分区的数据

2、新的api中预留了自己实现分配策略的可能性class org.apache.kafka.clients.consumer.RangeAssignor

三、分区修改./kafka-topics.sh --alter --topic topic1 --zookeeper zkip:2181/kafka --partitions 6

kafka 修改分区_kafka分区相关推荐

  1. kafka修改分区数_Kafka笔记

    一.kafka基本介绍 1概念:是一个分布式的基于发布/订阅模式的消息队列,应用于大数据实时处理 1.消息队列(topic): 优点:解耦 可恢复性 缓冲 削峰 异步通信 两种模式: 点对点模式:一对 ...

  2. kafka 修改分区_kafka修改分区和副本数

    kafka修改分区和副本数 查看现在副本分配情况 ../bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --describe --topic test1 ...

  3. kafka 修改分区_kafka的分区数设置

    越多的分区可以提供更高的吞吐量 首先我们需要明白以下事实:在kafka中,单个patition是kafka并行操作的最小单元.在producer和broker端,向每一个分区写入数据是可以完全并行化的 ...

  4. java kafka 分区_Kafka 主题和分区

    文章内容输出来源:拉勾教育Java高薪训练营: Topic,Kafka用于分类管理消息的逻辑单元,类似与MySQL的数据库. Partition,是Kafka下数据存储的基本单元,这个是物理上的概念. ...

  5. kafka partition分配_kafka的分区分配策略

    用过 Kafka 的同学应该都知道,每个 Topic 一般会有很多个 partitions.为了使得我们能够及时消费消息,我们也可能会启动多个 Consumer 去消费,而每个 Consumer 又会 ...

  6. kafka consumer配置拉取速度慢_Kafka分区分配策略(Partition Assignment Strategy)

    众所周知,Apache Kafka是基于生产者和消费者模型作为开源的分布式发布订阅消息系统(当然,目前Kafka定位于an open-source distributed event streamin ...

  7. java kafka 设置分区_Java kafka如何实现自定义分区类和拦截器

    Java kafka如何实现自定义分区类和拦截器 2.producer配置文件指定,具体的分区类 // 具体的分区类 props.put(ProducerConfig.PARTITIONER_CLAS ...

  8. 【kafka运维】分区副本重分配、数据迁移、副本扩缩容 (附教学视频)

    日常运维.问题排查=> 滴滴开源LogiKM一站式Kafka监控与管控平台 (后续的视频会在 公众号[首发].CSDN.B站等各平台同名号[石臻臻的杂货铺]上上传 ) 分区副本重分配+注意事项+ ...

  9. 【Kafka】Kafka为什么要加入分区的概念

    Kafka为什么要加入分区的概念 kafka 分区 作用_百度搜索(1 封私信)kafka中的topic为什么要进行分区? - 知乎 Kafka安装版本选择 Apache Kafka  nc使用 nc ...

  10. Linux下的设备管理、磁盘分区及分区类型的修改

    Linux下的设备管理.磁盘分区及分区类型的修改 https://blog.csdn.net/yyyxxxs/article/details/80174164 一.设备管理 1.查看命令 fdisk ...

最新文章

  1. mysql order by 多字段排序
  2. wifi linux 驱动分析,Linux 下wifi 驱动开发(二)—— WiFi模块浅析
  3. Pl/sql 如何将oracle的表数据导出成excel文件?
  4. PHP算法对获取用,连接的字符串用in进行sql查询的php处理方法
  5. 用户操作-用户添加流程分析
  6. Oracle建立表空间,用户等环节
  7. Spring循环依赖源码剖析
  8. C# 算法之链表、双向链表以及正向反向遍历实现
  9. RAISR-master:google图像新压缩技术RAISR的测试代码调试记录(Python实现,没接触过python的小白,内含pip install解决方案)
  10. SQL Server修改数据
  11. 定制ATP-EMTP电力系统仿真模型程序修改代做
  12. WiFi 模块AT指令集整理
  13. 2018.5.1 差分放大电路实验
  14. 微信小程序数据库操作之更新数据(转载)
  15. excel 插入计算机用户名,excel中获取计算机登陆的用户名
  16. 做虚拟化的服务器网卡用什么,VMware ESX两种虚拟网卡性能对比测试
  17. 记录自己的UCF—Crime代码debug
  18. java 输出空心正方形_怎么用java数组打印一个正方形中间空着的
  19. 机器学习常用「微积分」知识速查手册
  20. Java byte[]与short[]之间转换

热门文章

  1. postgresql 累乘
  2. 小程序使用wxs处理手机号
  3. 【纹理映射】球面坐标、直角坐标系、纹理空间坐标系的转换
  4. 手把手教你玩maven脚手架
  5. dell笔记本安装win7.ios
  6. HbuilderX中 华为手机 真机调试
  7. This account is currently not available 解决办法
  8. HDU 6319 Problem A. Ascending Rating (单调队列)
  9. wav是什么格式?怎么转成mp3?
  10. 短进程优先调度算法c语言spf,短进程优先的调度算法详解