kafka入门

文章目录

主题

kafka中的消息存在topic中,也就是主题,类似于数据库中的表,通常我们将相同类型的消息存放在一个主题中。数据库的表是结构化,而topic是半结构化,某些情况下我们也可以将不同类型的消息存放在同一个topic中。

分区

主题可以包含多个分区,kafka是分布式的消息系统,可以将不同的分区存到不同的服务器上,这样就使得kafka具有拓展性。可调整分区的数量和kafka节点的数量来进行拓展。

分区是线性增长的,当消息存到kafka分区里,就不可变更,kafka会为每个消息分配一个偏移量,也就是offset,offset会记录每条消息的位置,kafka可通过偏移量对消息进行提取,但没法对消息的内容进行检索和查询。偏移量在每个分区中是唯一的,不可重复,递增的。不同的分区之间偏移量可以重复。

kafka中的消息 record是以键值对的形式进行存储的,不指定key,那key的值就是空。

key值为空,kafka会以轮询的方式讲消息写到不同的分区中。

如果我们指定了key,那么相同key的消息会被写入相同的分区。

副本

kafka通过副本机制来保证消息的可靠性。

消息代理

Broker负责消息的读写请求,并将数据写入到磁盘中。

相关推荐
阿里云云原生2 天前
告别冗长链路!Kafka × Table Bucket 实现开放表格式零 ETL 实时入湖
云原生·kafka
风吹夏回8 天前
RabbitMQ 核心术语 + Python pika 方法完整讲解
分布式·python·rabbitmq
风吹夏回8 天前
RabbitMQ 三种模式入门:HelloWorld、WorkQueue、PubSub
分布式·rabbitmq·ruby
霸道流氓气质8 天前
分布式追踪与 RequestId 传播完全指南
分布式
cheems95278 天前
[RabbitMQ高级特性] 消息确认机制:从 Ready / Unacked 到 basicAck、basicReject、basicNack 的底层拆解
分布式·rabbitmq·ruby
whaledown8 天前
Kafka 与 Java 消息队列入门:用订单场景理解核心机制
java·kafka·消息队列·springboot
枫华落尽8 天前
【Hadoop01-完全分布式运行模式】
分布式
隔壁阿布都8 天前
ShedLock 分布式定时任务锁框架介绍
spring boot·分布式
文艺倾年8 天前
【强化学习】数学推导专题,20W字总结(十五)
人工智能·分布式·大模型·强化学习·vibecoding
ACP广源盛139246256738 天前
GSV9001S@ACP#1080P 级视频处理芯片,物理 AI 普及终端的高性价比选择
大数据·人工智能·分布式·嵌入式硬件·spark