Kafka MQ 主题和分区

Kafka MQ 主题和分区

Kafka 的消息通过 主题 进行分类。主题就好比数据库的表,或者文件系统里的文件夹。主题可以被分为若干个 分区 ,一个分区就是一个提交日志。消息以追加的方式写入分区,然 后以先入先出的顺序读取。要注意,由于一个主题一般包含几个分区,因此无法在整个主 题范围内保证消息的顺序,但可以保证消息在单个分区内的顺序。图 1-5 所示的主题有 4 个分区,消息被追加写入每个分区的尾部。Kafka 通过分区来实现数据冗余和伸缩性。分 区可以分布在不同的服务器上,也就是说,一个主题可以横跨多个服务器,以此来提供比 单个服务器更强大的性能。

图 1-5:包含多个分区的主题表示

我们通常会使用流这个词来描述 Kafka 这类系统的数据。很多时候,人们把一个主题的数 据看成一个流,不管它有多少个分区。流是一组从生产者移动到消费者的数据。当我们讨 论流式处理时,一般都是这样描述消息的。Kafka Streams、Apache Samza 和 Storm 这些框 架以实时的方式处理消息,也就是所谓的流式处理。我们可以将流式处理与离线处理进行 比较,比如 Hadoop 就是被设计用于在稍后某个时刻处理大量的数据。第 11 章将会介绍流 式处理。

相关推荐
小江的记录本44 分钟前
【事务】Spring Framework核心——事务管理:ACID特性、隔离级别、传播行为、@Transactional底层原理、失效场景
java·数据库·分布式·后端·sql·spring·面试
半桶水专家5 小时前
Kafka 性能瓶颈 → JMX 指标对照表
分布式·kafka
殷紫川5 小时前
别再乱用了!幂等处理与分布式锁,90% 开发者都踩过的坑与正确落地姿势
分布式·架构
Jack_David9 小时前
Kafka批量消息发送
java·分布式·kafka
wanhengidc10 小时前
服务器托管对企业的作用
大数据·运维·服务器·分布式·智能手机
Code知行合壹10 小时前
Spark使用总结
大数据·分布式·spark
Swift社区10 小时前
分布式能力不是功能,而是一种架构约束
分布式·架构
0xDevNull10 小时前
Apache Kafka 完全指南
分布式·kafka
zb2006412011 小时前
RabbitMQ 客户端 连接、发送、接收处理消息
分布式·rabbitmq·ruby