数据网格将替代数据仓库或数据湖?- thenewstack


数据网格由Thoughtworks的技术顾问 Zhamak Dehghani 于一年多前开发的,旨在纠正她认为当今商业世界中数据生成和消费方式的主要缺陷:它从DDD领域驱动设计(用于开发微服务)、DevOps(自动化和自助服务基础设施)或可观察性(日志记录和治理)中汲取灵感,并将其应用于数据世界。
数据网格是对重要原则的一种表述,一旦遵循这些原则,就会从根本上改变组织生产、使用和分发数据的方式。从广义上讲,它是一种战略和战术结构,用于通过缩小每个业务领域的运营和分析平面之间的差距,重新调整数据的产生方式和消费方式,来设计更可靠的数据平台。
 
传统Hadoop等数据仓库或数据湖问题
现在,数据几乎在一个组织的每一个点上都在不断产生。这导致了广泛的事件流处理(ESP),即对一系列数据点采取行动的做法,这些数据点来自一个从未停止生成数据的系统。
"事件 "指的是系统中的每个数据点,而 "流 "指的是这些事件的持续交付。

  • 事件包括组织中发生的与业务有关的事情,如用户注册、销售、库存变化或员工更新。然后,这些事件被按顺序组织成一个流,用于促进持续交付;
  • 事件流随着新数据的出现而更新,其数据可以由任何业务来源产生--销售、流媒体视频和音频以及文本数据。

在许多组织中,来自所有这些不同系统的稳定的数据流被倒入数据湖,一个以其自然/原始格式存储的信息库,或数据仓库,它结合并存储来自不同来源的数据。在那里,一个数据分析师团队对信息进行清理,使其可以被不同的人和许多其他不同的背景所使用。
一个典型的数据仓库有许多来源,分布在一个公司,具有不同的质量水平。会有许多ETL(提取、转换、加载)工作在不同的系统中运行,并将数据集拉回中央仓库。分析团队清理和修复大量的数据。提取和加载占据了剩下的时间。
数据仓库模型是一个被设计成可扩展、可靠和持久的系统,但它充满了麻烦。
我们已经尝试使用 Apache Hadoop 等解决方案来应对这种快速增长的数据量的范围。
但不幸的是,我们这些数据领域的人非常熟悉一致、稳定和定义明确的数据的稀缺性。这通常表现为分析报告中的差异:例如,分析报告发生了 1,100 次产品参与,但向客户收取了 1,123 次参与的费用。运营系统和分析系统并不总是一致,这在很大程度上是由于从多个不同来源获取数据。
简而言之,数据仓库或数据湖战略已经变得容易出错且不可持续。它导致数据生产者脱节,数据消费者缺乏耐心,数据团队不堪重负,难以跟上步伐。
 
数据网格系统
数据网格旨在制作组织中重要业务数据的优质产品。它很简单。数据网格将提供干净、可用和可靠数据的责任放在生成、使用和存储数据的工作人员身上,而不是集中在分析团队身上。它将clean整理数据的责任放在最接近数据的人身上。 
在这种去中心化的方法中,多方共同努力以确保出色的数据。拥有数据的各方必须是数据的好管家,并与他人沟通以确保满足他们的数据需求。
数据不再被视为应用程序的副产品,而是被设想为定义良好的数据产品。
将数据网格视为数据仓库的对立面:把数据当成产品本身,而不是产品的副产品。
数据产品是分布在您公司周围的格式良好的数据源,每个产品本身都被视为一流的产品,并具有专门的所有权、生命周期管理和服务水平协议。我们的想法是精心制作、策划并将这些作为产品呈现给组织的其他成员,供其他团队使用,从而为在整个组织中共享数据提供可靠和值得信赖的来源。
事件流是支持绝大多数数据产品的最佳解决方案。它们是一种可扩展、可靠且持久的存储和通信重要业务数据的方式,并弥合了分析和运营处理之间越来越模糊的差距。他们让消费者控制该数据的不断更新的只读副本,以便按照他们认为合适的方式处理、改造、存储和更新(想想微服务)。
云存储和计算产品的普及使得这很容易适应;分析消费者可以在云对象存储中接收数据以进行大规模并行处理,而运维用户可以直接使用数据,在运维警报事件发生时对其进行操作。