阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

面向现代数据基础设施的新兴架构

Matt Bornstein, Jennifer Li, Martin Casado

  • 2022-11-08
    北京
  • 本文字数:5285 字

    阅读完需:约 17 分钟

面向现代数据基础设施的新兴架构

自从我们在 2020 年底发布了一套参考架构以来,数据基础设施行业的增长势头有增无减。在过去的一年里,几乎所有的关键行业指标都创下了历史新高,新的产品类别出现的速度超过了大多数数据团队可以合理跟踪的速度。甚至连基准战争和广告牌之争也卷土重来。


为了帮助数据团队紧跟行业内发生的变化,我们在这篇文章中发布了一套最新的数据基础设施。它们展示了当前分析和运营系统的最佳栈,这是我们在过去一年中从众多运营商那里收集的。每个架构蓝图都包括自上一版本以来的变化摘要。


我们也会尝试解释为什么会发生这些变化。我们认为,核心数据处理系统在过去一年中保持了相对稳定,而支持工具和应用程序则迅速激增。我们探讨的假设是,平台开始在数据生态系统中显现,这有助于解释我们在数据栈的演变中看到的特殊模式。


更新的参考架构


在我们深入了解细节之前,先看看下面的最新架构图。这些图是在领先的数据从业者的帮助下绘制的,基于他们在内部运行的内容和他们对新部署提出的建议。


第一个视图展示了所有数据基础设施用例的统一概述:



注:不包括 OLTP、日志分析和 SaaS 分析应用程序。



第二个视图放大了机器学习,它是一个复杂的、越来越独立的工具链。




在本文的其余部分中,我们将讨论自数据栈第一版以来发生了哪些变化,并探讨潜在的根本原因。


改   变


未改变的是:核心的稳定


尽管在过去的一年里,数据基础设施的活动非常狂热,但令人惊讶的是——在某些方面——变化如此之小。



在我们的第一篇文章中,我们区分了支持数据驱动决策的分析系统和支持数据驱动产品的运营系统。然后,我们将这些类别映射到三种模式或蓝图,通常由领先的数据团队实施。


其中一个关键问题是这些架构模式是否会趋同。但一年过去了,似乎并没有发生这种情况。


特别是,分析和运营生态系统都继续蓬勃发展。像 Snowflake 这样的云数据仓库发展迅速,主要集中在 SQL 用户和商业智能用例。但其他技术的采用也在加速,例如,像 Databricks 这样的数据仓库,正在比以往更快地增加客户。我们采访的许多数据团队证实,异构性很可能在数据栈中继续存在。


其他核心数据系统——即摄取和转换——已被证明是类似的持久性。这在现代商业智能模式中尤其明显,其中 Fivetran 和 DBT(或类似技术)的结合已经变得几乎无处不在。但这在某种程度上,运营系统也是如此,在那里出现了 Databricks/Spark、Confluent/Kafka 和 Astronomer/Airflow 等事实标准。


新的内容:寒武纪大爆发


在过去一年里,围绕着稳定的核心,数据栈得到了迅速的发展。概括地说,我们在两个领域看到了最多的活动:


  • 旨在支持关键数据流程和工作流的新工具,如数据发现、可观察性或机器学习模型审计。

  • 新的应用程序,允许数据团队和业务用户以新的、更强大的方式从数据中产生价值,如数据工作区、反向 ETL 和机器学习应用框架。


我们还看到了一些新技术的引入,这些技术旨在增强核心数据处理系统。值得注意的是,围绕分析生态系统中的度量层和操作系统的湖仓一体(Lakehouse)模式,人们一直在进行激烈的争论,这两者都在向有用的定义和体系结构靠拢。


更新的蓝图


蓝图 1:现代商业智能


适用于各种规模公司的云原生商业智能



注:自 2020 年架构的第一版以来,深色框表示新的或者有意义的改变;浅色框表示基本上保持不变。灰色框被认为与这个蓝图不太相关。


未改变的是:


  • 数据复制(如 Fivetran)、云数据仓库(如 Snowflake)和基于 SQL 的数据建模(使用 dbt)的组合继续构成这种模式的核心。对这些技术的采用已经有了显著的增长,促进了新竞争对手(如 Airbyte 和 Firebolt)的融资和早期成长。

  • 仪表板仍然是输出层中最常用的应用程序,包括 Looker、 Tableau、 PowerBI 和 Superset 等新进入者。


新的内容:


  • 度量层(一个在数据仓库之上提供标准定义集的系统)引起了人们的极大兴趣。这已经引起了激烈的争论,包括它应该具有什么功能,哪些供应商应该拥有它,以及它应该遵循什么规范。到目前为止,我们已经看到了几个可靠的纯产品(如 Transform 和 Supergram),并通过 dbt 扩展到这一类别。

  • 反向 ETL 供应商的增长意义重大,特别是 Hightouch 和 Census。这些产品的目的是更新运营系统,如客户关系管理(CRM)或企业资源规划(ERP),使用从数据仓库中获得的输出和见解。

  • 数据团队对新的应用程序表现出更强的兴趣,以增强他们的标准仪表板,特别是数据工作区(如 Hex)。广义而言,新的应用程序可能是云数据仓库日益标准化的结果——一旦数据结构清晰且易于访问,数据团队自然希望利用它做更多的事情。

  • 数据发现和可观测性公司激增并筹集了大量资金(特别是 Monte Carlo 和 Bigeye)。虽然这些产品的好处是显而易见的——即更可靠的数据管道和更好的协作——但由于客户发现了相关的用例和预算,采用这些产品仍然相对较早。(技术说明:虽然在数据发现方面有几家可靠的新供应商——例如 Select Star、 Metaphor、 Stemma、 Secoda 和 Castor ——但我们一般都将处于种子阶段的公司排除在图表之外。)


蓝图 2:多模态数据处理


不断发展的数据湖支持分析和操作用例,也称为 Hadoop 难民的现代基础设施



注 :自 2020 年架构的第一版以来,深色框表示新的或者有意义的改变;浅色框表示基本上保持不变。灰色框被认为与这个蓝图不太相关。


未改变的是:


  • 数据处理(如 Databricks、Starburst 和 Dremio)、传输(如 Confluent 和 Airflow)和存储(AWS)方面的核心系统继续快速增长,并构成了该蓝图的主干。

  • 多模态数据处理在设计上仍保持多样性,允许公司在分析和运营数据应用程序中采用最适合其特定需求的系统。


新的内容:


  • 人们对湖仓一体架构的认识越来越清晰。我们已经看到这种方法得到了众多供应商(包括 AWS、Databricks、谷歌云、Starburst 和 Dremio)和数据仓库先驱者的支持。湖仓一体的基本价值是将健壮的存储层与一系列健壮的数据处理引擎(如 Spark、Presto、Druid/Clickhouse、Python 库等)配对。

  • 存储层本身正在得到升级。虽然像 Delta、Iceberg 和 Hudi 这样的技术并不新鲜,但它们正被加速采用,并被构建到商业产品中。其中一些技术(特别是 Iceberg)也与云数据仓库(如 Snowflake)进行了互操作。如果异构性继续存在,这可能会成为多模态数据栈的一个关键部分。

  • 流处理(即实时分析数据处理)的采用可能会增加。虽然像 Flink 这样的第一代技术仍未成为主流,但具有更简单编程模型的新加入者(如 Materialize 和 Upsolver)正在获得早期采用,而且,据说现有的 Databricks 和 Confluent 公司的流处理产品的使用也开始加速。


蓝图 3:人工智能和机器学习


用于机器学习开发、测试、模型运行的堆栈



注:自 2020 年架构的第一版以来,深色框表示新的或者有意义的改变;浅色框表示基本上保持不变。灰色框被认为与这个蓝图不太相关。


未改变的是:


  • 与 2020 年相比,今天的模型开发工具大体相似,包括主要的云供应商(如 Databricks 和 AWS),机器学习框架(如 XGBoost 和 PyTorch),以及实验管理工具(如 Weights & Biases 和 Comet)。

  • 实验管理已经有效地将模型可视化和调整作为独立的类别。

  • 建立和操作一个机器学习栈是复杂的,需要专门的知识。这个蓝图不适合胆小的人——而且对于许多数据团队来说,人工智能的生产仍然具有挑战性。


新的是什么:


  • 机器学习行业正在以数据为中心的方法进行整合,强调复杂的数据管理而不是增量的建模改进。这有几个方面的影响:

  • 数据标签的快速增长(如 Scale 和 Labelbox)和对闭环数据引擎的兴趣不断增加,这在很大程度上是模仿特斯拉的 Autopilot 数据管道。

  • 对于批处理和实时用例,更多地采用特性存储(例如 Tecton),作为以协作方式开发生产级机器学习数据的一种手段。

  • 低代码机器学习解决方案(如 Continual 和 MindsDB)重新引起了人们的兴趣,这些解决方案至少部分地自动化了机器学习建模过程。这些新的解决方案侧重于将新用户(即分析师和软件开发人员)引入机器学习市场。

  • 使用预训练模型正在成为默认,特别是在自然语言处理中,并为 OpenAI 和 Hugging Face 等公司提供了支持。这里仍有围绕微调、成本和扩展的有意义的问题需要解决。

  • 机器学习的运营工具(有时被称为 MLops)正变得越来越成熟,围绕机器学习监控构建,成为最需要的用例和即时预算。与此同时,一系列新的运营工具正在出现,其中尤其包括验证和审计,最终市场仍有待确定。

  • 人们越来越关注开发者如何将机器学习模型无缝集成到应用程序中,包括通过预构建的 API(如 OpenAI)、矢量数据库(如 Pinecone)和更多的意见框架。


数据平台假说


总结一下:在过去的一年中,数据基础设施栈在核心系统中表现出了极大的稳定性,并且支持工具和应用程序的快速增长。为了帮助解释为什么会发生这种情况,我们在这里介绍数据平台的概念。


什么是平台?


“平台”这个词在数据生态系统中被过度使用,通常被内部团队用来描述他们的整个技术栈,或者被供应商用来销售松散连接的产品套件。


在更广泛的软件领域,平台是其他开发者可以在上面构建的东西。平台本身提供的价值通常是有限的——例如,大多数用户对访问 Windows 或 iOS 的内部结构没有兴趣。但它们提供了一系列的好处,如通用的编程接口和庞大的安装基础,使开发者能够构建和发布用户最终关心的应用程序。


从行业的角度来看,平台的决定性特征是有影响力的平台供应商和大量第三方开发者之间在技术上和经济上的相互依赖。



什么是数据平台?


从历史上看,数据堆栈显然不适合平台的定义。例如,ETL、数据仓库和报告供应商之间存在着相互依赖,但集成模型倾向于一对一,而不是一对多,并且得到专业服务的大量补充。


根据我们采访的一些数据专家的说法,这种情况可能会开始改变。


平台假说认为,数据堆栈的“后端”——大致定义为数据摄取、存储、处理和转换——已经开始围绕一组相对较小的基于云的供应商进行整合。因此,客户数据被收集在一套标准的系统中,而且供应商正在大力投资,使这些数据容易被其他开发者访问——作为 Databricks 等系统的基本设计原则,以及通过 SQL 标准和 Snowflake 等系统的定制计算 API。


反过来,“前端”开发人员已经利用这种单点集成的优势,构建了一系列新的应用程序。他们依靠数据仓库 / 湖仓一体的干净、连接的数据,而不担心它是如何到达那里的基本细节。一个客户可以在一个核心数据系统的基础上购买和构建许多应用程序。我们甚至开始看到传统的企业系统,如财务或产品分析,正在以“仓库原生”的架构进行重建。


图片可能看起来是这样的:



要明确的是,这并不意味着 OLTP 数据库或其他重要的后端技术将在不久的将来消失。但与 OLAP 系统的原生集成可能会成为应用程序开发的一个重要组成部分。而随着时间的推移,越来越多的业务逻辑和应用功能可能会过渡到这种模式。我们可能会看到一大类新产品建立在这个数据平台上。


数据应用的出现?


数据平台假说仍有很大争议。然而,我们看到复杂的垂直 SaaS 解决方案作为水平层在数据平台之上实施的情况正在增加。因此,虽然是早期,我们认为在数据堆栈中发生的变化至少与平台的想法是一致的。


有很多原因,例如,像 Snowflake 和 Databricks 这样的公司已经成为数据栈的稳定部分,包括伟大的产品,有能力的销售团队和低摩擦的部署模式。但也有一种情况是,他们的黏性被平台的动力所加强——一旦客户用这些系统之一建立和 / 或整合了一系列的数据应用,通常就没有意义了。


对于近年来新的数据基础设施产品的激增,我们也可以提出类似的论点。对这一趋势的典型解释是,大量的数据、不断增加的企业预算和大量的风险投资资金。但这些事情可以说几十年来都是真的。我们现在看到这么多新产品出现的原因可能与平台有关——也就是说,让一个新的数据应用被采用从来没有这么容易,而适当地维护平台也从来没有这么重要。


最后,平台假说在竞争态势方面提供了一些预测能力。在规模上,平台可能是非常有价值的。今天,核心数据系统供应商可能正在积极竞争,不仅仅是为了当前的预算,而是为了长期的平台地位。如果你相信数据摄取和转换公司是新兴数据平台的核心部分,那么这些公司令人瞠目结舌的估值——或者对新类别如度量层或反向 ETL 的激烈争论——也会更有意义。


展望未来


我们仍然处于定义分析和运营数据平台的早期阶段,而且平台的各个部分都在不断变化。因此,作为一个类比,它可能比作为一个严格的定义更有用。但它可能是一个有用的工具,可以从噪音中过滤信号,并帮助培养对市场发展方式的认识。数据团队现在拥有更多的工具、资源和组织动力,比数据库发明以来的任何时候(可能)都多。我们非常期待看到应用层在新兴平台之上的发展。


作者简介:


  • Matt Bornstein,a16z 的负责人,专注于企业公司。此前,Matt 创立了几家小公司,并为 Blumberg Capital、 LinkedIn 和 Monitor Group 工作。

  • Jennifer Li,a16z 的合伙人,专注于企业公司。在加入该公司之前,她曾在 AppDynamics 和 Solvvy 担任产品经理。

  • Martin Casado,a16z 的普通合伙人,他投资于企业公司。此前,他是 Nicira(被 VMware 收购)的共同创始人和 CTO,也是软件定义网络运动的创始人。


原文链接:


https://future.com/emerging-architectures-modern-data-infrastructure


声明:本文为 InfoQ 翻译,未经许可禁止转载。


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2022-11-08 12:435235

评论 2 条评论

发布
用户头像
应该是Supergrain

Supergram

2022-11-10 14:07 · 江苏
回复
用户头像
配图太糊了,看不清
2022-11-09 14:37 · 江苏
回复
没有更多了
发现更多内容

.NET6新东西--Lambda优化

喵叔

11月日更

Go 的 Panics 处理

baiyutang

golang 11月日更

Prometheus 都可以采集那些指标?-- 常用 Exporter 合集

耳东@Erdong

内容合集

Android C++系列:Linux文件系统(二)

轻口味

c++ android jni 11月日更

共建全栈国产化解决方案 | OceanBase持续与合作伙伴推进测试互认

OceanBase 数据库

数据库 分布式 双十一 oceanbase

惨遭GitHub直接封杀的阿里P8手敲出来这份565页凤凰架构分布式手册,有何神奇之处

热爱java的分享家

Java 面试 程序人生 编程语言 凤凰架构

FFmpeg[5] - 将视频文件转码成MP4格式(FFmpeg转封装2)

liuzhen007

11月日更

参与tdengine开源的方式

williamcai

fork git 学习

dart系列之:dart中的异步编程

程序那些事

flutter dart 程序那些事 11月日更

【Three.js】随着元宇宙开启WEB3D之路

devpoint

JavaScript WebGL 3D three.js 11月日更

【Flutter 专题】03 图解第一个程序 Hello World!

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

[Pulsar] ChunkMessageID介绍及其原理

Zike Yang

Apache Pulsar 11月日更

🍃【Spring专题】「实战系列」重新回顾一下异常重试框架Spring Retry的功能指南

洛神灬殇

spring 11月日更 Spring retry Guava retry

Prometheus Exporter (三)容器信息监控

耳东@Erdong

container Prometheus exporter 11月日更 cAdvisor

双11“剁手”后,你的包裹收到了吗?

OceanBase 数据库

数据库 开源 分布式 oceanbase

给面试官上一课:HTTPS是先进行TCP三次握手,再进行TLS四次握手

热爱java的分享家

Java 架构 程序人生 编程语言 经验分享

“敏捷版”全链路压测

阿里巴巴云原生

阿里云 云原生 全链路压测 PTS

深入浅出,一文吃透mysql索引

微客鸟窝

MySQL 11月日更

千万级学生管理系统的考试试卷存储方案设计

Beyond Ryan

阿里大规模业务混部下的全链路资源隔离技术演进

阿里巴巴云原生

阿里云 云原生 资源隔离 ACK 混部

两个排序数组的中位数,“最”有技术含量的解法!

老表

Python 算法 LeetCode 11月日更

前端开发:VS Code编辑器新建Vue文件自定义模板的方法

三掌柜

11月日更

推动数字化转型,OceanBase 助力保险企业创造新价值

OceanBase 数据库

数据库 开源 技术宅 oceanbase 分布式,

家庭太阳能发电,何时能告别“两极分化”?

脑极体

MySQL事务的实现原理之Undo Log的分析

卢卡多多

Undo Log 11月日更

【死磕Java并发】-----Java内存模型之总结

chenssy

11月日更 死磕 Java 死磕 Java 并发

第三代分布式数据库来了,真香!

OceanBase 数据库

数据库 开源 分布式 oceanbase

我理解的CPI和PPI

石云升

学习笔记 11月日更

黑客常备20个工具,你知道几个?

喀拉峻

Python Qt GUI设计:QLabel标签类(基础篇—11)

不脱发的程序猿

Python PyQt GUI设计 QLabel标签类

度小满启动“小微加油站”,让低息服务可持续

脑极体

面向现代数据基础设施的新兴架构_大数据_InfoQ精选文章