数据映射(Data Mapping):给定两个数据模型,在模型之间建立起数据元素的对应关系,将这一过程称为数据映射。
ETL包括三个阶段:数据抽取(extract),数据转换(transform),数据加载(load)。但是如何抽取,如何转换,加载到什么位置这些问题都需要有一个明确的规则指导。因此这需要数据映射来定义这些规则。这有点像软件开发过程中的设计与开发。数据映射相当于软件设计、ETL的执行代码实现过程相当于软件开发。
这里的数据映射是指从源库贴源层到数仓L0中的转换规则。
假如我们有一个下图的关系表:
现在要把这三张表合成一张大宽表DWD_ORDER。我们用excel的方式制作如下的data mapping:
可以看出data mapping主要有以下特定的组成部分:
目标表名称:数据仓库中出现的物理表名称
目标列名称:数据仓库表中的列名称
目标字段类型
源表名称:这里描述了原表的join关系,并且也描述了表的过滤条件
取值说明:即源表的字段
备注:一些说明,根据具体情况决定
版本:字段可能不断迭代,所以用不同版本标注
以上是data mapping的重要的元素。当然实际情况,可以根据需求有不同的元素增添或减少。
通过mapping,可以把不同厂家的数据源映射为统一的规范的L0层数据模型。这样不同厂家可以复用L1,L2的数据模型。