01
课程导学与前置准备
Debezium是什么?Binlog是什么?为什么需要整合?课程目标与学习路径。
导学前置
02
MySQL Binlog 核心原理(上)
Binlog的三种格式(STATEMENT、ROW、MIXED)详解与对比。
Binlog格式
03
MySQL Binlog 核心原理(下)
Binlog的写入机制、两阶段提交、与Redo Log的协作。
写入Redo Log
04
Debezium 架构与核心概念
Connector、Snapshot、CDC、Offset、Schema History。
架构核心
05
Debezium 环境搭建
基于Docker Compose快速部署MySQL + Kafka + Debezium Connect。
Docker部署
06
第一个Debezium Connector
配置MySQL源连接器,实现全量数据同步。
入门全量
07
深入理解Snapshot机制
Snapshot模式(initial、when_needed、never)及性能调优。
Snapshot调优
08
增量数据捕获实战
监听INSERT、UPDATE、DELETE事件,解析Change Event结构。
CDC事件
09
事件序列化与反序列化
Avro、JSON、Protobuf格式选择与Schema Registry集成。
序列化Schema
10
Offset管理机制
Offset存储(Kafka、File、Redis)、提交频率与Exactly-Once语义。
OffsetExactly-Once
11
Schema History Topic
作用、配置、与Schema变更的联动。
Schema历史
12
DDL变更捕获与处理
监听ALTER TABLE,处理Schema不兼容变更。
DDL兼容
13
Debezium 与 Kafka Connect 深度集成
REST API管理Connector、动态扩缩容。
Kafka ConnectREST
14
单表多消费者场景
使用Single Message Transform (SMT) 进行Topic路由。
SMT路由
15
Debezium 与 Kafka Streams 整合
将CDC数据流转化为KTable进行实时关联。
StreamsKTable
16
Debezium 与 Flink CDC 对比
架构差异、适用场景、性能基准。
Flink对比
17
Debezium 与 Elasticsearch 同步实战
构建实时搜索引擎索引。
Elasticsearch搜索
18
Debezium 与 Redis 缓存同步
利用CDC事件更新Redis缓存,保证最终一致性。
Redis缓存
19
Debezium 与 ClickHouse 实时数仓
将MySQL数据实时同步到ClickHouse进行OLAP分析。
ClickHouse数仓
20
Debezium 高可用部署
多节点Debezium Connect集群、故障转移与Rebalance。
高可用集群
21
监控与告警
JMX指标、Prometheus + Grafana监控Debezium延迟与吞吐量。
监控Grafana
22
性能调优(上)
Connector配置调优(poll.interval.ms、max.batch.size、fetch.min.bytes)。
调优配置
23
性能调优(下)
Kafka调优、MySQL Binlog消费速度优化、避免Backpressure。
Kafka反压
24
常见问题与排错(上)
连接失败、Snapshot超时、Offset丢失、Schema冲突。
排错故障
25
常见问题与排错(下)
数据不一致、重复消费、延迟飙升、OOM问题。
排错OOM
26
Debezium Server 模式
轻量级部署,无需Kafka,直接输出到Pulsar/PubSub。
Server轻量
27
Debezium 与云原生
在Kubernetes上部署Debezium Connect Operator。
K8sOperator
28
安全实践
SSL/TLS加密、认证、审计日志、最小权限原则。
安全TLS
29
实战项目一:实时数据湖
构建基于Debezium的实时数据湖(MySQL -> Kafka -> Hudi/Iceberg)。
数据湖Hudi
30
实战项目二:多活双向同步
构建多活数据中心的数据双向同步(Debezium + Kafka MirrorMaker)。
多活MirrorMaker