报表按时更新,任务状态也是绿色,数字却可能已经错了。数据工程真正棘手的地方就在这里:管线成功运行,不等于数据准确、完整、一致或及时。这篇题为《Good Data Engineers Ship Data That’s Wrong》的文章提醒团队,与其承诺“永不交付错数”,不如正视错误数据是一种无法完全消灭的运行风险。
控制风险,靠的是几道护栏。数据契约(data contract)像系统之间的接口说明书,约定字段、含义和质量保证,避免上游悄悄改口径;数据可观测性(data observability)持续检查更新时间、数据量、字段结构和取值分布,尽早发现“任务没报错,数字却坏了”;数据血缘(data lineage)则追踪指标从哪里来、流向哪些报表,方便出错后定位源头、圈定重算和通知范围。再配合明确的责任归属,团队追求的就不是一句“零错误”,而是让错误更早暴露、少扩散、有人处理。
不过,供稿只提供了作者的帖子和文章链接,没有正文、案例或效果数据,因此无法确认文章具体提出了哪些实践,也不宜把上述框架当成作者的原话。