新書推薦:
《
DK月季玫瑰百科
》
售價:NT$
959.0
《
为你想要的生活
》
售價:NT$
301.0
《
关键改变:如何实现自我蜕变
》
售價:NT$
352.0
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:NT$
454.0
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:NT$
286.0
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:NT$
265.0
《
明式家具三十年经眼录
》
售價:NT$
2387.0
《
敦煌写本文献学(增订本)
》
售價:NT$
1010.0
|
編輯推薦: |
你的产品仪表盘看起来时髦吗?你的季度报告过时了吗?你使用的数据集是坏的还是根本就是错误的?这些问题几乎影响每一个团队,但它们通常以一种临时的、被动的方式得到解决。如果你也受困于这些问题,那么本书就是为你准备的。如今,许多数据工程团队都面临着“好管道,坏数据”的问题。如果你的数据不好,那么数据基础设施再先进也没用。在本书中,来自数据可观测性公司蒙特卡罗的Barr Moses、Lior Gavish和Molly Vorwerck解释了如何利用世界上一些最具创新性的公司采用的最佳实践和技术来解决大规模数据质量和信任问题。通过阅读本书,你将:? 构建更可信、更可靠的数据管道。? 编写脚本进行数据检查,并通过数据可观测性识别损坏的管道。? 了解如何设置和维护数据SLA、SLI和SLO。? 制定并领导公司的数据质量计划。? 了解如何像对待生产软件一样对待数据服务和系统。? 跨数据生态系统自动绘制数据沿袭图。? 为关键数据资产构建异常检测器。
|
內容簡介: |
本书是一本关于如何清洗、整理和理解数据的手册,还介绍了围绕构建更可靠的数据系统的最佳实践、技术和流程,并在此过程中培养团队和利益相关方对数据的信任。本书首先引入“数据宕机”的概念,然后介绍如何跨多个关键数据管道技术构建更具弹性的数据系统。还介绍了数据可靠性工作流中的主动异常检测与监测,并设置SLA、SLI和SLO,以及构建由新鲜度、容量、分布、模式和沿袭这5个关键支柱组成的优化数据质量的数据平台。之后深入探讨在生产环境中实际应对和解决数据质量问题所需的步骤,包括数据事件管理、根因分析、事后分析等。接着讨论数据团队在大规模宣传和普及数据质量时必须跨越的一些文化和组织障碍,并分享了几个真实案例研究和与数据工程领域领军人物的对话。
|
關於作者: |
Barr Moses是蒙特卡罗公司的首席执行官兼联合创始人,该公司是数据可观测性类别的创建者。在长达十年的数据职业生涯中,她曾担任以色列空军数据情报部队指挥官、贝恩公司顾问和Gainsight公司运营副总裁。她主持了OReilly的第一门数据质量课程。
Lior Gavish是蒙特卡罗公司的首席技术官兼联合创始人,曾联合创办网络安全初创公司Sookasa,该公司于2016年被Barracuda公司收购。在Barracuda,他曾担任高级工程副总裁,推出了屡获殊荣的ML防欺诈产品。Lior拥有斯坦福大学工商管理硕士学位和特拉维夫大学计算机科学硕士学位。
Molly Vorwerck是蒙特卡罗公司的内容主管,还担任过Uber工程博客的主编和Uber技术品牌团队的首席项目经理。她还负责Uber首席技术官的内部沟通,以及Uber人工智能实验室研究审查项目的战略。
|
目錄:
|
目录
前言1
第1章 为什么数据质量值得关注7
1.1 什么是数据质量9
1.2 构筑当下10
1.2.1 了解“数据宕机的增加”11
1.2.2 促成当前形势的其他行业趋势13
1.3 总结15
第2章 对可靠数据系统的构建模块进行组装16
2.1 了解事务型数据和分析型数据之间的差异16
2.2 是什么让它们有所不同17
2.3 数据仓库与数据湖19
2.3.1 数据仓库:模式级别的表类型19
2.3.2 数据湖:文件级别的操作21
2.3.3 什么是湖仓一体22
2.3.4 在仓库和湖之间同步数据23
2.4 收集数据质量指标24
2.4.1 什么是数据质量指标24
2.4.2 如何提取数据质量指标25
2.4.3 使用查询日志了解数据仓库中的数据质量31
2.4.4 使用查询日志了解数据湖中的数据质量32
2.5 设计数据目录33
2.6 构建数据目录34
2.7 总结38
第3章 收集、清洗、转换和测试数据39
3.1 收集数据39
3.1.1 应用程序日志数据40
3.1.2 API响应41
3.1.3 传感器数据42
3.2 清洗数据43
3.3 批处理与流处理45
3.4 流处理的数据质量46
3.5 数据标准化49
3.5.1 处理异构数据源49
3.5.2 模式检查和类型强制转换50
3.5.3 数据中的句法歧义与语义歧义51
3.5.4 管理AWS Kinesis和Apache Kafka之间的事务型数据转换52
3.6 运行分析型数据转换53
3.6.1 确保ETL期间的数据质量53
3.6.2 确保转换期间的数据质量53
3.7 警报和测试54
3.7.1 dbt单元测试55
3.7.2 Great Expectations单元测试57
3.7.3 Deequ单元测试59
3.8 使用 Apache Airflow 管理数据质量61
3.8.1 调度程序的SLA61
3.8.2 在Apache Airflow中安装断路器64
3.8.3 SQL检查运算符64
3.9 总结65
第4章 数据管道的监控和异常检测66
4.1 了解已知的未知和未知的未知67
4.2 构建异常检测的算法68
4.2.1 新鲜度监控70
4.2.2 了解分布75
4.3 为模式和沿袭构建监控器83
4.3.1 模式变更和沿袭的异常检测83
4.3.2 对沿袭进行可视化87
4.3.3 调查数据异常89
4.4 使用Python和机器学习扩展异常检测93
4.4.1 利用机器学习改进数据监控警报98
4.4.2 假阳性和假阴性的解释98
4.4.3 提高精确率和召回率100
4.4.4 通过数据监控检测新鲜度事件103
4.4.5 F分数104
4.4.6 模型的准确率重要吗105
4.5 深入探究:其他有用的异常检测方法108
4.6 为数据仓库和数据湖分别设计数据质量监控器109
4.7 总结110
第5章 为数据可靠性进行架构设计111
5.1 在摄取数据时评估并维护高数据可靠性111
5.2 度量和维护管道中的数据质量114
5.3 了解下游的数据质量116
5.4 构建数据平台119
5.4.1 数据摄取120
5.4.2 数据存储和处理120
5.4.3 数据转换和建模120
5.4.4 商业智能和分析121
5.4.5 数据发现和治理122
5.5 建立对数据的信任122
5.5.1 数据可观测性123
5.5.2 评估数据质量的投资回报率123
5.5.3 如何为数据设置SLA、SLO和SLI125
5.6 案例分析:Blinkist128
5.7 总结129
第6章 解决大规模数据质量问题131
6.1 在软件研发过程中解决数据质量问题131
6.2 数据事件管理133
6.2.1 事件检测134
6.2.2 响应137
6.2.3 根因分析138
6.2.4 解决146
6.2.5 不做指责的复盘146
6.3 事件应对与缓解策略147
6.3.1 建立事件管理的标准程序148
6.3.2 为什么数据事件指挥官如此重要153
6.4 案例分析:PagerDuty公司的数据事件管理153
6.4.1 PagerDuty的数据运营概况153
6.4.2 PagerDuty的数据挑战154
6.4.3 使用DevOps的最佳实践来规模化数据事件管理154
6.5 总结155
第7章 构建端到端的数据沿袭157
7.1 为现代数据系统构建端到端字段级别的沿袭158
7.1.1 数据沿袭的基本要求159
7.1.2 数据沿袭的设计161
7.1.3 解析数据167
7.1.4 构建用户界面168
7.2 案例分析:在福克斯公司构建数据可靠性170
7.2.1 在与利益相关方打交道时,运用“可控自由”原则171
7.2.2 投资于去中心化数据团队172
7.2.3 避免追逐闪亮的新科技,而应该选择解决问题的技术173
7.2.4 为实现自助式分析,要致力于建立数据信任173
7.3 总结174
第8章 推广和普及数据质量175
8.1 将“数据”视为产品176
8.2 将数据视为产品的经验177
8.2.1 Convoy案例分析:数据即服务或输出178
8.2.2 Uber案例分析:数据产品经理的崛起179
8.2.3 采用“数据即产品”的方法180
8.3 在数据平台中建立信任184
8.3.1 确保产品目标与业务目标保持一致184
8.3.2 寻求适合的利益相关方的反馈与认可185
8.3.3 优先考虑长期增长和可持续性,而非短期收益186
8.3.4 为数据及其评估标准设定基准指标187
8.3.5 了解何时构建、何时购买187
8.4 分配数据质量所有权189
8.4.1 首席数据官189
8.4.2 商业智能分析师190
8.4.3 分析工程师190
8.4.4 数据科学家190
8.4.5 数据治理主管191
8.4.6 数据工程师191
8.4.7 数据产品经理191
8.4.8 谁来负责数据可靠性192
8.5 为数据质量创建责任制193
8.6 平衡数据可访问性与数据信任194
8.7 对数据进行认证195
8.8 实施数据认证流程的七个步骤195
8.9 案例分析:Toast寻找适合其数据团队结构的过程200
8.9.1 起初:一个艰难满足数据需求的小团队201
8.9.2 以分散式数据运营支持超级增长201
8.9.3 重组、再集中化并重新聚焦于数据信任202
8.9.4 在扩张数据团队时需要考虑的因素203
8.10 提高数据素养206
8.11 优先考虑数据治理和合规性208
8.11.1 优先考虑数据目录208
8.11.2 数据目录之外:实施数据治理211
8.12 构建数据质量策略211
8.12.1 让领导层对数据质量最终负责212
8.12.2 设定数据质量的KPI212
8.12.3 带头实施数据治理计划212
8.12.4 自动化数据沿袭与数据治理工具213
8.12.5 创建沟通计划213
8.13 总结213
第9章 现实世界中的数据质量:对话和案例分析215
9.1 为更高的数据质量构建数据网格216
9.1.1 面向领域的数据所有者和数据管道217
9.1.2 自助式服务功能217
9.1.3 互操作性与通信标准化218
9.2 为什么要实施数据网格218
9.2.1 选不选网格219
9.2.2 计算你的数据网格分数219
9.3 与 Zhamak Dehghani 的对话:数据质量在数据网格中的作用220
9.3.1 你可以从单一解决方案构建数据网格吗220
9.3.2 数据网格是数据虚拟化的另一种表达吗221
9.3.3 每个数据产品团队是否管理自己独立的数据存储221
9.3.4 自助式数据平台与分散式数据网格是一回事吗221
9.3.5 数据网格适用于所有的数据团队吗222
9.3.6 团队中的某个人会“拥有”数据网格吗222
9.3.7 数据网格是否会引起数据工程师和数据分析师之间的摩擦222
9.4 案例分析:Kolibri Games的数据栈之旅223
9.4.1 最初的数据需求224
9.4.2 追求绩效营销225
9.4.3 2018年:专业化和集中化227
9.4.4 开始以数据为导向228
9.4.5 开始数据驱动230
9.4.6 构建数据网格233
9.4.7 五年数据演变的五个关键思考235
9.5 让元数据为业务服务236
9.6 通过数据发现释放元数据的价值239
9.6.1 数据仓库和数据湖的考量239
9.6.2 数据目录可能淹没在数据湖甚至数据网格中240
9.6.3 从传统的数据目录过渡到现代的数据发现240
9.7 决定何时开始处理公司的数据质量问题243
9.7.1 在最近迁移到云端243
9.7.2 数据栈随着更多的数据源、更多的表和更高的复杂性而扩展244
9.7.3 你的数据团队正在扩充244
9.7.4 你的团队至少花费了30%的时间来解决数据质量问题245
9.7.5 你的团队拥有比一年前更多的数据消费者245
9.7.6 你的公司正在转向自助式服务分析模型245
9.7.7 数据是客户价值主张的关键部分246
9.7.8 数据质量源于信任246
9.8 总结246
第10章 开创可靠数据系统的未来248
10.1 要积极主动,而不是消极被动249
10.2 对数据质量和数据可靠性未来的预测251
10.2.1 数据仓库和数据湖将融为一体251
10.2.2 数据团队中的新角色252
10.2.3 自动化的兴起254
10.2.4 更多的分布式环境与数据领域的兴起255
10.3何去何从255
|
內容試閱:
|
译者序
在这个数字化飞速发展的时代,我们所生活的社会已经深深沉浸在大数据的潮流之中。无论是社交平台的推荐系统、网络商城的物流调动还是打车软件的司乘匹配,这些为生活提供全方位便利的复杂程序背后,都有海量的数据作为驱动。而2023年火爆全球的基于转换器的生成式预训练模型(Generative Pre-trained Transformer,GPT)等大语言模型(LLM),更是推动“大数据”和“人工智能”走向深度交融。
现在的机器学习软件已经能够实现端对端的数据应用,也就是说,从初始数据的导入到最终结果的输出或生成,都可以全自动完成。这种高度智能的黑箱系统固然十分强大,但其终端结果的可靠性却高度依赖于输入端数据的可靠性。数据科学界有一句俗语:“garbage in, garbage out。”这意味着,无论模型有多么智能和强大,数据的糟糕必然导致结果的谬误。
这也意味着,在确保模型、算法、代码质量的同时,也必须同样重视“数据质量”。随着数据规模不断飞速扩张,仅依赖人工和经验的、打补丁式的数据质量保障措施早已跟不上时代的发展。我们迫切需要的是关于数据质量和数据可靠性的方法论,以及一整套确保数据质量、修复数据故障、自动完成检测及质保的工业化流程。
本书深度剖析了这一关键问题。三位作者从实际工作经验出发,结合资深从业人员的访谈,对“数据可靠性”的基础问题进行了全面而深刻的剖析。令人欣慰的是,这本书不仅包含了相对抽象的概念性介绍,更通过若干真实案例演示了各类数据质量问题的实际解决方法,甚至还提供了代码和图表。作为数据领域的从业人员,在翻译这本书的过程中,我们时常对书中的具体案例颇有共鸣,在读到作者提出的自动化、大规模工业级别解决方案时,也深受启发。
本书由三位译者共同合作完成。其中李晗玥负责第1~5章的内容翻译,步凡负责第6~8章的内容翻译,陈天皓负责第9~10章及其他内容的翻译及全书的统稿工作。作为翻译团队,我们深刻理解这本书的重要性以及其中所蕴含的实践价值。在翻译过程中,我们非常注重保持原著的精髓和思想,确保准确理解书中的领域知识,保持术语的一致性,以提高整本书的可读性和专业性。我们努力让翻译既符合原文的形式,又适应国内广大受众的语言习惯,以保障信息传达的清晰准确。这是一本充满专业术语和技术细节的著作,如果读者已经翻阅了这本书中的某些章节,或许会和我们一样,感受到这本书的信息密度。坦诚地讲,在翻译过程中,我们常常面临找不到对应词汇的挑战,甚至有些技术和知识对于从业人员来说仍然较为新颖。通过查阅大量的资料和团队讨论,我们斟酌用词、反复修改,尽最大的努力还原原意。我们还积极对译稿进行了互相校对,以便让各章节和整体内容的准确性及一致性更有保障。相互间的默契和合作精神是成功翻译本书的关键,每位译者都为项目的顺利进行付出了辛勤努力,我们也深感荣幸并由衷感谢彼此间的协作与支持。在这个充满挑战的翻译过程中,我们分享经验、密切配合、共同成长、彼此启发,携手完成了这项富有意义的任务。
当然,我们深知本书的翻译难免存在瑕疵,因此对于可能存在的不足,我们诚恳地期待读者不吝赐教,提出宝贵的意见和建议,帮助我们进一步提升翻译的质量。
最后,我们由衷感谢出版社、专家老师、编辑以及父母亲友的支持。编辑的耐心指导和专业建议为这本书的翻译提供了宝贵的意见,使其更为准确和通顺。出版社的大力支持使得这本书能够顺利问世,对此我们深表感激。感谢那些愿意分享经验和见解的专家老师,正是他们的慷慨奉献让这本书更具深度和实用性。最后,要特别感谢我们的父母—李健和郑玉华、陈宏和徐彤、步道远和高晓芬—在翻译过程中的理解和坚定支持。此外,还要感谢李晗玥的爱人唐庆烜无论何时都坚定支持她的一切选择,在低谷至暗时期彼此鼓励与依靠,以及陈天皓女朋友查查在每个艰难时刻对他温暖的支持和持久的鼓励,成为他不断前行的力量源泉。他们的陪伴不仅是翻译工作中的温馨庇护,更是每一次艰难时刻的坚实依靠。在这个充满挑战和收获的过程中,是他们的陪伴成就了我们的努力,给予我们勇气与力量,让这段翻译之旅充满温馨和动人的回忆。
有趣的是,我们通过ChatGPT对上述文字进行了巧妙的润色和修饰—就像是在原本美味的料理上轻轻撒上了一些特别的调味料,为这段译者序注入了一份独特的魅力,使它变得更加引人入胜,仿佛一场味蕾的奇妙冒险。
希望这本书能够成为读者深入了解和应用数据质量的得力工具,引领大家走向数据管理与应用的前沿。
李晗玥、陈天皓、步凡
前言
你是否经历过以下任何一种情况:
? 在一个关键(且相对可预测)的表中,5000行突然变成500行,且没有任何规律或原因。
? 损坏的仪表板导致执行仪表板显示空值。
? 隐藏的模式更改中断了数据的下游管道。 这样的例子不胜枚举。
这本书为那些或多或少曾遭受不可靠数据困扰并想为此做些什么的人而写。我们预计这些人将拥有数据工程师、数据分析师或数据科学家的背景,并积极参与公司数据管道的
|
|