你是否经历过以下任何一种情况:
· 在一个关键(且相对可预测)的表中,5000行突然变成500行,且没有任何规律或原因。
· 损坏的仪表板导致执行仪表板显示空值。
· 隐藏的模式更改中断了数据的下游管道。
这样的例子不胜枚举。
这本书为那些或多或少曾遭受不可靠数据困扰并想为此做些什么的人而写。我们预计这些人将拥有数据工程师、数据分析师或数据科学家的背景,并积极参与公司数据管道的构建、扩展和管理。
从表面上看,本书似乎是一本关于如何清洗、整理和理解数据的手册——而它确实如此。但更重要的是,本书还介绍了围绕构建更可靠的数据系统的最佳实践、技术和流程,并在此过程中培养团队和利益相关方对数据的信任。
在第1章中,我们将讨论为什么数据质量现在值得关注,以及架构和技术趋势是如何导致治理水平和可靠性整体下降的。我们将引入“数据宕机”(data downtime)的概念,并解释它是如何追溯到早期的站点可靠性工程(SRE)团队的,以及如何将这些开发运营(DevOps)原则应用于数据工程工作流。
在第2章中,我们将通过介绍如何跨多个关键数据管道技术[包括数据仓库(data warehouse)、数据湖(data lake)和数据目录]解决和度量数据质量,来强调如何构建更具弹性的数据系统。上述三种基本技术存储、处理和跟踪数据健康预生产,而这会自然引导我们进入第3章。在第3章中,我们将介绍如何在考虑质量和可靠性的前提下收集、清洗、转换和测试数据。
第4章将通过分享如何使用公开的系外行星数据集构建数据质量监测器,来介绍数据可靠性工作流中最重要的方面之一——主动异常检测与监控。尽管篇幅有限,但该章将让读者有机会直接将他们在本书中学到的内容应用到工作中。
第5章将为读者提供一个鸟瞰图,了解如何将这些关键技术组合在一起并构建强大的系统和流程,以确保无论用例如何都能度量并维护数据质量。我们还将分享Airbnb、Uber、Intuit等公司的一流数据团队如何将数据可靠性集成到日常工作流中,包括设置服务级别协议(Service Level Agreement,SLA)、服务级别指标(Service Level Indicator,SLI)和服务级别目标(Service Level Objective,SLO),以及构建由5个关键支柱——新鲜度(freshness)、容量(volume)、分布(distribution)、模式(schema)和沿袭(lineage)组成的优化数据质量的数据平台。
在第6章中,我们将深入探讨在生产环境中实际应对和解决数据质量问题所需的步骤,包括数据事件管理、根因分析、事后分析以及建立事件沟通最佳实践。在第7章中,读者将通过学习如何使用每个数据工程师都应掌握的流行且被广泛采用的开源工具来构建字段级沿袭,从而进一步加深对根因分析的理解。
在第8章中,我们将讨论数据团队在大规模宣传和普及数据质量时必须跨越的一些文化和组织障碍,包括最优原则(如将数据视为产品)、了解公司的数据质量RACI(Responsible、Accountable、Consulted、Informed)矩阵,以及如何构建数据团队来获得最大的业务影响。
在第9章中,我们将分享几个真实案例研究和与数据工程领域领军人物的对话,包括数据网格(data mesh)的创建者Zhamak Dehghani、分享其团队向去中心化(数据质量第一!)数据架构迁移故事的António Fitas,以及福克斯(Fox)数据服务副总裁Alex Tverdohleb——他也是“克制的自由”数据管理技术的先驱。这种理论与实际示例的结合将帮助你生动形象地理解我们在第1~8章中强调的几个技术和流程驱动的数据质量概念。
最后,在第10章中,我们将用一个具体的计算来度量不良数据对业务的财务影响(以工时为单位),以此来帮助读者(其中许多人负责修复数据宕机),让领导层有理由投资更多的工具和流程来解决这些问题。我们还将重点介绍我们对未来数据质量的4个预测,因为这与更广泛的行业趋势相关,例如,分布式数据管理和湖仓一体的兴起。
我们希望你在阅读完这本书后,当在整个组织中确定数据质量和可靠性的优先级时,至少能够掌握一些诀窍。正如任何一位经验丰富的数据领导者都会告诉你的那样,数据信任绝非一日之功,但只要通过正确的方法,就能逐渐取得进步。
排版约定
本书中使用以下排版约定:
斜体( Italic )
表示新的术语、URL、电子邮件地址、文件名和文件扩展名。
等宽字体(Constant width)
用于程序清单,以及段落中的程序元素,例如变量名、函数名、数据库、数据类型、环境变量、语句以及关键字。
该图示表示提示或建议。
该图示表示一般性说明。
这里的代码是为了帮助你更好地理解本书的内容。通常,可以在程序或文档中使用本书中的代码,而不需要联系O'Reilly获得许可,除非需要大段地复制代码。例如,使用本书中所提供的几个代码片段来编写一个程序不需要得到我们的许可,但销售或发布O'Reilly的示例代码则需要获得许可。引用本书的示例代码来回答问题也不需要许可,将本书中的很大一部分示例代码放到自己的产品文档中则需要获得许可。
非常欢迎读者使用本书中的代码,希望(但不强制)注明出处。注明出处时包含书名、作者、出版社和ISBN,例如:
Data Quality Fundamentals ,作者Barr Moses、Lior Gavish和Molly Vorwerck,由O'Reilly出版,书号978-1-098-11204-2。
如果读者觉得对示例代码的使用超出了上面所给出的许可范围,欢迎通过 permissions@oreilly.com 联系我们。
O'Reilly在线学习平台(O'Reilly Online Learning)
40多年来,O'Reilly Media致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。
我们拥有独一无二的专家和革新者组成的庞大网络,他们通过图书、文章、会议和我们的在线学习平台分享他们的知识和经验。O'Reilly的在线学习平台允许你按需访问现场培训课程、深入的学习路径、交互式编程环境,以及O'Reilly和200多家其他出版商提供的大量文本和视频资源。有关的更多信息,请访问 https://oreilly.com 。
如何联系我们
对于本书,如果有任何意见或疑问,请按照以下地址联系本书出版商。
美国:
O'Reilly Media,Inc.
1005 Gravenstein Highway North
Sebastopol,CA 95472
中国:
北京市西城区西直门南大街2号成铭大厦C座807室(100035)
奥莱利技术咨询(北京)有限公司
要询问技术问题或对本书提出建议,请发送电子邮件至 errata@oreilly.com.cn 。
本书配套网站 https://oreil.ly/data-quality-fundamentals 上列出了勘误表、示例以及其他信息。
关于书籍和课程的新闻和信息,请访问我们的网站 https://oreilly.com 。
我们在LinkedIn上的地址: https://linkedin.com/company/oreilly-media 。
我们在Twitter上的地址: https://twitter.com/oreillymedia 。
我们在YouTube上的地址: https://youtube.com/oreillymedia 。
致谢
这本书是爱的结晶,因此我们要感谢很多人。
首先,我们要感谢无所畏惧的策划编辑Jess Haberman,她对我们的每一步都充满信心。当Jess向我们提出写一本关于数据质量的书的想法时,我们都大吃一惊。我们没有想到数据可靠性这个如此贴近我们内心的话题,会在我们的个人博客文章之外找到共鸣。在她的奉献和鼓励下,我们起草了一份提案,将其与该领域已发表的内容区分开来,并最终撰写了此书——这将为其他与数据宕机作斗争的数据从业人员带来价值。
我们还必须感谢内容编辑Jill Leonard,他在整个写作过程中担任了尤达 的角色。从提供关于流程和副本的宝贵指导,到参加鼓舞士气的谈话和头脑风暴会议,Jill是带领我们到达终点的绝地武士。
我们永远感谢技术审稿人Tristan Baker、Debashis Saha、Wayne Yaddow、Scott Haines、Sam Bail、Joy Payton和Robert Ansel,感谢他们对本书的多个草稿进行了大幅编辑并提供了有价值的反馈。他们对将DevOps最佳实践和良好数据卫生带到该领域的热情是一种激励,我们很荣幸能与他们合作。
我们还想对Ryan Kearns表示万分感谢,他是本书的撰稿人之一,他的名字本可以出现在署名栏上。从引领最初几章内容的创作到对所讨论的技术和过程提供批判性见解,如果没有他的帮助,这本书就不会问世。我们每天都在向他学习,在未来几年里,Ryan无疑将成为数据工程和数据科学领域最重要的人物之一。
我们为写作本书采访了几位行业专家和开拓者,并在过去的一年里开展了各种各样的项目。不分排名先后,我们要感谢Brandon Beidel、Alex Tverdohleb、António Fitas、Gopi Krishnamurthy、Manu Raj、Zhamak Dehghani、Mammad Zadeh、Greg Waldman、Wendy Turner Williams、Zosia Kossowski、Erik Bernhardsson、Jessica Cherny、Josh Wills、Kyle Shannon、Atul Gupte、Chad Sanderson、Patricia Ho、Michael Celentano、Prateek Chawla、Cindi Howson、Debashis Saha、Melody Chien、Ankush Jain、Maxime Beauchemin、DJ Patil、Bob Muglia、Mauricio de Diana、Shane Murray、Francisco Alberini、Mei Tao、Xuanzi Han和Helena Munoz。
我们还要感谢Brandon Gubitosa、Sara Gates和Michael Segner,感谢他们在大纲和草稿方面的帮助。
我们也要感谢我们的父母Elisha和Kadia Moses、Motti和Vira Gavish、Gregg和Barbara Vorwerck,他们鼓励我们追求数据工程和数据质量,无论是成立一家致力于这个概念的公司,还是撰写本书。我们还要感谢Rae Barr Gavish(RBG)成为我们的头号粉丝,并感谢Robert Ansel成为我们的常驻网站可靠性工程师、WordPress顾问和开发运营专家。
我们永远感谢我们的客户,他们帮助我们开拓了数据可观测性领域,并通过这一过程为未来大规模可靠数据的发展奠定了基础。