什么是数据网格-以及如何不将其网格化

更新:2023年1月.

问任何一个数据行业的人,最近什么是最热门的,“数据网格”很可能会排在第一位. 但什么是数据网格,为什么要构建一个? 好奇的人想知道答案.

在 自助式商业智能, 几乎每家公司都认为自己是一家数据优先的公司, 但并不是每个公司都在用它应得的民主化和可伸缩性来对待他们的数据架构.

例如,您的公司将数据视为创新的驱动力. 你的老板是业内最先看到潜力的人之一 雪花 和美人. 或者,你的首席数据官领导了一个跨职能的项目,向团队传授数据管理最佳实践,而你的首席技术官投资了一个数据工程团队. 最重要的是, 然而, 您的整个数据团队都希望有一种更简单的方法来管理组织不断增长的需求, 从处理没完没了的临时查询流,到通过中央ETL管道处理不同的数据源.

支持这种民主化和可伸缩性的愿望的是认识到您当前的数据架构(在许多情况下, 筒仓式数据仓库或 数据湖 一些有限的实时流媒体功能)可能无法满足您的需求.

幸运的是,寻找新数据的团队只需看看 一个数据网格这是一种正在业界掀起风暴的架构范式.

什么是数据网格?

就像软件工程团队从 微服务架构的单片应用在美国,数据网格在很多方面都是微服务的数据平台版本.

由Zhamak Dehghani于2019年首次定义, 他是ThoughtWorks的顾问,也是这个术语的最初设计者, a 数据网格 是否有一种数据平台体系结构通过利用面向领域的方法来拥抱企业中无处不在的数据, 自助设计. 借用埃里克·埃文斯的理论 领域驱动设计, 一个灵活的, 可伸缩的软件开发范式,将代码的结构和语言与相应的业务领域相匹配.

与处理消费的传统单片数据基础设施不同, 存储, 转换, 在一个中央数据湖中输出数据, 数据网格支持分布式, 领域特定的数据消费者和视图“数据即产品”,每个域处理自己的数据管道.

重要且有点争议的是,这意味着 根据传统的数据网格原理, 域团队拥有底层平台或数据存储层. 连接这些域及其相关数据资产的组织是一个通用互操作性层,该层应用相同的语法和数据标准. 这可能导致一些基础设施重复, 然而,一些团队采用了“数据网格”结构,平台团队拥有一个更集中的平台.

数据网格经常与类似的术语相混淆 数据结构 (显然,所有的数据类比都必须在石油或服装领域), 它是由弗雷斯特公司的一位分析师在千禧年初介绍的. 数据结构本质上是由虚拟管理层捆绑在一起的现代数据平台(或现代数据堆栈)组成的各种异构解决方案. 它不像数据网格那样强调去中心化和领域驱动架构.

而不是重新发明扎马克精心打造的车轮, 推荐一个正规滚球网站将把数据网格的定义归结为几个关键概念,并强调它与传统数据架构的区别.

下面是一个数据网格的例子:

数据网格架构图
A 数据网格体系结构图由三个独立的组件组成:数据源, 数据基础设施, 以及由功能所有者管理的面向领域的数据管道. 数据网格体系结构的底层是通用互操作性层, 反映领域不可知的标准, 以及可观察性和治理. (图片由可以玩滚球的正规app数据提供.)

(然而,如果你还没有读过,我强烈建议你阅读她的开创性文章, 如何从单片数据湖移动到分布式数据网格或者观看Max Schulte的科技演讲 为什么Zal而且o转型为数据网格. 你不会后悔的).

面向领域的数据所有者和管道

数据网格将域数据所有者之间的数据所有权联合起来,这些数据所有者负责将其数据作为产品提供, 同时还促进了不同位置的分布式数据之间的通信.

而数据基础设施负责为每个域提供处理它的解决方案, 域的任务是管理摄取, 清洁, 而且 聚合 到数据以生成可由商业智能应用程序使用的资产. 每个域都负责拥有自己的ETL管道, 而是应用于存储的所有域的一组功能, 目录, 并维护原始数据的访问控制. 一旦数据被提供给给定的域并由其转换, 然后,域所有者可以利用这些数据来满足他们的分析或运营需求. 数据沿袭 能否帮助数据领导者了解整个组织的消费模式,并帮助他们过渡到更分散的结构.

自助服务功能

数据网格利用面向领域设计的原则来提供一个自助式数据平台,允许用户抽象技术复杂性并专注于他们个人的数据用例.

正如Zhamak概述的那样, 面向领域设计的主要关注点之一是维护每个领域中的数据管道和基础设施所需的工作和技能的重复. 为了解决这个问题, 数据网格收集和提取与领域无关的数据基础设施功能到处理数据管道引擎的中央平台, 存储, 以及流媒体基础设施. 与此同时, 每个域负责利用这些组件来运行自定义ETL管道, 为他们提供必要的支持,以轻松地服务他们的数据,以及真正拥有流程所需的自主权.

通信的互操作性和标准化

在每个领域的基础上都有一组通用的数据标准,在必要时有助于促进领域之间的协作——通常也是如此. 不可避免的是,一些数据(包括原始数据和已清理的数据), 改变了, 服务的数据集)将对多个领域有价值. 启用跨域协作, 数据网格必须在格式上标准化, 治理, 可发现性, 和元数据字段, 在其他数据特性中. 此外, 很像一个单独的微服务, 每个数据域必须定义并同意sla和质量度量,它们将向其消费者“保证”.

为什么使用数据网格?

直到最近, 许多公司利用与无数商业智能平台连接的单一数据仓库. 这些解决方案是由一小群专家维护的,而且经常背负着沉重的技术债务.

今天, 当前的架构是具有实时数据可用性和流处理的数据湖, 以摄取为目标, 丰富, 转换, 并从一个集中的数据平台提供数据. 对于许多组织来说,这种类型的体系结构在以下几个方面存在不足:

  • 中央ETL管道使团队较少地控制不断增加的数据量
  • 因为每个公司都变成了数据公司, 不同的数据用例需要不同类型的转换, 把重物放在中央平台上

这样的数据湖会导致数据生产者断开连接, 缺乏耐心的数据消费者, 更糟糕的是, 积压的数据团队努力跟上业务需求的步伐. 而不是, 面向领域的数据架构, 比如数据网格, 为团队提供两全其美的服务:具有域(或业务领域)的集中式数据库(或分布式数据湖),负责处理自己的管道. 作为Zhamak 认为, 通过将数据架构分解成更小的部分,可以最容易地进行扩展, 面向领域的组件.

从单一数据湖转移到分布式数据网格

数据网格提供了一种解决方法 数据的湖泊 通过为数据所有者提供更大的自主权和灵活性, 促进更多的数据实验和创新,同时减轻数据团队的负担,通过单一管道满足每个数据消费者的需求.

与此同时, 数据网格的自助基础设施即平台为数据团队提供了一个通用的, 域无关, 并经常采用自动化的方法进行数据标准化, 数据产品谱系, 数据产品监控, 报警, 日志记录, 以及数据产品质量度量(换句话说, 资料收集及分享). 综上所述, 这些优点提供了与传统数据架构相比的竞争优势, 这往往是由于缺乏数据标准化之间的摄取和消费者.

筛还是不筛,这是个问题

处理大量数据源的团队需要对数据进行实验(换句话说, 以快速的速度转换数据)将是明智的考虑利用数据网格.

推荐一个正规滚球网站进行了一个简单的计算,以确定您的组织投资数据网格是否有意义. 请回答每个问题, 下面, 用一个数字,然后把它们加在一起,得到一个总数, 换句话说, 你的数据网格分数.

  • 数据源数量. 你的公司有多少个数据源?
  • 数据团队的规模. 你的数据团队中有多少数据分析师、数据工程师和产品经理(如果有的话)?
  • 数据域个数. 有多少职能团队(市场、销售、运营等).)依靠你的数据源来驱动决策, 你们公司有多少产品, 以及有多少数据驱动的功能正在构建? 加上总数.
  • 数据工程瓶颈. 数据工程团队成为新数据产品实施瓶颈的频率(1到10分)有多高, 1表示“从不”,10表示“总是” ?
  • 数据治理. 从1到10,您的组织的数据治理优先级是多少, 1表示“我不在乎”,10表示“这让我整晚都睡不着”?

数据网格评分

在一般情况下, 你的分数越高, 公司的数据基础设施需求就越复杂,要求就越高, 反过来, 您的组织就越有可能从数据网格中受益. 如果你的分数在10分以上,那么 实现一些数据网格 最佳实践可能对您的公司有意义. 如果你的分数在30分以上, 这样,您的组织就处于数据网格的最佳位置, 明智的做法是加入这场数据革命.

下面是如何分析你的分数:

  • 1–15:考虑到数据生态系统的规模和单维性,您可能不需要数据网格.
  • 15–30:您的组织正在迅速成熟, 甚至可能处在一个十字路口,在真正能够深入研究数据方面. 推荐一个正规滚球网站强烈建议结合一些数据网格最佳实践和概念,这样以后的迁移可能会更容易.
  • 30岁或以上:您的数据组织是您公司的创新驱动力, 数据网格将支持任何正在进行的或未来的计划,使数据民主化,并在整个企业范围内提供自助服务分析.

随着数据变得越来越普遍,数据消费者的需求也不断多样化, 推荐一个正规滚球网站预计,在员工超过300人的基于云计算的公司中,数据网格将变得越来越普遍.

数据可观察性和数据网格
图片由Meme Generator提供.网.

如何实现数据网格

数据网格与其说是一种进化,不如说是一种技术的彻底革新, 人, 以及整个数据团队的流程. 在如此宏大的范围内,可能很难知道从哪里开始.

推荐一个正规滚球网站向四位成功实施过数据网格的数据领导者询问了他们的建议. 完整的视频可以在上面看到,但总的来说,他们建议:

  • 选择正确的试点项目:首先与一个团队合作可以让您有机会学习如何实现数据网格的宝贵经验,随着时间的推移,当您在整个组织中采用该架构时,这些经验将是必不可少的. 对于试点项目,重点关注具有明确、可量化的业务价值的数据产品. 选择需求或价值不明确的数据产品是没有意义的. 然而,也不要太过雄心勃勃. 避免对关键财务报告进行全面检查的试点可能是个好主意.
  • 不要等待完美的平台: 设想一下如何实现数据网格,就像您在自己居住的房子里重新装修一样. 而不是拆除现有的结构,从头开始, 您希望逐个房间地更新数据架构, 突显出 金色的途径 供域团队跟踪.
  • 为自己定义自助服务:在组织中定义面向领域的体系结构和自助服务数据基础结构取决于您的业务需求.例如, 一个组织提供自助服务,帮助数据生产者通过Fivetran获取数据. 另一个是优先级最高,允许域控制谁可以访问数据,并简化了数据可视化标准. 
  • 定义独立发展的领域:通常, 将保留一些跨域或共享域数据,这些数据将继续集中管理, 通常在数据平台团队内部, 服务于跨越两个或多个领域的企业用例.  一旦你确定了这些域, 为领域团队配备相关的跨职能人才和领域专业知识,以独立发展
  • 专注于构建可信赖的数据产品:通常, 推荐一个正规滚球网站已经看到,数据组织更喜欢清晰的标准,而不是沉重的治理框架, 重点是可信赖和可发现的数据产品. 

不要忘记数据的可观察性

对于数据行业的许多人来说,使用数据网格架构的巨大潜力既令人兴奋又令人生畏. 事实上, 推荐一个正规滚球网站的一些客户担心,数据网格不可预见的自主性和民主化会带来与数据发现和健康相关的新风险, 以及数据管理.

考虑到数据网格的相对新奇性, 这是一个合理的担忧, 但我会鼓励有好奇心的人去阅读细则. 推荐一个正规滚球网站没有引入这些风险, 数据网格实际上要求数据具有可伸缩、自服务的可观察性.

事实上,域不能真正地 自己的 如果他们没有他们的数据 数据可观测性. 根据Zhamak的说法,任何好的数据网格固有的自助服务能力包括:

  • 静止和运动数据的加密
  • 数据产品版本管理
  • 数据产品模式
  • 数据产品发现、目录注册和发布
  • 数据治理和标准化
  • 数据生产沿袭
  • 数据产品监视、警报和日志记录
  • 数据产品质量度量

当包装在一起时, 这些功能和标准化提供了一个健壮的可观察性层. 数据网格范式还规定有一个标准化的, 为各个域提供可伸缩的方式来处理这些可观察的不同租户, 允许团队回答这些问题和更多问题:

  • 我的数据是否新鲜?
  • 我的数据坏了吗?
  • 如何跟踪模式更改?
  • 我的管道的上游和下游依赖关系是什么?

如果你能回答这些问题, 您可以放心,您的数据是完全可观察的-并且可以信任.

数据网格的(近期)未来

数据网格创建者Zhamak Dehghani在领英发布了下一个数据.

数据网格创建者Zhamak Dehghani刚刚掀起了数据世界的热潮 她的声明 她期待已久的创业 nextdata, 旨在增强数据开发人员的能力, 用户和所有者的愉快体验,其中数据产品是一流的原始, 内置信任.”

数据网格仍然很热门,推荐一个正规滚球网站的首席执行官Barr预测它将是其中之一 2023年十大最热门的数据工程趋势. 看看团队如何平衡实现完全去中心化的数据网格和仍然包含某种数据的架构,这将是很有趣的 卓越中心.

有兴趣了解更多关于数据网格的知识? 除了扎马克和麦克斯的资源, 看看推荐一个正规滚球网站最喜欢的关于这个数据工程新星的文章:

您的公司正在构建数据网格吗? 接触 巴尔摩西和Lior Gavish 用你的经验,技巧和痛点. 推荐一个正规滚球网站很乐意听到你的消息! 或者预约时间在下方与推荐一个正规滚球网站对话.

对“什么是数据网格-以及如何不将其网格化”的8个回答

  1. 肖恩·戈登 说:

    我读关于数据网的书已经快一年了,就我所知, 这是一种哲学, 不是一种产品或任何技术. Starburst正在采用这个术语来指代他们的数据连接器生态系统. 数据湖似乎真的解决了描述中提出的问题, 但我也认为,问题的核心是你描述的是一个管理非常糟糕的组织,没有好的领导力来定义道路,允许每个人做自己的事情,现在他们有一大堆垃圾需要修复. 我认为数据网格哲学是需要修正的糟糕设计的创可贴. 在我看来,告诉数据团队他们需要将数据存储更改为“发布/订阅”类型的架构并不能解决任何问题. 围绕这个概念重组所有东西所需的工作量远远大于解决潜在问题.

  2. Jaspreet 说:

    总结一下我的理解

    -数据网格是通过使用数据产品(数据集市)的数据基础设施对不同数据源进行分散管理 , Microservices API , 流数据等)拥有和管理由不同的域所有者使用数据管道.

    -这有助于跨组织的不同域之间的数据共享更加可行,还增加了随着业务域的变化而更改数据网格的灵活性,同时提供了可扩展的添加/删除域的功能,以及通过修改底层数据基础设施来实现更快的处理的技术增强

    如果我的理解不正确,请随意添加remove

  3. 将知更鸟 说:

    Jaspreet,没错! 通过将数据管理分散到不同的领域团队, 你可以更好地利用他们的领域知识, 专业知识, 以及敏捷性,为业务提供更快、更有意义的见解.

  4. Vamshi 说:

    在数据网格概念中,谁拥有底层平台/存储层的责任? 由域团队或常规数据平台团队拥有好吗?

    • 迈克尔Segner 说:

      根据传统的数据网格原则,领域团队拥有底层平台/存储层(这可能导致一些重复), 然而,有许多团队已经采用了“数据网格”结构,平台团队拥有一个更集中的平台。.

  5. 马克斯·马文 说:

    我认为数据领域与数据主题领域几乎相同. e.g. 客户、销售、产品等.. 那么,为什么不把构建数据管道的责任从一个集中的团队交给不同的主题领域的所有者呢? 对于已经在DW或数据湖上进行了大量投资并花费了数年时间构建的组织来说,这不是更便宜的选择吗.

  6. ForHave 说:

    我不确定数据网格是什么,但我也不确定我想要一个.

    • 你可以像考虑应用的微服务一样考虑数据的数据网格. 这样做的目的是避免在数据处理管道中失去速度时形成的单一数据沼泽,因为您只有一个COE(卓越中心)试图支持跨多个业务单元的交付. 数据网格是一个术语,用于将这个单一的数据湖分解为几个更小的湖,这些湖可以通过称为数据产品的质量控制接口访问彼此的数据. 如果您的公司太小,目前还没有遇到这个问题, 那么数据网格绝对不适合你. 如果你感受过痛苦, 要么作为IT组织末端的业务用户,无法支持您的需求, 或者是那些可怜的IT人员拼命工作,为更多的BU服务,却因为熬夜而得不到爱, 那么数据网格可能是值得考虑的.

留下回复

你的电邮地址将不会公布. 必填字段已标记 *