其他
免费下载!FFA 系列专刊|《Flink CDC 新一代数据集成框架》电子书
Flink CDC 的底层原理设计是什么样的? Flink CDC 如何保证数据读取的一致性? 如何一步步快速上手 Flink CDC? Flink CDC 在生产实践上的宝贵经验
卷首语:数据集成的发展和未来
在信息爆炸的时代,为了从海量数据中洞察业务价值,驱动运营决策,企业通常会构建用于数据分析的数据仓库。数据仓库的数据一般来源于多个分散的、异构的数据源,通过数据集成技术将数据整合在一起,消除数据孤岛,便于后续的分析。近年来,面向分析的数据系统发展迅速,各种新型的 OLAP 系统开始显露锋芒,数据湖和 Lakehouse 的概念也变得炙手可热。然而,数据集成仍然是人们通往数据分析之路上的主要障碍。
构建一个中心化的数据仓库本身是一个艰巨的任务,每个数据源都需要单独的程序和工具来摄取、清洗和导入数据。尤其是随着业务的发展,企业对于数据实时性的要求越来越高。在 2021 年 6 月,Apache 董事会宣布决定终止 Apache Sqoop 项目,以 Apache Sqoop 为代表的传统离线数据同步开始退出历史舞台。这也代表着传统的离线数据同步已经无法满足用户的需求,人们开始追求更为实时的数据同步方案。基于数据库事务日志的 Change Data Capture (CDC) 技术作为一种更为优雅和先进的实时数据同步方案,开始广泛应用于增量数据集成中。然而诸如 Canal 等专注于纯增量数据同步的开源项目也逐渐面临活跃度越来越低的困境,因为用户想要集成的数据从来不是单独的历史数据部分,或是单独的增量数据部分,而是历史数据和增量数据一体化地集成到数据仓库。这也是为什么如 Debezium、 Flink CDC 等全增量一体化数据集成框架能越来越受欢迎的原因之一。
Flink CDC 是 Apache Flink 的一个重要组件,主要使用了 CDC 技术从各种数据库中获取变更流并接入到 Flink 中。Apache Flink 作为一款非常优秀的流处理引擎,其 SQL API 又提供了强大的流式计算能力,因此结合 Flink CDC 能带来非常广阔的应用场景。例如,Flink CDC 可以替代传统的 DataX 和 Canal 工具做实时数据同步,将数据库的全量和增量数据同步到消息队列和数据仓库中。也可以做实时数据集成,将数据库数据实时入湖入仓。还可以做实时物化视图,通过 SQL 对数据库数据做实时关联、打宽、聚合,并将物化结果写入到湖仓中。
为了帮助读者能更全面地了解 Flink CDC,我们特地编撰了这本中文专刊。在这本专刊里你可以了解到: Flink CDC 的底层原理设计是什么样的? Flink CDC 如何保证数据读取的一致性? 如何一步步快速上手 Flink CDC? 以及 Flink CDC 在生产实践上的宝贵经验!
作为新一代数据集成框架,Flink CDC 希望解决的问题很简单: “成为数据从源头连接到数据仓库的管道,屏蔽过程中的一切复杂问题,让用户专注于数据分析”。但是为了让数据集成变得简单,其中的挑战仍然非常多: 比如百亿数据如何高效入湖入仓? 千表数据如何稳定入湖入仓? 如何“一键”整库同步? 表结构频繁变更,如何自动同步表结构变更到湖和仓中? 我们会在本专刊中介绍 Flink CDC 在这些方向取得的一些初步进展,Flink CDC 未来也会持续朝着这些方向改进。我们后续还会组织发布更多关于这些场景的 Flink CDC 系列专刊。