细说 Kafka Partition 分区
SegmentFault
共 3327字,需浏览 7分钟
· 2021-05-11
作者:iriniland
来源:SegmentFault 思否社区
一、Events, Streams, Topics
二、Partition 分区
Kafka 中 Topic 被分成多个 Partition 分区。
三、Offsets(偏移量)和消息的顺序
四、Partition 为 Kafka 提供了扩展能力
如果把 Topic 的所有 Partition 都放在一个 Broker 上,那么这个 Topic 的可扩展性就大大降低了,会受限于这个 Broker 的 IO 能力。把 Partition 分散开之后,Topic 就可以水平扩展 。 一个 Topic 可以被多个 Consumer 并行消费。如果 Topic 的所有 Partition 都在一个 Broker,那么支持的 Consumer 数量就有限,而分散之后,可以支持更多的 Consumer。 一个 Consumer 可以有多个实例,Partition 分布在多个 Broker 的话,Consumer 的多个实例就可以连接不同的 Broker,大大提升了消息处理能力。可以让一个 Consumer 实例负责一个 Partition,这样消息处理既清晰又高效。
五、Partition 为 Kafka 提供了数据冗余
六、写入 Partition
1. 使用 Partition Key 写入特定 Partition
2. 由 kafka 决定
3. 自定义规则
七、读取 Partition
评论
Kafka 时间轮(TimingWheel)原理,值得借鉴
在kafka中,有许多请求并不是立即返回,而且处理完一些异步操作或者等待某些条件达成后才返回,这些请求一般都会带有timeout参数,表示如果timeout时间后服务端还不满足返回的条件,就判定此次请求为超时,这时候kaf...
浪尖聊大数据
0
几种常见的 Kafka 集群监控工具
本文选自电子工业出版社的新书《kafka进阶》,推荐一下。一个功能健全的kafka集群可以处理相当大的数据量,由于消息系统是很多大型应用的基石,因此broker集群在性能上的缺陷,都会引起整个应用栈的各种问题。Kafka...
浪尖聊大数据
0
漫画讲解Kafka高效的存储设计|面试
在开始讲解之前,先带着大家回忆一下kafka一些名词概念:a. Broker:提供数据存储和数据读写服务实例,一个Kafka节点就是一个broker,多个broker可以组成一个Kafka集群。b. Topic:代表的是一类消息,例如应用日志的...
浪尖聊大数据
0
这些年背过的面试题——Kafka篇
阿里妹导读本文是技术人面试系列Kafka篇,面试中关于Kafka都需要了解哪些基础?一文带你详细了解,欢迎收藏!Why kafka消息队列的作用:异步、削峰填谷、解耦中小型公司,技术挑战不是特别高,用 RabbitMQ ...
Java学习之道
0
Kafka Consumer 消费消息和 Rebalance 机制
Kafka Consumer Kafka 有消费组的概念,每个消费者只能消费所分配到的分区的消息,每一个分区只能被一个消费组中的一个消费者所消费,所以同一个消费组中消费者的数量如果超过了分区的数量,将会出现有些消费者分配...
码哥字节
0
Kafka 痛点专题|AutoMQ 如何解决 Kafka 冷读副作用
背景 Apache Kafka (下文简称 Kafka)作为一款成功的流处理平台已经在各行各业中有广泛的应用,并且具备极其强大的软件生态。但是,其一些缺点也给使用者带来了很大的挑战。AutoMQ 是基于云原生架构实现的新一代 K...
瓜农老梁
0
聊聊Flink:Flink的分区机制
一、前言flink任务在执行过程中,一个流(stream)包含一个或多个分区(Stream partition)。TaskManager中的一个slot的subtask就是一个stream partition(流分区),一个Job的流(stream)分布在多个不同的Slot上执...
老周聊架构
0