前言
Data Mesh推动我们在处理数据方面进入了一个新的轨道:在规模化数据分析和人工智能领域如何想象数据,如何获取和分享数据,以及如何利用数据创造价值。这种新的发展轨道使我们从数据及其所有权的中心化模式转向去中心化模式。在这条新的道路上,我们拥抱组织的复杂性,以及它们的快速变化和持续成长。Data Mesh的目标是使组织能够从大规模的数据中获得价值,尽管这些数据混乱而且组织复杂。
回顾行业历史,我们也曾被推动过。UNIX的诞生及其哲学(编写只做一件事的程序,然后把这件事做好;编写可以一起协作的程序;等等)产生了蝴蝶效应,为我们处理软件核心的复杂性提供了指导。现在,我们通过分布式架构、面向服务的设计、遵循标准API的通信以及自主领域团队的组织来处理这种复杂性。我希望Data Mesh为解决数据核心的复杂性提供新的途径,服务于分析型数据和人工智能领域。
2018年,在观察了那些在数据技术方面进行了大量投资的先进大型公司从数据中获取价值的常见失败模式之后,我完成了Data Mesh的论文。通过观察它们在扩展数据管理解决方案和组织以满足它们雄心勃勃的数据愿景方面所做的努力,我对数十年来关于如何从数据中获取价值的假设提出了质疑,这些假设包括:收集数据;集中存储数据;让一个数据团队负责全部数据,然后再把数据释放给不同的用户和用例。我们必须重新审视这些假设。
大约在同一时间,我在纽约的O'Reilly会议上分享了Data Mesh背后的想法。我的演讲题目是“超越数据湖”(https://oreil.ly/O3hbf),因为我正在努力解决科技界最难的问题之一:命名。当我说出要从根本上改变我们对数据的看法,并且听起来有点亵渎性的话时,我害怕会受到严厉的批评,但是听众还是积极地接受了我的演讲。数据用户(数据分析师或科学家)很痛苦,他们都在挣扎着想及时获得高质量和可信的数据。数据工程师也有类似的痛苦,他们夹在数据提供者和数据用户之间,在没有与业务密切接触的情况下,试图从不可靠的上游数据中获得价值,并将其转换成其他人可以使用的形式。听众中的一些领导者点头表示,他们的数据和分析型解决方案的回报率一般。当离开会议的时候,我对超越数据湖更加有信心了。几个月后,我错过了一场要在中国举行的为期一周的技术委员会会议。当时,我三岁的女儿在我将要飞离美国的前一天晚上发烧了。虽然我登上了飞机,掩饰了自己将要与生病的孩子分开一个星期的绝望,但是当飞行员向机组人员宣布要关闭飞机舱门的时候,我崩溃了。于是,我下了飞机。因此我用一个星期的时间把Data Mesh的想法写成了一篇题为“How to Move Beyond a Monolithic Data Lake to a Distributed Data Mesh”的文章(https://oreil.ly/rxjiW),这篇文章发表在了Martin Fowler的网站上。它很成功,获得了难以置信的阅读量。现在,三年已经过去了,我写了这本书,它更加深入地探讨了为什么要用Data Mesh,Data Mesh是什么,以及如何实现Data Mesh。
写作背景
Data Mesh自问世以来,得到了采用它的公司的大力支持。它鼓励供应商尝试调整其产品以适应Data Mesh实现。它创造了一个蓬勃发展的学习社区来分享大家的经验。
在共享和创建数据以支持数据分析和机器学习(ML)用例方面,我们仍然处于早期阶段,还存在各种不同的基础方法。但是,我们的行业趋势是将各种新概念和流行语渗透得面目全非。因此,我决定写这本书,以便为未来Data Mesh实现的演进创建一个通用的基础。我想确保,在建立新的技术解决方案之前,我们要明白为什么需要做出改变,我们正在努力解决的问题是什么,以及如何做到。
本书介绍Data Mesh基础知识以及它的基本原则,阐述如何应用它的基本原则来创建高层次架构,并展示执行其实现以及转变组织和文化的工具。
目标读者
本书是为拥有不同角色和技能的人写的。Data Mesh是一种范式转换,它需要许多互补角色和学科的集体努力,以使它可以在任何组织中实现,这些角色包括架构师、实现人员、基础设施工程师、产品经理、数据领导者和执行人员。
下面简单介绍本书的主要读者,以及他们能从本书中学到什么。
•像数据科学家和分析师这样的分析型数据用户应该阅读本书,以了解Data Mesh能为他们带来什么,以及作为网格(Mesh)的活跃成员,他们如何参与进去,并随着新的数据产品在网格上共享,转而提供他们的洞见和推论。
•应用程序团队或数据工程师等数据提供者应该阅读本书,以了解Data Mesh如何将操作型数据和分析型数据及应用程序的两个平面结合起来。他们将掌握如何进入跨领域团队,以及他们将构建什么样的架构来支持Data Mesh。
•基础设施产品所有者、架构师和工程师应该阅读本书,以了解自助数据平台的作用和设计,从而创建一套完整的服务,实现规模化的、跨功能领域团队的、去中心化的数据共享。
•数据治理团队应该阅读本书,以便理解新的实现治理目标的结构和方法,这种结构和方法有利于数据的独立领域所有权,消除组织瓶颈,并高度依赖于自动化和计算。本书介绍了数据治理的新角色和新形态。
•数据领导者、管理者和执行者应该阅读本书,以了解即将到来的范式转变,并学会制定基于Data Mesh的数据策略,执行其变革,并在此过程中培育他们的组织。
本书写给那些有传统数据和分析背景的人,以及那些更关注软件和应用程序交付的人。Data Mesh实际上缩小了这两类人之间的差距。
如果你有传统数据背景,比如是数据工程师或数据分析师,我建议你放下过去的偏见,对解决分析型数据管理和处理问题的新方法持开放态度,把计算和自动化作为数据不可或缺的伙伴。
如果你有应用程序开发背景,比如是软件架构师或应用程序基础设施工程师,请带着对数据和分析的同理心来阅读本书,将自己视为共享数据和从数据中获取价值以改进应用程序的解决方案的一部分。想象一个新的未来,即数据工作和应用程序开发是使解决方案成功的两个互补部分。
如何阅读本书
我强烈建议你从引言开始。引言可以帮助你感受和直观地看到实际的Data Mesh是什么样子的。它展示了Data Mesh对日常工作的影响,并通过一个虚构的数字流媒体公司(Daff公司)的故事展示了应用Data Mesh的原则。
本书内容主要分为五个部分。
第一部分介绍了Data Mesh的基本原则,并描述了它们的转换影响。我希望每个人都能阅读该部分,因为这里的内容引出了围绕Data Mesh的所有讨论。
如果你不确定Data Mesh是不是你的正确选择,或者你想知道它解决了什么问题以及它如何解决这些问题,或者仅仅是想影响其他人,那么请阅读本书的第二部分。它比较了Data Mesh与以前的数据架构的区别,并讨论了是什么把我们带到了现在,它为什么不能继续带我们到未来。我建议所有读者都阅读这些内容。
第三部分适用于所有技术人员、领导者或实践者。该部分着重于Data Mesh组件的高层次架构。这些组件可以帮助你设计Data Mesh架构以及评估与Data Mesh匹配的现成的技术。
第四部分介绍了Data Mesh中的一个核心概念——数据产品的设计详情。该部分将简化复杂的概念,但在必要的细节上不会妥协。对于所有的角色(包括管理者、领导者或实践者)来说,该部分都比较容易理解。然而,有些人将从该部分中获得最大收益,他们就是那些要实现Data Mesh的各个方面的技术领导者。
第五部分是总体执行人员的指南,他们影响着数据策略和组织变革。该部分介绍了如何演进式地执行Data Mesh的转换,以及如何围绕团队结构、激励、文化等做出组织设计决策的可行建议。
排版约定
本书中使用以下排版约定:
斜体(Italic)
表示新的术语、URL、电子邮件地址、文件名和文件扩展名。
粗体(Bold)
用于数据域和数据产品名称。
等宽字体(Constant width)
用于程序清单,以及段落中的程序元素,例如变量名、函数名、数据库、数据类型、环境变量、语句以及关键字。
等宽粗体(Constant width bold)
表示应由用户直接输入的命令或其他文本。
等宽斜体(Constant width italic)
表示应由用户提供的值或由上下文确定的值替换的文本。
该图示表示一般性说明。
该图示表示警告或注意。
O'Reilly在线学习平台(O'Reilly Online Learning)
40多年来,O'Reilly Media致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。
我们拥有独一无二的专家和革新者组成的庞大网络,他们通过图书、文章、会议和我们的在线学习平台分享他们的知识和经验。O'Reilly的在线学习平台允许你按需访问现场培训课程、深入的学习路径、交互式编程环境,以及O'Reilly和200多家其他出版商提供的大量文本和视频资源。请访问http://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-mesh上列出了勘误表、示例以及其他信息。
关于书籍、课程、会议和新闻的更多信息,请访问我们的网站https://www.oreilly.com。
我们在Facebook上的地址:http://facebook.com/oreilly。
我们在Twitter上的地址:http://twitter.com/oreillymedia。
我们在YouTube上的地址:http://www.youtube.com/oreillymedia。
致谢
我想把这本书献给我的爱人Adrian Paoletti和我的女儿Arianna Paoletti。他们的耐心和无私的爱与支持让本书得以顺利完成。在过去一年半的时间里,为了完成这本书,我们错过了许多节假日和周末。我将永远感激他们的理解和爱。我还想把这本书献给我的母亲Nayer Dadpay和妹妹Parisa Dehghani,她们的爱和鼓励持续推动我完成了这本书。
都说写书是孤独的——对我来说不是这样。我要感谢在本书早期帮忙审校的朋友,他们在我写作的过程中给予我很多反馈。以下致谢名单没有特别的顺序:Andy Petrella,谢谢你以数据科学家的视角,谦逊和幽默地分享你的观点;Chris Ford,谢谢你对架构设计的独到见解,帮助拓宽我的视野;Mammand Zadeh,感谢你经常站在数据基础设施领导者的位置思考,并总是帮助我把想法变成现实;Martin Fowler,谢谢你的全局视野,帮助我明确了发展方向并澄清了复杂的概念;Danilo Sato和Sam Ramji,感谢你们的指导、智慧和时间。
Thoughtworks的同事参与了科技行业许多划时代的变革:微服务、持续交付、敏捷等。其背后的原因之一是,Thoughtworks的领导层为追求卓越软件的分布式创造力创建了合适的环境。Rebecca Parsons和Chris Murphy,谢谢你们支持我写这本书。我要感谢我在Thoughtworks的同事(排名不分先后):Gagan Madan、Zichuan Xiong、Neal Ford、Samia Rahman、Sina Jahangirizadeh、Ken Collier、Srikar Ayilavarapu、Sheroy Marker、Danilo Sato、Emily Gorcenski、David Colls、Erik Nagler以及很多其他同事。
我要感谢所有在O'Reilly工作的人,是他们让本书得以出版。在O'Reilly美好而热情的家庭中,我想特别感谢Gary O'Brien,谢谢他一直以来的支持,他舍弃和家人的周末时光来审阅我的内容、回答我的问题,让我度过低谷期,放下疑虑,并重回正轨。Melissa Duffield,谢谢他把本书推向市场,帮助我迈出第一步,以非凡的同理心持续支持我。
最后,我要感谢我写作过程的老师和导师Martin Fowler,感谢他指引我走完每一步。