flink实时读取mongodb方案调研-实现mongodb cdc

Posted 张小凡vip

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flink实时读取mongodb方案调研-实现mongodb cdc相关的知识,希望对你有一定的参考价值。

背景介绍

mongodb目前是很多企业业务上常用的nosql数据库。我们需要对这些业务mongodb数据库进行 数据同步到 数据仓库中进行 数据分析处理。

技术选型

CDC介绍

CDC (Change Data Capture) 是一种用于捕捉数据库变更数据的技术

CDC 技术的应用场景非常广泛:

数据同步:用于备份,容灾;
数据分发:一个数据源分发给多个下游系统;
数据采集:面向数据仓库 / 数据湖的 ETL 数据集成,是非常重要的数据源。
CDC 的技术方案非常多,目前业界主流的实现机制可以分为两种:

基于查询的 CDC

离线调度查询作业,批处理。把一张表同步到其他系统,每次通过查询去获取表中最新的数据;
无法保障数据一致性,查的过程中有可能数据已经发生了多次变更;
不保障实时性,基于离线调度存在天然的延迟。

基于日志的 CDC

实时消费日志,流处理,例如 Mongodb 的 oplog 日志完整记录了数据库中的变更,可以把 oplog 文件当作流的数据源;
保障数据一致性,因为 oplog 文件包含了所有历史变更明细;
保障实时性,因为类似 oplog 的日志文件是可以流式消费的,提供的是实时数据。

对比常见的开源 CDC 方案,我们可以发现:

以上是关于flink实时读取mongodb方案调研-实现mongodb cdc的主要内容,如果未能解决你的问题,请参考以下文章

flink实时读取mongodb方案调研-实现mongodb cdc

Flink + Hudi 在 Linkflow 构建实时数据湖的生产实践

Flink系列之:基于Flink CDC2.0实现海量数据的实时同步和转换

flink on k8s部署方案调研

flink on k8s部署方案调研

flink on k8s部署方案调研