跳到主内容
快讯直播
AI智模界
AI 词典

变更数据捕获(CDC):让数据库改动实时流进 AI

一句话定义

变更数据捕获(Change Data Capture,CDC)是一种把数据库里每一次插入、更新、删除操作,按发生顺序实时抓取出来、变成下游可订阅数据流的技术。

原理:数据库其实一直在写“日记”

成熟数据库在提交写入前,都会先记一份日志(不同产品叫法不同,比如 redo log、WAL、binlog),本意是给崩溃恢复和主从复制用。CDC 工具就像一个只读这份日志的订户,按顺序把已提交事务读出来,解析成结构化事件——哪张表、哪一列、旧值、新值、什么时间——再推给消息队列、数据湖或向量库。

打个生活化的比方:过去是每天打烊后盘点一次全店库存,也就是每晚跑一遍全量批处理(ETL,Extract-Transform-Load)。可白天卖掉的货、退回来的货、改过的价签,都要等盘点那一刻才被看见。CDC 相当于在收银台装了一台小票机:每发生一笔改动就立刻打一张小票,下游按顺序实时领取。

其他流派也有:基于触发器(trigger)要在业务表上加逻辑,写放大明显;定时轮询时间戳字段实现简单,但识别不了删除、也有延迟。生产环境通常优先选日志方案。

和相邻概念的区别

维度每晚全量重跑定时增量查询CDC
延迟小时到天分钟级秒级甚至更低
源库压力高中低(只读日志)
删除事件靠对比推断常常漏掉完整捕获
工程复杂度低低中高

CDC 常被和消息队列混为一谈:Kafka 这类系统负责“运”,CDC 负责“取”,两者经常搭配使用,但不是同一件事。它也和主从复制读同一份日志,区别在目的——复制要的是副本一致,CDC 要的是把变更喂给分析、搜索和机器学习系统。

对做 AI 意味着什么

  • 特征实时化:用户刚下单、刚退款,特征表秒级更新,模型打分不基于昨天的画像。
  • RAG 知识库保鲜:工单、商品、订单改了,检索索引跟着改,不必等次日重建。
  • 训练样本回流:线上请求日志和真实标签实时落进样本表,特征与标签天然对齐。
  • 口径统一:报表、看板、特征、模型用的是同一份“刚刚发生的事”,少一些口径打架。

需要注意:CDC 一般只保证同一主键上的顺序,schema 变更、去重与一致性语义、初始全量快照与增量切换如何衔接,各家工具和数据库支持程度不同,具体以官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。