谈谈如何实施数据质量管理工作

2022-04-25 08:42 浏览量:336

数据已被视为各行各业的“新石油“。事实上,人们认为数据和石油在开采、存储、运输和消费方式上存在一定程度的相似性。

作为一个车主,每周到加油站加油的时候,你大概就明白汽油纯度的重要性了。随着时间的推移,纯度低的汽油可能会严重损坏您的发动机,即使它仍然可以让您的汽车保持行驶。但是,卡车上装有柴油发动机的人可能没有那么担心,因为柴油燃料的纯度低于汽油。总体而言,不同的发动机需要使用不同级别的质量的燃料。

同样,质量差的数据可能会对您的组织产生负面影响,尽管您仍然可以从中获得一些见解。但是,不同的用例可能对数据质量有不同的期望,因为追求最高质量的数据总是很昂贵。这也体现在数据质量的定义中:“数据质量表明数据满足用户标准或期望的程度”。

当人们考虑数据质量时,他们经常提到术语准确性。例如,“Wang Jianfeng”是博主的正确姓名,但在数据库中,我们可能会看到“Wang Jianfen”、“Wang Jiangfen”或“Wang Jiangfeng”等姓名的不准确表示。然而,在数据质量方面,仅靠准确性不足以评估数据质量,因为对数据质量的期望还包括完整性、及时性、一致性和唯一性。这是衡量数据质量的五个不同维度。

1. 数据质量维度

1.1 准确性

准确性被定义为一个值与其对现实的正确表示之间的接近程度。可以识别两种类型的准确性:语义准确性和句法准确性。

准确性通常在语义准确性的概念中出现,即值v与真实值v'的接近程度。例如,在观察数据库中的记录时,开发人员发现了这个{ OS : Windows, Creator : Linus Torvalds}, { OS : Linux, Creator : Bill Gates}。然后他立即知道这些记录存在语义问题,因为创建者应该是 Linux 的 Linus Torvalds 和 Windows 的 Bill Gates。

另一种形式的准确性是句法准确性,它是值v与特定域中接受值的句法接近程度。与其将v与真实值v'进行比较,我们更感兴趣的是知道该值在句法上是否正确。例如,信用卡号应该有 16 位XXXX XXXX XXXX XXXX,如果数据库中出现1234 1234 1234 1234 0之类的内容,我们就会遇到语法准确性问题。

语义准确度通常更严格,但测量这种准确度的挑战是必须事先知道真实值v' 。在上面的示例中,每个人都知道 Facebook 首席执行官的正确姓名,因此在这种情况下可以轻松评估语义准确性。但是,对于诸如交易数据之类的东西,例如,客户购买了一块 300 美元的手表,我们必须知道交易的真实价值并有一个基本事实来进行比较。情况可能并非如此,因为有时我们只有一个数据源,即使我们有另一个数据源进行比较,我们也必须有一种机制将两个数据源中的对象链接在一起进行对象识别。

另一方面,句法准确性计算起来不太复杂,并且不需要先验真实值。因此,与语义准确性相比,它实际上更适用。还有一些其他用例可以应用语义准确性,例如公安部人口数据库可被视为人口信息的基本事实,因此可用于验证人口、经济和收入等许多不同领域的其他数据源的语义准确性。

1.2 完整性

数据质量的完整性,即评估数据在何种程度上具有足够的广度、深度和范围来满足对数据的需求。完整性通常与记录完整性、列完整性或表完整性中缺失值的数量有关。

1.3 及时性

及时性表示特定应用程序的数据的新鲜度。该指标有两个因素:当前率和波动率。当前率反映了数据的新鲜度。例如,如果客户最近更改了地址,记录将如何更新。如果在客户更改请求后立即更新记录,则当前性被视为高,反之亦然。及时性还取决于波动性,它显示了数据随时间变化的水平。与每月更新的数据相比,每日更新的数据具有更高的波动性。例如,出生日期可能具有零波动性,而股票价格将具有极高的波动性。波动率也可以表示为数据保持有效的时间长度。

当前率和波动率可以在它们对及时性的贡献方面相互影响。高波动性的数据应该是最新的,而低波动性的数据不需要高当前率。对于每日更新的数据,五天的延迟将是一个问题,而对于每月或每年更新的数据则可能不是这样。

1.4 一致性

一致性表示来自相同或不同表的两个或多个列之间的完整性约束的遵从程度。例如,如果国家代码为 AU,则 state 列应具有以下值之一:VIC、NSW、WA、QLD、TAS、NT、ACT、SA。

1.5 唯一性

此维度捕获重复记录的数量。然而,有许多不同级别的重复,每个都需要不同的方法来衡量。

最常见的重复形式是当我们有两条记录为每个单元格存储完全相同的值时。如果将键列用作主键,则不太可能发生这种情况。然而,有时数据库系统可以选择使用生成的键而不是数据中现有的有意义的列。在这种情况下,检测重复会稍微复杂一些,因为我们不能仅仅依赖于主键。天真的方法是逐个单元格地比较值,这种方法很容易实现。

另一种重复形式是当我们有两条记录存储的值不完全相同但引用现实生活中的相同对象或实体时。差异可能只是由于数据输入过程中的拼写错误造成的,也可能是由于来自不同源系统的数据格式不同造成的。有了这种重复,上面的幼稚方法就不适用了。通用且更高级的方法是使用文本距离度量,例如 TF-IDF(词频 - 逆文档频率)或余弦相似度来衡量两条记录之间的相似度。这种方法需要更多的计算,尽管它更智能并且适用于各种场景。

2. 指标计算

给定具有K个属性和N条记录的关系R,度量计算如下:

•指标可以在 0 到 1 之间变化(0 是差,1 是优秀)。

•B是一个布尔函数,如果满足条件,则返回 1

•vij是第 j 列第 i 行的值

•对于及时性指标,T是数据的年龄,F是数据的频率。

3. 数据质量实施

数据质量框架将建立在数据验证框架之上,实施所有数据有效性规则。数据验证框架是一组方法和软件库,其中包含实现有效性规则的工具。例如,数据验证框架可以提供方法或函数来检查列中的数字是否在特定范围内。一个例子可能是确保 Age 列不包含负值。据我所知,没有广泛使用或行业标准的数据验证框架可以通用地构建用于各种业务用例。

在高层次上,数据质量框架将充当将数据质量方面与业务用例的关键性联系起来的治理层。将有一个迭代过程来不断维护和提高数据质量以满足用户的期望。

在实施层面,指标将由数据验证框架计算并存储到中央存储以供审计和报告。对于特定数据集,提供仪表板来监控数据质量。如果违反有效性规则,将会发送警报。

4. 数据质量管理流程

数据质量管理过程是一个迭代周期,因为需要不断维护和改进数据质量以满足用户的期望。该过程分为两个部分,包括以下五个阶段:

第一阶段主要关注数据集的发现部分,了解低质量数据对业务的影响。它包括自上而下和自下而上的方法。自上而下的方法在使用数据时收集用户需求、用例信息和痛点,而自下而上的方法更接近数据的内容,并采用统计分析来识别潜在的数据质量问题。

在第二阶段,结合自上而下和自下而上方法的信息来定义五个指标中的每一个的阈值。还应为数据确定与业务相关的规则。

之后,这些规则将在第三阶段映射为有效性规则,稍后在第四阶段使用数据验证框架实施。同样在第三阶段,将针对第一阶段检测到的任何数据质量问题提供解决方案。最后,所有设计都需要与接口协议保持一致,以便检测任何违反接口协议中声明的数据标准的行为。

第四阶段将是使用数据验证框架的设计的实际实施,而第五阶段涉及数据馈送实时时的操作方面。将持续监控数据质量,并且必须建立事件报告流程以触发数据质量管理流程的下一个周期。

如上所述,这是一个迭代过程,通常有两种可能的方法来触发一个新的循环。第一种方法是预防性方法,定期审查质量指标并在固定时间段后重复该循环。第二种方法是反应式方法,在出现数据质量问题或事件时开始新的循环。这两种方法也可以根据用例和应用程序同时应用。

五、职责与工具

数据工程小组和数据消费者在数据质量问题上需要紧密的合作。对特定用例的数据质量预期是监控和提高数据质量过程的起点。因此,数据质量管理是一个以业务为中心的过程,其中来自业务的需求和期望是运营模型的核心。该模型如下图所示:

在此模型中,数据消费将处于与客户交互的最前沿,以收集需求并围绕数据设计用例。数据消费者负责数据质量管理过程中的第一阶段和第二阶段,因为它们了解数据的使用方式并知道数据应该如何“看起来”。

在第三、第四和第五阶段,职责在某种程度上由数据工程小组和数据消费者分担。数据工程小组提供了通过数据质量验证框架实施有效性规则所需的工具,并维护和改进该框架以满足数据消费者的要求。数据工程小组还负责数据消费者可以为其开发特定数据源设置的仪表板和警报解决方案。另一方面,数据消费者使用数据工程小组提供的工具来应用指标和验证规则,并在数据工程小组的支持下配置警报和仪表板。

数据消费可以执行数据质量审查,他们可以请求数据工程小组将新功能添加到框架中以满足业务用例的要求。数据消费者引发的与框架相关的事件将由数据工程小组在可接受的 服务协议范围内处理。

6.小结

在本文中,我们讨论了数据质量的定义,数据质量的五个维度包括准确性、完整性、及时性、一致性和唯一性。我们讨论了指标的计算、高层实施、管理数据质量的过程以及参与此过程的各方的责任。该框架不仅提供了公司可以开发和增强以满足其业务需求的基础,而且还提供了一个通过预防性和反应性方法维护和改进数据质量的迭代过程。希望能抛砖引玉,给大家提供参考!

作者:晓晓

来源:数据驱动智能

上一篇:数据管理的热点话题:数据资产、数据价值、数据驱动、数据管理和数字化转型【万字长文,值得收藏】

下一篇:谈谈哪些数据属于重要数据以及典型的数据安全法规和实践

  • 分享:
龙石数据
咨询电话: 0512-87811036,18013092598
联系我们
商务联系微信

商务联系微信

0512-87811036,

18013092598

咨询电话