Data Fabric和Data Mesh数据网格都认为:在物理上集中所有数据是徒劳的。他们都认识到数据量只会增长,而数据源只会成倍增加。
结果,这两者有时往往会混为一谈。
但是它们在理念和实施方面都非常不同,并且每种方法都有很大的优点。
从本质上讲,数据网格是一种类似于联邦政府的模型,而Data Fabric数据结构则类似于集中式结构。
Data Fabric
Data Fabric 平台赋予分散数据的物理现实性,并试图通过创建仍然在逻辑上集成数据的虚拟化访问层来缓解这种情况。这种逻辑上的统一意味着中央点:这个单点仍然可以管理数据、治理数据并使其符合公司范围的标准。
Data Fabric 还收集了一系列用于数据转换和分析的技术,并将它们按单点形式提供给组织业务部门,以实现自助分析。
Data Fabric与特定供应商堆栈相关联,特别耦合于提供完整数据平台的供应商。
数据网格:协作自治
数据网格表示不同的数据子集应该由最常使用它的业务领域内的团队完全管理。这些团队应该将数据作为事件流、表或 API 驱动的服务提供给其他业务部门/领域的其他团队,并且应该使它们像可以与其他数据结合的构建块一样易于使用。
Thoughtworks 的开创者 Zhamak Dehghani描述了其严格性。Dehghani 表示,Data Mesh 架构基于面向领域、去中心化数据所有权和架构的原则;数据作为产品;作为平台的自助服务基础设施;和联合计算治理。此外,Dehghani 表示,每个面向领域的团队生产的数据产品都应该是可发现的、可寻址的、值得信赖的,并具有自我描述的语义和语法。它们还应该是可互操作的、安全的,并受全球标准和访问控制的约束。
换句话说,相对较小的跨职能团队拥有属于其业务领域的所有数据资产的开发、部署和维护。领域数据集、服务和 API 是以产品驱动的心态开发的,强调可发现性和可用性。
数据集的消费者是客户;他们的满意度和采用水平构成了领域团队成功的重要指标。基础设施的实施、供应和维护是集中的,治理标准和控制也是如此。其余的由业务领域团队控制。
Data Mesh 背后的思想与 2000 年代中期的面向服务架构 (SOA) 运动和今天的微服务背后的思想非常相似。它断言紧密耦合的单体架构是脆弱的,缺乏敏捷性,最终会过时。相反,最好将分析数据重构为松散耦合的构建块服务,开发人员可以轻松理解、采用和使用这些服务,并与其他此类服务结合以创造更高价值的东西。
数据网格领域中的领域团队类似于软件世界中的开发团队,后者是跨职能的,对他们设计、开发和交付的软件产品承担全部责任。不利的一面是,开发团队及其代码库之间的实现风格、语义和开发方法的差异当然会发生。
开明的架构、授权和自治将有所帮助。但它们必须以强制合规性和兼容性的现实为基础,同时避免技术债务和碎片化。