dbz
debezium/dbz加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

项目定位:这不是一个代码库,而是 Debezium 官方项目的"门户"——它承载着 Debezium 生态所有子项目的 Issue 入口、CI/CD 工作流,以及配套的 issue-viewer 可视化工具。
故事要从 2015 年说起。Red Hat 的工程师 Gunnar Morling 在做数据库迁移项目时,发现传统方案有个根本性缺陷:当数据从旧库同步到新库时,任何在此期间产生的增量数据变更(CDC,Change Data Capture)几乎不可能被可靠地捕获。他和团队尝试了轮询、日志扫描等多种方案,要么延迟太高,要么对源库造成过大压力。
最终,他们决定基于 Apache Kafka Connect 打造一个专用框架,直接从数据库的 WAL(Write-Ahead Log)或变更日志中解析变更事件——这就是 Debezium 的起点。2016 年正式开源,2021 年加入 Commonhaus Foundation,如今已是 CDC 领域最受欢迎的开源工具之一。
想象一下:你的数据库是一间 24 小时营业的银行柜台,每笔交易都会在柜台日志本上留下一行记录。传统的数据库同步就像"每天半夜派人去抄一次柜台余额"——你只能知道当前状态,不知道中间发生了什么。
CDC 则像在柜台装了一个摄像头,每笔交易实时记录下来并实时推送到你的手机。你不仅知道最终余额,还能知道"上午 10:23,张三存了 500 块;上午 10:24,李四取走了 200 块"——这种细粒度的事件流,是数据湖、实时分析、微服务间事件驱动通信的基础设施。
Debezium 就是这个"摄像头 + 推送服务"的实现,它支持 MySQL、PostgreSQL、MongoDB、SQL Server、Oracle、Db2 等主流数据库。
这个仓库并不是 Debezium 核心代码的所在地。它的主要内容包括:
1. issue-viewer(65KB 的 HTML 工具) 这是一个纯前端 GitHub Issue 可视化工具,用于在网页中展示和管理 Debezium 各子项目的 Issue 看板。全部是纯 HTML/CSS/JS,无需任何后端,直接浏览器打开即可使用。
2. .github/workflows(CI/CD 工作流) 存放 GitHub Actions 的工作流配置,定义了代码检查、构建、发布等自动化流程。这些 workflow 的目标仓库指向 Debezium 的各个子项目(debezium/debezium、debezium/debezium-server 等)。
3. 官网内容(README 为主) README 作为入口页面,链接到 debezium.io 官网和各个子仓库。
| 仓库 | 说明 |
|---|---|
| debezium/debezium | 核心引擎,基于 Kafka Connect |
| debezium/debezium-server | 独立运行时,基于 Quarkus |
| debezium/container-images | Docker 镜像 |
| debezium/debezium-examples | 教程和示例 |
| debezium/dbz | 本项目:Issue 追踪 + 官网入口 |
本仓库不支持直接部署——它是静态网站和工具的集合,不运行任何服务。如果想部署 Debezium:
docker run debezium/server 或 docker-compose 一键启动debezium/debezium 仓库,通过 Maven 构建| 维度 | 描述 |
|---|---|
| 本仓库语言 | HTML(issue-viewer 为纯前端 JavaScript) |
| 所属生态语言 | Java(核心引擎 + 连接器) |
| 架构 | 分布式 CDC 平台,基于 Kafka Connect |
| 连接器 | MySQL、PostgreSQL、MongoDB、SQL Server、Oracle、Db2 等 |
| 许可 | Apache License 2.0 |
Debezium 的出现填补了传统 ETL 工具与实时数据流之间的空白。在国内,随着 Kafka 和 Pulsar 的普及,Debezium 已成为数据同步、CDC 到数据湖(Iceberg/Hudi)、数据库迁移等场景的事实标准。国内阿里云 DTS、字节跳动 Lemur、云数据库厂商均大量参考或直接基于 Debezium 构建自己的 CDC 能力。
debezium/dbz 是一个低调但至关重要的"中枢"——它本身不承载核心代码,但汇集了所有子项目的 Issue 入口和配套工具。对于想了解 Debezium 生态的开发者来说,它是第一站;对于想部署 Debezium 的用户来说,应该直接去 debezium/container-images 或 debezium/debezium-server。Debezium 本身代表了现代数据基础设施中"数据库即事件源"的理念,是任何从事实时数据管道、CDC、数据湖建设的开发者都值得了解的项目。