//本系列是基于DMBOK2的学习过程中的知识点整理,方便学习与回顾//
数据集成与互操作描述了数据在不同的存储,应用和组织的内部或之间进行移动和整合的过程。其中数据集成指的是将数据整合成物理或虚拟的一致格式。 数据互操作是多个系统之间进行通信的能力。
一、基本概念
1.1 目标
它的主要目的是为了实现对数据移动的有效管理,包括
1)按照所需格式,及时地提供安全、合规的数据
2)构建开放共享模式和接口,降低解决方的成本和复杂度
3)识别有意义的事件,自动触发预警和动作
4)支撑BI、数据分析、主数据管理,并致力于提高运营效率
1.2 术语
1. ETL - 抽取&转换&加载
抽取: 从源数据中提取所需的数据
转换:让选定的数据与目标数据库的结构相兼容。转换的内容包括:格式,结构,语义,消除重复,重新排序
加载:在目标系统的物理存储或呈现转换结果
2. ELT:如果目标系统有更强的的转换能力,则处理顺序调整为 抽取--加载--转换
3. 映射(mapping): 定义了源数据结构到目标系统结构的转换规则,映射关系中要包括
1)元数据和目标数据的技术格式
2)制定源数据和目标数据之间所有中间暂存点所需的转换
3)描述最终或中间目标数据存储区中每个属性的填充方式
4)描述是否需要对数据值进行转换
5)描述需要进行哪些计算
4. 时延(latency):从源数据生成数据到目标系统可用该数据之间的时间差
5. 耦合(coupling):两个系统之间交织的程度
6. 编排(orchestration):用来描述一个系统中如何组织和执行多个相关的流程
7. 数据交换标准:组织和团队之间使用的标准化数据共享格式,比如国家信息交换模型(NIEM)是美国政府机构的数据交换标准
1.3 原则
1)采用企业视角确保未来的可扩展性设计,通过迭代和增量交付实现
2)平衡本地数据需求和企业数据需求,包括支撑和维护
3)确保数据集成和互操作设计和活动的可靠性。业务专家要参与ETL规则的设计和修改。
二、人员
2.1 角色与职责
数据集成解决方案通常被视为纯粹的技术性解决方案,可以由集中管理的团队负责,也可以由应用程序团队负责。它的成功需要基于深入的业务知识,需要有业务专家来审查数据转换的映射设计。
三、相关技术
3.1 ETL/ELT
1. 批处理
它是以文件形式执行的数据移动。批处理要做好时机选择,一般是业务逻辑处理结束后
可以通过采用微批处理,来实现快速处理和低延迟
2. CDC-变更数据捕获
1)基于数据的CDC技术: 1-通过识别源系统填入的特定数据字段(时间戳,标记) ; 2-源系统完成数据更改时同时添加到某个标识符列表;3-源系统复制已经变化的数据(?有疑问?)
2)基于日志的CDC技术:复制和处理数据活动日志e
3.2 复制(replicate)
复制是指在多个物理位置上维护了数据集的精确副本,能为不同位置的用户提供更好的响应速度。
如果数据更改动作会发生在多个副本站点,不适合使用复制,可能存在数据不同步风险
3.3 归档(archive)
将不经常使用的数据移动到成本较低的存储方案中
归档技术需要被监视,确保新技术不会导致旧格式的存档无法读取
3.4 定义共享消息格式
拥有规范格式可以显著降低企业中数据互操作的复杂性
3.5 交互模式
交互模式描述了系统之间建立连接以传递数据的方式
1. 点到点模式
两个系统直接相连,相互传递数据
2. 中心辐射型(hub-and-spoke)
它将共享数据整合到一个中心数据中心,各个系统和应用和它进行数据交换。
数据中心提供一致的数据试图,对源系统的性能影响有限。
3. 发布/订阅型
由提供数据服务的系统,向需要的目标系统自动推送数据。
3.6 复杂事件处理(CEP)
Complex Event Processing是指将多个来源的数据进行合并,通过分析与预测得出结论
3.7 数据联邦与虚拟化
当数据分散存在于不同的数据存储中时,可以通过逻辑方式来聚合
数据联邦(data federation):提供对各个独立数据存储库组合的访问权限
数据虚拟化(data virtualization):使分布式或异构数据存储能作为单个数据库来访问
3.8 DaaS
数据即服务指的是从供应商处获得许可,并由供应商提供数据
3.9 云化集成
IPaaS: 通过云提供系统间的数据集成服务
四、活动
4.1 规划和分析
1)定义数据集成和生命周期需求: 包括适用的法律法规,业务目标,以及实现这些目标需要的数据和建议的技术方案
2)执行数据探索: data discovery的目标时为数据集成工作确定潜在的数据来源,同时它还包括针对数据质量的高级别评估。 数据探索会生成和完善组织的数据目录。
3)记录数据血缘:数据血缘记录了数据时如何在一个组织中流动的信息。
4)剖析数据:data profiling是对数据内容和结构的检查。它包括1-定义的数据格式与真实数据体现的格式; 2-数据的数量(null,空, 默认值); 3-数据值分布情况以及与有效值的对比;4-数据集内部的模式和关系; 与其他数据集的关系。 数据剖析包括了验证数据相关的假设。
5)收集业务规则:包括业务术语定义,相互关联的术语的事实、约束、行为断言以及派生。
4.2 设计数据集成解决方案
1)设计数据集成解决方案:选择交付模型,并设计数据服务或交互模式
2)建模数据中心、接口、消息和数据服务
3)映射数据源到目标
4)设计数据编排
4.3 开发数据集成解决方案
1)开发数据服务: 开发服务来获取、转换和交付指定的数据,并且匹配所选的交互模型
2)开发数据流编排:利用调度器管理执行已开发的数据集成组件
3)制定数据迁移方法
4)制定发布方式
5)开发复杂事件处理流
6)维护数据集成和互操作的元数据
4.4 实施和监测
启用已开发并完成测试的数据服务,对数据处理过程建立运行状态监控,并建立度量指标以及问题反馈机制。
数据交互功能的SLA必需与参与交互的系统的最高SLA要求一致。
五、工具与方法
5.1 工具
1) 数据转换引擎/ETL工具
2)数据虚拟化服务器
3)企业服务总线
4)业务规则引擎:允许非技术用户管理系统的业务规则
5)数据和流程建模工具
6)数据剖析工具
7)元数据存储库
5.2 方法
利用SOA/EAI实现程序间的松散耦合;使用Hub-and-spoke模式; 创建标准规范的接口。
六、治理
1. 数据消息、模型和数据转换规则的设计决策,必须由商业因素驱动;
2. 在开发接口或以电子方式提供数据之前,应制定一份数据共享协议或谅解备忘录(MOU),来规定交换数据的责任和可接受的使用用途,并由业务数据主管批准
3. 前向和后向数据血缘对数据流的更改非常必要,需作为元数据的关键部分进行管理
4. 度量指标:数据可用性,数据量和速度,解决方案成本和复杂度
参考资料
DAMA-DMBOK2中文版