简介
数据集成(Data Integration)是一个数据整合的过程。通过综合各数据源,将拥有不同结构、不同属性的数据整合归纳在一起,就是数据集成。由于不同的数据源定义属性时命名规则不同,存入的数据格式、取值方式、单位都会有不同。因此即便两个值代表的业务意义相同,也不代表存在数据库中的值就是相同的。因此需要数据入库前进行集成,去冗余,保证数据质量。
一句话解释版本:
数据集成是将不同来源的数据整合在一个数据库中的过程。
数据分析与挖掘体系位置
数据集成是数据预处理的环节,所以在数据分析与数据挖掘中的位置如下图所示。
数据集成的难点
数据集成的本质是整合数据源,因此多个数据源中字段的语义差异、结构差异、字段间的关联关系,以及数据的冗余重复,都会是数据集成面临的问题。归纳一下的话,数据集成面临如下几个问题:
字段意义问题
在整合数据源的过程中,很可能出现这些情况:
- 两个数据源中都有一个字段名字叫“Payment”,但其实一个数据源中记录的是税前的薪水,另一个数据源中是税后的薪水。
- 两个数据源都有字段记录税前的薪水,但是一个数据源中字段名称为“Payment”,另一个数据源中字段名称为“Salary”。
上面这两种情况是在数据集成中常发生的,造成这个问题的原因在于现实生活中语义的多样性以及公司数据命名的不规范。为了更好的解决这种问题,首先,我们需要在数据集成前,进行业务调研,确认每个字段的实际意义,不要被不规范的命名误导。
其次,我们可以整理一张专门用来记录字段命名规则的表格,使字段、表名、数据库名均能自动生成,并统一命名。一旦发生新的规则,还能对规则表实时更新。
字段结构问题
数据结构问题的产生是数据集成中几乎必然会产生的。在整合多个数据源时,这样的问题就是数据结构问题:
- 字段名称不同。如,同样是存储员工薪水,一个数据源中字段名称是“