数据集成与数据管道的关系
如果您的公司正在处理数据,您可能听说过数据集成和数据管道。实际上,您可能已经在进行某种数据集成。就是说,如果您当前不在数据集成项目的中间,或者只是想了解更多有关组合来自不同来源的数据(以及其余数据集成图)的信息,那么第一步就是了解差异在数据管道和数据集成之间。
术语容易混淆。幸运的是,也很容易弄清楚它。首先,让我们定义两个术语:
1、数据集成
数据集成涉及合并来自不同来源的数据,同时为用户提供合并数据的统一视图。这使您可以从单个界面查询和操作所有数据,并获得分析,可视化和统计信息。您也可以将合并的数据迁移到另一个数据存储中,以进行长期存储和进一步分析。
2、数据管道
一个数据管道是一套工具和流程,从多个来源中提取数据,并将其插入到数据仓库或其他某种工具或应用程序。现代数据管道设计用于两项主要任务:定义收集数据的方式,位置和方式,以及自动化流程以将数据提取,转换,组合,验证并加载到某种形式的数据库,数据仓库或应用程序中,以进行进一步处理分析和可视化。
简而言之,您可以使用数据管道执行数据集成。

数据集成与数据管道的区别
上图来自 tapdata (一款优秀的数据集成系统),该图很明显的诠释了数据集成和数据管道的关系。
数据管道: 通过技术手段建立和数据源的通道,用于抽取和加载数据。数据管道中将定义数据的位置、内容、采集方式。
数据集成: 包含了数据管道,最核心的是处理引擎。处理引擎将协调数据管道,通过 Pipeline 方式把数据管道组织起来,对来源数据进行抽取、组合、转换,并加载到目标存储。
- 挑战点:
异构特性: 由于数据源是独立开发的,数据模型异构,对数据集成造成非常大的挑战,需要在类型转换上做一些处理。
数据一致性: 需要保证采集过来的数据必须和原数据一致,比如格式转换上不能出问题、时间精度不能丢失等。
重复、冲突数据处理: 不能把重复的数据加载到目标存储上,不仅会给日后的数据关联造成极大的影响,也会影响数据分析与挖掘的效果,应尽量避免。
异常重试及中止机制: 各个数据源的数据由于快速迭代或者系统BUG,导致存在一些异常数据或数据模型变化,导致数据集成异常,需要有告警和干预机制
Pipeline: 由于数据管道众多,有一些数据管道存在先后调度关系,需要有一套类似 airflow 可编排任务的 pipeline
进度可观察: 对于各个管道的数据处理进度可衡量,可观察
弹性调度: 在处理批量或流式等不同任务时,可根据实际需要进行弹性调度,目前一般基于Flink来实现,也有自己实现的弹性调度机制。
数据源和目标存储监控机制: 无论是CDC还是批量查询等方式,都会对数据源有一些压力,有一些性能的消耗,需要有监控机制。如控制不当,特别是对数据库会产生很高的IOPOS,导致影响了正常业务系统的执行。
总结:
数据集成系统,看似简单,其实一点也不简单。目前Flink的生态比较全,有很多CDC Connector,基于 Flink 开发集成系统是个不错的选择。
文章标题:数据集成与数据管道的区别「两者有什么关系」
文章链接:https://www.linkedcc.com/tg/8525
版权声明(详见页尾):本文内容及图片由互联网用户自发投稿贡献,该文观点仅代表作者本人。