当前位置: 首页 > news >正文

Debezium + Kafka + Flink/Doris Stream Load 实时数仓

通过 Debezium 捕获 Oracle 的 CDC(Change Data Capture)日志,经 Kafka 缓冲,再通过 Flink 或直接调用 Doris 的 Stream Load 接口写入 Doris。

 

1、Oracle CDC 捕获:

Debezium(基于 LogMiner 或 XStream)解析 Oracle 的 Redo Log/Archive Log,实时捕获 INSERT/UPDATE/DELETE 变更,生成包含前后镜像的 JSON 数据(如op: u表示更新,before/after字段记录变更内容)。

2、消息缓冲:

将 Debezium 输出的变更数据发送到 Kafka 主题(按表分主题,便于后续消费),解决生产端和消费端的速度不匹配问题。

3、数据写入 Doris:

Flink 消费:Flink 读取 Kafka 数据,做简单转换(如过滤、字段映射)后,通过 Doris 的 Flink Connector(flink-connector-doris)写入,支持批量提交(默认 1000 条 / 批)和 Exactly-Once 语义。

直接 Stream Load:若无需复杂转换,可通过 Kafka Connect 的 Doris Sink 直接调用 Doris 的 Stream Load 接口(HTTP 协议),适合简单场景。

 
优势
1、实时性强:端到端延迟可控制在秒级(取决于 Kafka 和 Flink 的配置)。
2、高可靠:Kafka 持久化数据,Flink 支持故障恢复,确保数据不丢失。
3、适配复杂场景:支持数据清洗、多表关联、字段转换等 ETL 操作。
 
注意事项
1、Oracle 需开启归档日志(ARCHIVELOG),并配置 Debezium 的捕获权限(如LOGMINING权限)。
2、大表初始化可先通过 DataX 全量同步,再通过 CDC 同步增量,避免 Debezium 全量扫描耗时过长。
 
https://www.bilibili.com/video/BV1WZ4y1m7QM/?spm_id_from=333.337.search-card.all.click&vd_source=04d80f475277388fb106b530402116b6
https://www.bilibili.com/cheese/play/ss6294?query_from=0&search_id=16748265835398194874&search_query=Debezium&csource=common_hpsearch_null_null&spm_id_from=333.337.search-card.all.click
http://www.hskmm.com/?act=detail&tid=15673

相关文章:

  • Gitee DevOps平台:中国企业数字化转型的代码管理新范式
  • Ansible + Docker 部署 Zookeeper 集群
  • 幂运算与航班中转的奇妙旅行:探索算法世界的两极 - 实践
  • Gemini CLI 配置问题
  • 本土化与全球化博弈下的项目管理工具选型:Gitee如何为中国企业破局?
  • 论Linux安装后需要进行的配置
  • 51单片机-驱动DS1302时钟芯片模块教程 - 实践
  • tomato WP复盘
  • SQLite的并发问题
  • 域渗透靶场-vulntarget-a综合靶场
  • 数组和链表读取、插入、删除以及查找的区别
  • day 09 课程
  • 在K8S中,日志分析工具有哪些可以与K8S集群通讯?
  • 在K8S中,网络通信模式有哪些?
  • 一文教你搞定PASS 2025:样本量计算神器安装到使用全流程
  • React 18.2中采用React Router 6.4
  • 题解:AT_abc257_h [ABC257Ex] Dice Sum 2
  • ClickHouse UPDATE 机制详解 - 若
  • ClickHouse index_granularity 详解 - 若
  • P13885 [蓝桥杯 2023 省 Java/Python A] 反异或 01 串
  • clickhouse轻量级更新 - 若
  • 西电PCB设计指南第3章学习笔记
  • Vitrualbox、kali、metaspolitable2下载安装
  • LazyLLM端到端实战:用RAG+Agent实现自动出题与学习计划的个性化学习助手智能体
  • 补充图
  • 【阿里云事件总线】域名+邮件推送+事件总线=实现每天定时邮件!
  • llm入门环境
  • FLASH空间划分/存储数据至指定CODEFLASH位置
  • SOOMAL 降噪数据表
  • 案例分享|借助IronPDF IronOCR,打造医疗等行业的智能化解决方案