【数据架构】分布式数据网格作为集中式数据单体的解决方案

2024-02-14 10:30

本文主要是介绍【数据架构】分布式数据网格作为集中式数据单体的解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

企业数据架构师不应构建大型集中式数据平台,而应创建分布式数据网格。 ThoughtWorks 的首席技术顾问 Zhamak Dehghani 在旧金山 QCon 的演讲和相关文章中表示,这种方法的改变需要范式转变。随着数据变得越来越普遍,传统的数据仓库和数据湖架构变得不堪重负,无法有效扩展。Dehghani 认为,分布式数据网格方法可以通过采用面向领域的数据所有权来克服这些固有的低效率。

“我建议下一个企业数据平台架构是分布式域驱动架构、自助平台设计和数据产品思维的融合。”

她的演讲包括一些现实世界的例子,但主要集中在新的管理原则上,伴随着新的语言来支持这种心态。例如,服务过度摄取,发现和使用过度提取和加载。

Dehghani 看到了传统数据平台架构中的三种故障模式。首先,它们是中心化的、单一的;将所有类型的数据放在一起可能适用于小型组织,但对于拥有大量数据源和不同数据消费者的企业最终会失败。

其次,是 Dehghani 描述为“耦合管道分解”的问题。几代架构师已经将数据平台架构分解为“数据处理步骤的管道”。这些管道步骤与变化轴正交,新功能需要对所有步骤进行更新。

孤立和超专业的所有权是最终的失败模式。集中式架构自然会创建提供数据的数据源团队和检索处理数据的消费者团队的类别。中间是数据和机器学习专家。虽然两个外部小组是面向领域的,但中央团队必须与领域无关。

86de3e826b6c5b0edc913d3f50613757.png

Dehghani 将这些挑战与 N 层单体的挑战进行了比较,其中新的客户需求需要修改所有层。微服务更好地与变化的元素保持一致,但需要不同的设计方法。成功实施数据网格架构需要类似的、戏剧性的思维转变。

“为了分散整体数据平台,我们需要扭转我们对数据、数据的位置和所有权的看法。域不需要将数据从域流到集中拥有的数据湖或平台,而是需要托管和服务其域数据集以一种易于消费的方式。”

所设想的架构侧重于将域数据产品作为一流的组件,每个组件都由了解该域的团队拥有相应的所有权。单一的、僵化的数据管道不再是主要的设计关注点,数据也没有明确地划分为源和消费模式。分散的团队能够使用他们需要的数据,并且可以将他们的输出提供回网格中以供其他团队使用。

要使这样的架构成功,数据产品必须是可发现的、可寻址的、可信赖的、自描述的、可互操作的、安全的,并受全局访问控制的约束。这些特征是各个数据产品所有者的责任,并得到联合治理和提供数据基础设施的平台的帮助。

efe69afe6fcaac15dfb5b021b6f1d3a6.png

  • Image Credit: Zhamak Dehghani

数据仓库和数据湖仍然可以存在于这种架构中,但它们只是网格中的另一个节点,而不是一个集中的单体。 如果团队仍然需要由数据仓库和湖泊来完成的功能,那么他们应该可以自由地接受它。同样,微服务和多语言解决方案的采用也存在相关性。

Dehghani 的 QCon 演示文稿“数据平台架构中的数据网格范式转变”将在未来几周内发布。她的文章《如何从单一数据湖迁移到分布式数据网格》现已发布。她还将成为 InfoQ 播客的嘉宾。

本文https://jiagoushi.pro/distributed-data-mesh-solution-centralized-data-monoliths
讨论:知识星球【首席架构师圈】或者加微信小号【cea_csa_cto】或者加QQ群【792862318】
公众号

【jiagoushipro】
【超级架构师】
精彩图文详解架构方法论,架构实践,技术原理,技术趋势。
我们在等你,赶快扫描关注吧。
f02fbf48cb2b9a57e00a89c33684fac8.png
微信小号

【cea_csa_cto】
50000人社区,讨论:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化.

3d91c8088e143dc8bdf6e3c881a2ba3a.png

QQ群

【792862318】深度交流企业架构,业务架构,应用架构,数据架构,技术架构,集成架构,安全架构。以及大数据,云计算,物联网,人工智能等各种新兴技术。
加QQ群,有珍贵的报告和干货资料分享。

6d60e978b68417791f96e0cd09c77461.png

视频号【超级架构师】
1分钟快速了解架构相关的基本概念,模型,方法,经验。
每天1分钟,架构心中熟。

a9f6dc90f1a71b869aa0c9a1f340ec7d.png

知识星球向大咖提问,近距离接触,或者获得私密资料分享。

3f86a595dcfafadbb534eaf92d3d1c98.png

喜马拉雅路上或者车上了解最新黑科技资讯,架构心得。【智能时刻,架构君和你聊黑科技】
知识星球认识更多朋友,职场和技术闲聊。知识星球【职场和技术】
微博【智能时刻】智能时刻
哔哩哔哩【超级架构师】

6a8228c90e1326b4dd78cae12e30043d.png

抖音【cea_cio】超级架构师

e0e65d57ed0724add64263900519fe7e.png

快手【cea_cio_cto】超级架构师

ca70f693efa2ccdf11b1ac3c9bc2e975.png

小红书【cea_csa_cto】超级架构师

bb8b6ae69dc12330676c82aed5165b7d.png




谢谢大家关注,转发,点赞和点在看。

这篇关于【数据架构】分布式数据网格作为集中式数据单体的解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/708254

相关文章

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

C#文件复制异常:"未能找到文件"的解决方案与预防措施

《C#文件复制异常:未能找到文件的解决方案与预防措施》在C#开发中,文件操作是基础中的基础,但有时最基础的File.Copy()方法也会抛出令人困惑的异常,当targetFilePath设置为D:2... 目录一个看似简单的文件操作问题问题重现与错误分析错误代码示例错误信息根本原因分析全面解决方案1. 确保

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

Redis实现分布式锁全过程

《Redis实现分布式锁全过程》文章介绍Redis实现分布式锁的方法,包括使用SETNX和EXPIRE命令确保互斥性与防死锁,Redisson客户端提供的便捷接口,以及Redlock算法通过多节点共识... 目录Redis实现分布式锁1. 分布式锁的基本原理2. 使用 Redis 实现分布式锁2.1 获取锁

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I

SpringBoot3匹配Mybatis3的错误与解决方案

《SpringBoot3匹配Mybatis3的错误与解决方案》文章指出SpringBoot3与MyBatis3兼容性问题,因未更新MyBatis-Plus依赖至SpringBoot3专用坐标,导致类冲... 目录SpringBoot3匹配MyBATis3的错误与解决mybatis在SpringBoot3如果

Java整合Protocol Buffers实现高效数据序列化实践

《Java整合ProtocolBuffers实现高效数据序列化实践》ProtocolBuffers是Google开发的一种语言中立、平台中立、可扩展的结构化数据序列化机制,类似于XML但更小、更快... 目录一、Protocol Buffers简介1.1 什么是Protocol Buffers1.2 Pro