根据调查,大多数公司希望增加投资的领域是数据质量,这是未来最受欢迎的投资领域。
这样做有充分的理由。首先,数据质量差会导致对数据的信任度下降和决策错误。其次,公司越来越多地投资于业务关键型系统,例如直接由数据仓库提供支持的 ML 或面向用户的分析,而这些系统没有出错的余地。
然而,大多数公司没有客观评估其数据质量的方法,这使得他们无法识别问题区域或跟踪一段时间内的改进情况。
在这篇文章中,我们探讨
.衡量质量时的注意事项
.以数据资产为中心的方式
.以数据产品为中心的方式
.将质量洞察与定量指标相结合
.将洞察付诸行动
你在玩什么游戏
如果你和大多数人一样,你不会为了好玩而测量数据质量。相反,你有一个明确的业务需求,例如,
•通过强调问题区域,让分布式团队掌握数据质量;
•在利益相关者多次询问数据质量被认为较低后,向他们展示信心;
•向监管机构表明您掌握着数据质量的主动权;
•与数据产品的工程师分享您已承诺遵守 SLA 的系统正常运行时间。
在开展测量数据质量之前,你应该清楚自己在玩什么游戏。获得可靠的指标将是一项投资,一旦你发现问题区域,更大的投资等待着你,以更好的数据质量控制来改善这些问题。
一 、衡量质量时的注意事项
制定衡量数据质量的指导方针,以便每个人都能以一致的方式对待它。虽然这些可能取决于业务情况,但我们发现这些指导原则非常有效。
指标——衡量覆盖率和正常运行时间
行动——可操作且后续步骤明确
细分——可按关键维度进行细分
用例——考虑数据使用方式
趋势——随着时间的推移保持一致且可衡量
在大多数情况下,需要根据数据的使用方式指定期望。我们建议这样做,因为您可能不想让所有资产都遵守相同的标准。记住哪些数据对业务至关重要、哪些数据会被公开(例如,在仪表板中)以及哪些资产应该有 SLA(例如,如果数据没有按时到达,就会产生下游影响),可以帮助您评估需要哪些检查,从而衡量哪些是重要的。
示例 – 每个表的质量规范和元数据
二 、以数据资产为中心的方式测量数据质量
在资产级别监控数据质量非常直观:可以在表级别计算正常运行时间和覆盖率,并可以选择按元数据维度(例如所有者域、关键性以及随时间推移)进行细分。
这可以鸟瞰数据堆栈,了解在哪些领域比较薄弱,哪些领域比较强,以及这与期望有何关系。
我们建议您考虑两个指标以获得最完整的信息。
正常运行时间——每次运行时,现有控制措施成功通过的百分比是多少
覆盖率——有多少比例的数据资产已实施必要的控制
将质量指标分组到语义相似的领域,可以以更贴近业务用例的方式讨论数据质量。
(1) 及时性
– 数据是否根据与业务商定的 SLA 保持最新和最新状态,
(2) 正确性
– 所有数据是否可用,
(3) 完整性
– 数据在语义上是否正确,
(4) 一致性
– 可用数据是否在各个系统中一致。
我们还建议明确定义哪些情况是“差”、“还行”或“好”。在我们的示例中,任何低于 50% 的分数都被标记为“差”,这意味着需要采取行动。
数据质量汇总表——跨质量维度和随时间变化的正常运行时间和覆盖范围
这种洞察力水平可以让你开始询问有关数据质量的问题,例如
虽然我们对空值检查有很好的覆盖,但我们应该研究哪些检查失败了,是否可以修复,或者是否应该删除它们。
为什么我们的断言测试的正常运行时间显著下降?
鉴于覆盖率低,我们在唯一性测试上的高正常运行时间是否会给我们一种虚假的安全感?
假设您已指定域所有者等元数据。在这种情况下,您可以细分数据以查看正确性分数的下降主要是由数据仓库团队拥有的表的断言测试驱动的,我想您现在知道该找谁了。
三 、以数据产品为中心的数据质量测量方法
虽然上述以数据资产为中心的方法有优点——它很容易理解、实施,但推理它有一个主要缺点。
以数据资产为中心的质量指标本质上与数据的用例没有联系。
换句话说,您的及时性得分可以达到 95%。但是,如果包含关键广告支出管道的 ML 预测的数据模型在每周运行之前失败,那么您的情况也不会好转,您的 CTO 会生气地找您,要求您控制数据质量。
我们提出了一种衡量数据质量的替代方法——以数据产品为中心的方法。
数据产品是一组相关资产,例如由曝光链接的 DBT 模型、支持营销自动化的 CLTV 模型使用的表格或 BI 工具中的一组选定仪表板。换句话说,数据产品与其业务用例紧密相关。
数据产品类似于汽车仪表盘上的警示灯。它们不会立即告诉你有关底层指标的任何信息(例如,油位是否低于 10%),而是告诉你产品存在问题、问题的重要性以及你应该如何调查。
在上面的例子中,您可以立即看到业务 KPI 数据产品上游资产的问题。
您可以跟踪数据产品的健康状况,同时考虑数据产品内部和上游的问题。这创造了一种更直观、以最终用户为中心的数据健康状况衡量方法。有了这些信息,您可以理直气壮地告诉您的首席财务官,您的业务 KPI 仪表板存在可靠性问题,过去 15 天内停机时间为 6 天。
一旦确定数据产品的可靠性存在问题,您就可以深入研究不同的数据控制以查找根本原因。
四、 将定量指标与定性见解相结合
尽管数据质量检查覆盖率高且错误少,但您可能仍存在盲点。您可以通过将质量指标与有关数据用户体验的定性见解和指标相结合来解决这些问题。
调查利益相关者
将定量指标与利益相关者调查相结合是发现需要改进领域的好方法。请他们就自助服务的满意度、仪表板的质量以及他们所在地区是否有足够的数据人员等问题提供坦诚、匿名的反馈。
宣布和监控数据事件
数据团队对事件并不陌生。但处理数据问题通常没有标准方法,许多团队只是偶尔宣布数据事件。
与自动化数据质量指标不同,事件是手动声明和分类的(例如 P1、P2、P3)。记录历史事件是补充数据质量指标并向利益相关者透明的好方法。
监控数据可用性
虽然严格来说不是数据质量衡量指标,但数据资产的可用性经常被忽视。这可能会导致糟糕的最终用户体验,例如对同一指标有多个定义,或者堆栈臃肿,包含数百个未使用的数据模型和仪表板。为了克服这个问题,我们建议您使用可用性指标来补充您的质量衡量指标,例如
参与度分数——仪表板的用户数量以及数据模型上的下游依赖项和查询的数量
可用性得分– 带有描述的列和表的百分比
这些指标可帮助您实施诸如淘汰未使用的数据模型或仪表板等计划,这是维护健康堆栈的重要部分。
五、 将洞察付诸行动
您经常会希望将监控数据质量过程中发现的洞察付诸实践。无论是为了改进某个特定领域,还是与利益相关者分享您的改进方法,还是其他什么。
虽然没有一劳永逸的解决方案,但我们已经看到这些方法效果良好。
通过每周电子邮件摘要自动追责——成为必须告诉他们数据质量不佳的人并不总是一件有趣的事。安排每周自动发送一封电子邮件,其中包含随时间推移和每个所有者域的质量得分,这是一种很好的追责方式,无需一个人指责。
当人们看到自己的团队得分低于同行时,他们会引起关注。
认真对待元数据— 我们看到数据质量计划失败的最常见原因是每个人都对数据质量负责,因此没有人感到有责任。只有通过强制执行元数据(例如关键性和所有者或域),您才能让人们对其领域的数据质量负责。
警惕“破窗理论”——“破窗理论”可以追溯到犯罪学,它认为如果你把院子里一扇窗户打碎,院子里的其他一切都会开始崩塌。如果居民开始看到一切都崩塌,他们就不会再关心其他事情了。我们可以将同样的比喻应用到数据质量上。
如果有很多测试失败,这通常是信噪比太低或测试实施位置不对的征兆。不要让失败的数据检查搁置。相反,应留出专门的时间(例如每隔一周的“修复星期五”)来解决此类问题并删除不再需要的数据检查。
创建数据质量运行手册– 如果您所在的团队规模较大,请包含解决每个数据质量维度的明确步骤,以便每个人都清楚了解。例如,如果及时性分数较低,您可以推荐一些步骤,例如添加数据源新鲜度检查或设置新鲜度监视器。
数据质量评分的行动并不一定就此结束。我们已经看到最好的团队更进一步,将质量评分嵌入关键仪表板,以向利益相关者表明数据是否值得信赖,并设定要求,即业务关键流程中使用的数据资产在公开之前必须获得“良好”的评分。