【Kafka笔记】(二)核心架构与专属名词解释

一、 五大核心组件

1、Broker(服务节点)

Kafka 的服务节点,一个 Kafka 集群由多个 Broker 组成。

大白话:一台 Kafka 服务器就是一个 Broker。

2、Topic(主题)

数据的分类通道,相当于数据文件夹/数据表。

  • 不同业务数据放不同 Topic

  • 例如:vehicle_data(车联网数据)、order_log(订单数据)

核心:Flink 消费数据,本质就是消费某个 Topic 的数据。

3、Partition(分区)------ 重中之重

Topic 是逻辑概念,分区是物理存储单元。

  • 一个 Topic 可以分为多个分区

  • 数据均匀分散在不同分区存储

  • 分区数决定 Kafka 最大并发消费能力

生产铁律:Flink 并行度 ≤ Kafka 分区数,否则消费能力无法拉满。

4、Replica(副本)

分区的备份数据,用于高可用、防止数据丢失。

  • Leader 副本:负责读写数据

  • Follower 副本:只同步备份,故障时顶替 Leader

5、Offset(偏移量)------ 最核心

分区内每条消息的唯一序号,相当于数据的"读取游标"。

  • 消费者根据 Offset 记录读到哪了

  • 重启任务不会重头读,从上次 Offset 继续消费

  • Flink Checkpoint 本质就是保存 Offset 状态

二、 生产者 & 消费者 & 消费者组

1、生产者 Producer

负责向 Kafka Topic 发送数据的程序/服务。

示例:车联网设备、业务服务、日志采集程序。

2、消费者 Consumer

负责从 Kafka Topic 读取数据的程序。

示例:Flink 任务、数据同步服务、消息推送服务。

3、消费者组 Group ID(企业核心)

多个消费者归为一个组,组内核心规则:

  1. 同一个组内,一条数据只会被消费一次(保证不重复消费)

  2. 不同组之间互不影响,可以重复消费同一份数据

场景举例:

  • Flink 实时计算用一个组

  • 日志备份消费用另一个组

  • 两份任务独立消费,互不干扰

三、数据存储与消费机制

1、数据存储规则

  • Kafka 数据持久化落盘,不是读完就丢

  • 默认保留一段时间(通常 7天),过期自动清理

  • 数据有序:同一分区内数据有序,跨分区无序

  • earliest:从 Topic 最开始第一条数据从头消费(测试用)

  • latest:从当前最新数据开始消费(生产默认)

3、Offset 提交机制(生产重点)

  • 自动提交:简单但容易丢数据、重复数据(生产禁用)

  • 手动提交:消费成功再提交,Flink Checkpoint 就是手动精准提交

生产标准:关闭 Kafka 自动提交,依赖 Flink 精准 Offset 管理

相关推荐
万物智能5 小时前
硬件调试三板斧—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
后端·架构
这个DBA有点耶6 小时前
从MySQL 5.7到8.0:JSON查询性能差在哪?虚拟列索引vs多值索引怎么选
数据库·mysql·架构
Erishen8 小时前
🚀 用 React Three Fiber 造一个会说话的 3D 数字人:从密钥安全到 Serverless 10 秒极限的踩坑全记录
架构·开源·agent
万物智能12 小时前
启动链路与分区—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
后端·架构
mldong14 小时前
换了工作流引擎,前端一行代码没改
java·架构
羑悻的小杀马特15 小时前
百度ASR+BRPC+ETCD高并发高可用架构搭建,C++客户端API封装+语音识别子服务注册发现+全链路测试调优终极指南!
架构·sdk·etcd·cmake·百度智能云·brpc·语音识别子服务
九皇叔叔1 天前
《MySQL 体系架构详解:Server 层、SQL 执行流程与 InnoDB、MyISAM、MEMORY 存储引擎》
sql·mysql·架构
怕浪猫1 天前
FDE 最大的浪费不是写出有 bug 的代码,而是漂亮地解决了一个错误的问题
面试·架构·github
ZGIAI1 天前
ZGI 迭代节点:批量资料的逐项处理
人工智能·架构
ZGIAI1 天前
ZGI 知识检索:让业务回答有据可查
人工智能·架构