分布式数据网格作为集中式数据单体的解决方案
企业数据架构师不应该建立大型集中的数据平台,而应该创建分布式数据网格..ThoughtWorks的主要技术顾问Zhamak Dehghani在旧金山QCon的一篇演讲和一篇相关文章中说,这种方法的改变需要范式的转变。随着数据变得越来越普遍,数据仓库和数据湖的传统体系结构变得不堪重负,无法有效地扩展规模。德哈尼认为,分布式数据网格方法可以通过接受面向领域的数据所有权来克服这些固有的低效。
“我建议下一步的企业数据平台架构是在分布式领域驱动架构、自服务平台设计以及用数据进行产品思维的融合。”
她的发言包括一些现实世界的例子,但她主要侧重于新的管理原则,并辅以新的语言来支持这种心态。例如,服务过度摄取,发现和使用过度提取和加载。
在传统的数据平台体系结构中,Dehghani看到了三种失效模式。首先,它们是集中的和单一的。将所有类型的数据组合在一起可能对小型组织起作用,但最终对于有大量数据源进入的企业和数据的不同消费者来说是失败的。
其次,是一个Dehghani描述为“耦合管道分解”的问题。几代架构师将数据平台体系结构分解为“数据处理步骤管道”。这些流水线步骤与变化轴是正交的,新特性需要更新所有步骤。
筒仓和超专业所有权是最终的失效模式..集中式体系结构自然会创建提供数据的数据源团队和检索处理数据的消费团队的类别。中间是数据和机器学习专家。虽然这两个外部组是面向域的,但中心团队必须是不可知域的。
德格哈尼将这些挑战与n层整体的挑战进行了比较,在那里,新的需求需要修改所有的层。微服务更好地与变化的元素保持一致,但需要一种不同的设计方法。要成功实现数据网格体系结构,需要进行类似的、戏剧性的思维转变。
“为了分散整体数据平台,我们需要扭转我们对数据、其位置和所有权的看法。域不需要将数据从域流到中央拥有的数据湖或平台中,而是需要以易于消耗的方式托管和服务其域数据集。”
所设想的体系结构侧重于领域数据产品作为第一类组件,每个组件都由理解该领域的团队拥有相应的所有权。单一的、刚性的数据管道不再是主要的设计关注点,数据也不再明显地被隔离到源和消费模式中。分散的团队能够使用他们需要的数据,并且可以为其他团队提供他们的输出回到网格中。
要使这样的体系结构成功,数据产品必须是可发现的、可寻址的、可信任的、自我描述的、可互操作的、安全的,并由全局访问控制管理。这些特征是个人数据产品所有者的责任,并得到联邦治理和一个划分数据基础设施的平台的帮助。
数据仓库和数据湖仍然可以存在于这种体系结构中,但它们只是成为网格中的另一个节点,而不是集中的整体。如果团队仍然需要通过数据仓库和湖泊来完成最好的功能,那么他们应该可以自由地接受它。同样,采用微服务和多语言解决方案也有相关性。
Dehghani的QCon演示文稿《数据平台体系结构中的数据网格范式转换》将在接下来的几周内面世。她的文章,如何超越一个单一的数据湖到一个分布式数据网格,现在是可用的。她也将成为InfoQ播客的即将到来的嘉宾。