数据质量保障原则

评估数据质量的好坏,业界标准并不统一。阿里巴巴对数据仓库主要从四个方面进行评估,即完整性、准确性、一致性和及时性。

完整性
完整性是指数据的记录和信息是否完整,是否存在缺失的情况。数据的缺失主要包括记录的缺失和记录中某个字段信息的缺失,两者都会造成数据不准确,所以说完整性是数据质量最基础的保障。
比如交易中每天支付订单数都在100万笔左右,如果某一天支付订单数突然下降到1万笔,那么很可能是记录缺失了。对于记录中某个字段信息的缺失,比如订单的商品ID、卖家ID是必须存在的,这些字段的空值个数肯定是0,一旦大于0就必然违背了完整性约束。

准确性
准确性是指数据中记录的信息和数据是否准确,是否存在异常或者错误的信息。比如一笔订单如果出现确认收货金额是负值,或者下单时间是在公司成立之前,或者订单没有买家信息,这些必然都是有问题的。

一致性
一致性一般体现在跨度很大的数据仓库体系中,比如阿里数据仓库,内部有很多数据仓库分支,对于同一份数据,必须保证一致性。例如用户ID,从在线业务库加工到数据仓库,再到各个消费节点,必须是同一种数据类型,长度也需要保证一致。所以,在建设阿里巴巴数据仓库时,才有了公共层的加工,以确保数据的一致性。

及时性
在确保数据的完整性、准确性和一致性后,接下来就要保障数据能够及时产出,这样才能体现数据的价值。一般决策支持分析师都希望当天就能看到前一天的数据,而不是等几天才能看到某一个数据分析结果;否则就失去了数据及时性的价值,分析工作毫无价值。现在对时间要求越来越高,越来越多的应用都希望数据是小时级别或者实时级别的。比如阿里巴巴双11的交易大屏数据,就做到了秒级。
针对阿里巴巴庞大的数据仓库,数据的规模已经达到EB级别,对于这么多大的数据量,如果一概而论势必会造成精力无法集中、保障无法精确,因此给数据划分等级势在必得。

如何给每一份数据打上一个等级标签?
首先,介绍数据的简单流转过程,数据从业务系统中产生,经过同步工具进入数据仓库系统中,在数据仓库中进行一般意义上的清洗、加工、整合、算法、模型等一系列运算后,再输出到数据产品中进行消费。
在这里插入图片描述
有了数据产品或者数据应用的概念,同时知道了哪些表为哪个数据产品或者应用服务的,就可以借助元数据知道整个数据仓库中的哪些表服务于这个数据产品,因此通过给不同的数据产品或者应用划分数据资产等级,再依托元数据的上下游血缘,就可以将整个消费链路打上某一类数据资产的标签,这样就可以将数以亿计的数据进行分类。

参考资料:《阿里巴巴大数据实践》

猜你喜欢

转载自blog.csdn.net/weixin_41907511/article/details/84820882