数据网格:下一代企业数据平台架构 - martinfowler.com


下一代企业数据平台是使用分布式数据网格包含无处不在的数据!是分布式领域驱动架构,自助平台设计和产品思维与数据的融合。

面向领域的数据分解和所有权​​​​​​​
Eric Evans的书“ 领域驱动设计”深刻地影响了现代架构思维,从而影响了组织建模。它通过将系统分解为围绕业务领域功能的方式构建分布式服务来影响微服务架构。它从根本上改变了团队的形成方式,因此团队可以独立自主地拥有领域功能。
虽然我们在实施运营能力时采用了面向领域的分解和所有权分离,但奇怪的是,在数据方面我们忽略了业务领域的概念。

DDD在数据平台架构中最接近的应用是:它的溯源操作系统EventSourcing发出其业务领域事件,这是为了集成单体数据平台,但是,除了摄取集成之外,领域的概念和不同团队对域数据的所有权也会丢失。

Domain Bounded Context是设计数据集所有权的一个非常强大的工具。Ben Stopford的Data Dichotomy 文章解开了通过流共享域数据集的概念。

为了分散单片数据平台,我们需要反转我们对数据,地点和所有权的看法。过去是从领域流进入私有的数据湖或平台,现在是领域以一种更容易的使用方式服务自己的领域数据集(微服务)。

面向源的域数据
业务事实最好呈现为业务 域事件,可以存储并作为时间戳事件的分布式日志提供给任何授权的消费者访问。
除了定时事件之外,源数据域还应提供源域数据集的易于消费的历史快照,这些快照在一个时间间隔内聚合,该时间间隔紧密反映其域的更改间隔。

源数据集是最基础的数据集,并且变化较少,因为业务事实不会经常更改。这些域数据集预计将被永久捕获并可用,因此,随着组织发展其数据驱动情报服务,他们可以始终回到业务事实,并创建新的聚合或预测。

面向消费者和共享域数据
消费者域数据集和拥有它们的团队旨在满足密切相关的用例组。例如,“社交推荐域”专注于基于用户彼此的社交关系提供推荐,创建符合此特定需求的域数据集; 也许是通过“用户社交网络的图形表示”。虽然此图表数据集对推荐用例很有用,但它对于“侦听器通知”域也很有用,该域提供有关发送给侦听器的不同类型通知的数据,包括其社交网络中的人正在收听的内容。因此,“用户社交网络”有可能成为多个消费者使用的共享和新实现的域数据集。“用户社交网络”域名团队专注于提供“用户社交网络”的始终策划和最新视图。

面向消费者的数据集与源数据集相比具有不同的性质。它们在结构上经历了更多的更改,并且它们将源域事件转换为适合特定访问模型的聚合视图和结构。

​​​​​​​点击标题见原文