“不需要清洗数据。我们只是把数据从源系统提取出来,然后加载进入数据仓库中。我们的数据一直就是干净的。” 多少次,可怜的ETL咨询顾问听到过这样的结论后,还能保持外交式微笑,但内心已经纠结地要撞墙。
听起来很简单:从源系统(可能是关系数据库,文本文件,电子表格等等)取出数据,然后载入到数据仓库中。 问题是在事务处理系统中,数据很少能保持完全干干净净。这是因为事务处理系统通常一次只处理单条记录或者一小批记录。 相比之下,分析系统需要更大量的数据记录。
就像铺上了白色的地毯,数据进行分析时,脏数据才能真正显露出来。 常见数据质量问题 源系统内的数据质量总是会比预期的差,通常是由……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
“不需要清洗数据。我们只是把数据从源系统提取出来,然后加载进入数据仓库中。我们的数据一直就是干净的。”
多少次,可怜的ETL咨询顾问听到过这样的结论后,还能保持外交式微笑,但内心已经纠结地要撞墙。
听起来很简单:从源系统(可能是关系数据库,文本文件,电子表格等等)取出数据,然后载入到数据仓库中。
问题是在事务处理系统中,数据很少能保持完全干干净净。这是因为事务处理系统通常一次只处理单条记录或者一小批记录。
相比之下,分析系统需要更大量的数据记录。就像铺上了白色的地毯,数据进行分析时,脏数据才能真正显露出来。
常见数据质量问题
源系统内的数据质量总是会比预期的差,通常是由于缺乏合理的机制。
引用完整性。例如,订单库存中有分配给客户编号为CB3742的订单,而这个客户可能已经不在客户信息库中了。
NULL的使用。例如,客户的电话信息默认是空的(NULL)。我们不清楚这个客户是没有电话,还是没有提供电话号码,或者是从没有被要求过提供电话号码。
数值检查的合理性。例如,有的客户生日记录是1869年7月1日。很明显不合理。
预定义域的值限制。例如,用户添加了类型为Reverund的客户信息,而不是从预定义值列表中进行选择。比如“Mr、Mrs、Miss、Ms、Dr或Rev”。
业务逻辑。例如,AAA信用评级客户必须持有一个账号至少五年,但是并没有机制去限制这条规则。
分析数据
源系统内的数据应该出于以下两个原因分析。
首先,准确估计涉及清理系统数据的工作量。数据越脏,就需要花费更多的时间和成本。
其次,对于拒绝的情况,可以展示证据表明数据并不像预期的那样质量完好。
使用比SQL查询更有效的工具,数据可以被在关系型源系统中分析并建立质量。
在客户信息表中,我们应该运行如下查询:
可能返回结果如下:
之前不可见的脏数据现在就暴露出来了。
另一个例子是在客户信息表中查找年龄不合理信息:
下面的例子查找地址数据中第一行太短不合理的情况:
最后一个例子是查找不存在的客户信息:
尽管可以用SQL 查询来分析数据,但是也有一些专门的工具可以使用。
一致性
在从多个数据源提取数据时,即便源数据在每个独立源系统中都是干净的,也需要注意数据一致性。
一致性过程有三个阶段。
1.标准化阶段
从三个来源系统提取数据,性别信息在第一个系统中可能是用的数字标记(“1”代表男性,“2”代表女性),在第二个系统中可能用字母表示(用“M”和“F”代表男性和女性),在第三个系统中可能用单词来表示(“Male”和“Female”代表男性和女性)。
在各个来源系统内部,这项数据可能是干净的,但是把三套系统中的数据合并到一个数据仓库中,数据可能就需要标准化处理了。
我们可能会规定数据仓库中性别的代表符号为单词“Male”,“Female”和“Unknown”。
对于第一个系统,数字标记可以被转换成这些值。对于第二个系统,单个字符标志也可以类似处理。
第三个系统需要检查“Male”和“Female”值存在,如果有误拼写则需要纠正。控制应该转换成数据仓库中的“Unknown”标志。
有时候标准化比这个简单的例子要更复杂的多,比如对于地址类信息可能就需要专门的工具来处理检查了。
2.匹配重复记录
接下来一步是从不同数据来源识别关联相关实体。这些记录可能在最后一步中合并到一起。
有时候这个过程会很轻松,因为来自不同数据源的员工记录都包含有员工编号,但是有时候可能就更麻烦一些。
3.存活数据
存活是最后一个阶段,要匹配记录并合并为一条记录。来自每个匹配记录的值中质量最好的数据会被合并,形成尽可能最高质量的单一记录。
总结
本文我们探讨了常见数据质量误区,我们了解了数据为什么会变脏,以及如何发现脏数据。我们还探讨了数据一致性问题。
作者
相关推荐
-
选择合适的ETL工具 关键看什么?
传统ETL工具仍然在数据集成市场占最大比例,Gartner公司在2016年数据集成工具魔法象限调研报告中发现,使用批处理任务处理大量数据集成的组织超过80%。
-
大数据时代到来 我们还需不需要ETL?
将数据转化为有用信息,成为了许多企业迈不过去的一道坎,也是许多大数据项目仓促上马但最终失败的主要原因。
-
介绍几个常用的数据治理工具
有许多工具可以改进数据治理和信息监控。本文中我们将详细了解这些工具。包括数据质量管理工具、主数据管理等。
-
辉瑞制药摒弃ETL 走进数据虚拟化
一直以来,辉瑞制药有限公司的全球药物科学部门都负责决定什么样的新药能够进入市场,然而曾经有一段时间,该部门却走到了技术的十字路口,难以决策。