原创 Ace人生 2025-02-14 17:17 浙江
数据工程开源生态全景图。
题记
作为一线数据工程师,我一直在追踪数据工程领域的最新发展。最近,我读到了一篇深度解析2025年开源数据工程趋势的文章,收获颇丰。
https://www.pracdata.io/p/open-source-data-engineering-landscape-2025
这篇文章的作者是一位资深数据工程专家,他不仅对2025年的数据工程领域进行了全面的回顾和总结,还对未来的发展趋势进行了独到的预测和分析。
为了完成这篇文章,作者可谓是下足了功夫。他不仅持续追踪行业动态,还自建数据平台,收集了TB级的GitHub事件数据,对开源工具的各项指标进行量化分析。这种数据驱动的研究方法,保证了文章的专业性和权威性。
面对众多的开源工具,作者并没有眉毛胡子一把抓,而是设定了严格的选择标准。他只关注活跃项目,剔除不成熟和缺乏社区支持的项目。这种优中选优的态度,保证了文章的实用性。
数据工程全景图: 9 领域
数据工程领域可分为以下 9 个领域:
存储系统
数据湖平台
数据处理与集成
工作流编排 & 数据操作
数据集成
数据基础设施
ML/AI 平台
元数据管理
分析 & 可视化
以下将逐一介绍每个类别的最新趋势、创新和主要产品现状。
1. 存储系统
2024 年,存储系统领域在架构方面取得了显著进步,尤其是在 OLAP 数据库系统领域。
DuckDB 成为一个重要的成功案例,特别是在其 1.0 版本发布后,展示了企业使用的生产就绪性。随着 chDB(基于 ClickHouse)、GlareDB 和 SlateDB 等新进入者的加入,新的可嵌入 OLAP 类别不断扩展,反映了对轻量级分析处理能力的增长需求。
OLAP扩展 & 混合事务/分析存储(HTAS)
一个显著的发展是新 OLAP 扩展的普及,尤其是在 PostgreSQL 生态系统。这些扩展允许无缝扩展 OLTP 数据库,将这些系统转变为 HTAP(混合事务/分析处理)或新的 HTAS(混合事务/分析存储)数据库引擎,该引擎将无头(headless)数据存储(如数据湖和数据湖仓)与事务型数据库系统集成。
MotherDuck 发布 pg_duckdb 标志着重大进步,使 DuckDB 能够作为 PostgreSQL 中的嵌入式 OLAP 引擎。随后推出了 pg_mooncake 扩展,为 Iceberg 和 Delta 等开放表格式提供原生列存储功能。Crunchy Data 和 ParadeDB 分别通过 pg_parquet 和 pg_analytics 做出了类似贡献,使数据湖上的 Parquet 文件能够进行直接分析。
零盘架构(Zero-Disk Architecture)
零磁盘架构成为存储系统中最具变革性的趋势之一,从根本上改变了数据库系统管理存储和计算层的方式。这种架构方法完全消除了对本地附加磁盘的需求,而是使用远程深度存储解决方案,如 S3 对象存储作为主要持久层。
超出 OLAP 存储系统,如云数据仓库和开放表格式,我们在 NoSQL、实时、流和事务系统中见证了这种模式的显著出现。
磁盘系统与零盘系统的主要权衡在于成本与性能,以及读写物理存储数据的 I/O 延迟。虽然磁盘系统可以管理亚毫秒级的快速 I/O,但零磁盘系统通过廉价的可扩展对象存储实现规模经济,代价是读写对象存储服务时可能面临高达一秒的延迟。
新型数据库系统,包括 SlateDB 和 Apache HoraeDB 时序数据库,是从零开始构建的,而 Apache Doris 和 StarRocks 等现有系统在 2024 年采用了该架构。其他实时引擎,如 AutoMQ 和 InfluxDB 3.0,越来越多地采用零磁盘范式。
其他重要进展
2024 年 Redis 转向专有许可证后,Valkey 成为领先的开放源代码替代品,成为 2024 年在 GitHub 上最受好评的存储系统。主要云服务提供商迅速采用它,谷歌将其集成到 Memorystore 中,亚马逊通过 ElastiCache 和 MemoryDB 服务支持它。
其他值得注意的发展包括基于 PostgreSQL 引擎构建的 Elasticsearch 替代品 ParadeDB,以及来自 TimePlus 的 Proton 和由 Ververica 推出的 Fluss 等新型混合流存储系统。这些系统旨在将流和 OLAP 功能与列式存储基础集成。
2. 数据湖平台
随着数据库先驱 Michael Stonebraker 支持湖仓架构和开放表格格式为“未来十年 OLAP DBMS 的典范”,数据湖仓继续成为数据工程中最热门的话题。
2024 年,开放表格格式领域继续显著演变。第四个主要开放表格格式 Apache Paimon 从孵化器毕业,通过与 Apache Flink 的集成带来了流式湖仓能力。Apache XTable 作为一个专注于双向格式转换的新项目出现,而 Apache Amoro 带着其湖仓管理框架进入孵化器。
2024 年,Apache Iceberg 已成为开放表格式框架中的领先项目,其特点在于生态系统扩展和 GitHub 仓库指标,包括更高的星标数、分支、拉取请求和提交数。
所有主要的 SaaS 和云服务提供商都已增强其平台以支持访问开放表格格式。然而,写入支持较少普及,Apache Iceberg 成为实现全面 CRUD(创建、读取、更新、删除)集成的首选选择。
未来的通用表格格式(如 Apache XTable 和 Delta UniForm)可能会在处理各种格式之间功能潜在差异时面临重大挑战,开放表格格式的命运可能与开放文件格式相似,当时 Parquet 成为事实上的标准。
随着湖仓生态系统的持续发展,Open Data Lakehouse 平台内互操作开放标准和框架的采用预计将变得更加流行。
原生表格格式库的出现
一种新的趋势正在湖仓生态系统中出现,专注于在 Python 和 Rust 中开发本地库。这些库旨在提供直接访问开放表格格式,无需使用像 Spark 这样的重型框架。
显著的例子包括 Delta-rs、Hudi-rs 和 PyIceberg,它们分别针对 Delta Lake、Apache Hudi 和 Iceberg 提供了本地访问能力。
3. 数据处理与集成
单节点处理兴起
单节点处理技术的兴起代表着数据处理领域的一次根本性转变,对传统的以分布式为先的方法提出了挑战。
近期分析显示,许多公司高估了他们的大数据需求,促使他们对数据处理需求进行重新评估。即使在数据量大的组织中,大约 90% 的查询仍在可管理的单个机器工作负载范围内运行,仅扫描最近的数据。
现代单节点处理引擎,如 DuckDB、Apache DataFusion 和 Polars,已成为强大的替代品,能够处理以前需要分布式系统(如 Hive/Tez、Spark、Presto 或 Amazon Athena)的工作负载。
流处理
2024 年,流处理生态系统持续扩展,Apache Flink 进一步巩固了其作为顶级流式处理引擎的地位,而 Apache Spark 则保持了其强大的地位。
庆祝其 10 周年纪念日,Flink 发布了 2.0 版本,标志着自八年前 Flink 1.0 发布以来的首次重大更新。随着 Apache Paimon 开放表格式和新开源的 Fluss 流式引擎的引入,Apache Flink 生态系统得到了显著扩展。2024 年,领先的云服务提供商越来越多地将 Flink 集成到其托管服务中,最新的是谷歌为 Apache Flink 解决方案的无服务器 BigQuery 引擎。
新兴流式引擎包括 Fluvio、Arroyo 和 FastStream,努力与这些成熟的竞争者竞争。Fluvio 和 Arroyo 作为唯一基于 Rust 的引擎,旨在消除与传统基于 JVM 的流处理引擎相关的典型开销。
在主要开源流媒体新闻中,Redpanda 收购了 Benthos.dev,并将其重新命名为 Redpanda Connect,转变为更专有的许可。作为回应,WarpStream 分叉了 Benthos 项目,将其更名为 Bento,并承诺保持 100% MIT 许可。
Python 处理框架
在 Python 数据处理生态系统中,Polars 目前是数据工程工作负载(不包括 PySpark)占主导地位的高性能 DataFrame 库。Polars 在 2024 年实现了令人印象深刻的 8900 万次下载,其 1.0 版本的发布标志着重要的里程碑。
4. 工作流程编排 & 数据运维
2025 年,开源工作流程编排类别继续作为数据工程生态系统中最具活力的部分之一,拥有超过 10 个活跃项目,从像 Apache Airflow 这样的成熟平台到像 Netflix 的 Maestro 这样的新开源引擎。
经过十年,Apache Airflow 仍然是部署和采用最多的工作流编排引擎,仅在 2024 年就有惊人的 3.2 亿次下载,同时面临着 Dagster、Prefect 和 Kestra 等新兴竞争对手的竞争。
有趣的是,Kestra 在 2024 年在 GitHub 上获得了最多的星星,其增长直接与 9 月份宣布的 8000 万美元融资有关,该消息在 TechCrunch 上有所报道。在代码活动方面,Dagster 在 2024 年展示了显著的开发活动,有 27K 次提交和近 6K 个关闭的拉取请求。
数据质量
Great Expectations 继续成为数据质量和验证领域的领先 Python 框架,也被 Databricks 2024 年十大数据与 AI 产品所收录,紧随其后的是 Soda 和 Pandera 在数据工程实践中的应用。然而,有一些令人失望的消息:《数据差异》项目已被其主要维护者 Datafold 于 2024 年存档。
数据版本化
数据版本控制仍然是 2024 年的一个重要话题,因为持续努力将现代版本控制系统(如 Git)的功能引入数据湖和湖仓。
项目如 LakeFS 和 Nessie,通过扩展其事务元数据层,增强了现代数据湖和开放表格式,如 Iceberg 和 Delta Lake。
数据转换
数据仓库系统内数据建模的原始关注点之外,使用 dbt 进行数据转换的范围正在扩大。现在,它正通过利用 Trino 等临时计算引擎的新集成和插件,在数据湖等非仓库环境中取得进展。
目前,dbt 主要面临来自 SQLMesh 的竞争。2024 年的一次显著对峙是 SQLMesh 与 dbt 的辩论,由 Tobiko 的首席执行官在社交媒体上提出,他声称 SQLMesh 太好了,以至于被禁止参加 dbt 的 Coalesce 会议!
5. 数据集成
在数据集成领域,Airbyte 保持了其领导地位,通过关闭 13K 个拉取请求为 1.x 版本做准备,实现了令人印象深刻的里程碑。dlt 框架在 1.0 版本发布时显示出显著的成熟,而 Apache SeaTunnel 作为有吸引力的替代方案获得了关注。
数据变更捕获(CDC)框架格局随着新工具的发展而演变,包括 Artie Transfer 和 PeerDB(被 ClickHouse 收购),同时 Flink CDC 连接器在以 Flink 作为主要流式处理引擎的平台中得到采用。
事件中心(流式发布/订阅服务)
2024 年数据集成领域最引人注目的创新之一来自不断发展的数据流领域。该类别中的一个重大架构转变是将存储和计算分离,同时采用零磁盘架构中的对象存储。WarpSteram 是实施这种架构在实时流空间中的先驱。
此模型还支持灵活的“自建云”(BYOC)部署策略,计算和存储可以托管在客户选择的基础设施上,而服务提供商则维持控制平面。
WarpStream 的成功促使主要竞争对手采用类似的架构。Redpanda 推出了 Cloud Topics,增强了其产品,而 AutoMQ 实施了一种混合方法,具有快速缓存层以改善 IO 性能。
此外,StreamNative 推出了 Apache Pulsar 的 Ursa 引擎,Confluent 在 2024 年发布了其自家的云原生 Freight Clusters。最终,Confluent 决定收购 WarpStream,进一步通过 BYOC 模式扩展其产品。同时,引人注目的 Apache Kafka 站在一个十字路口,这可能会定义其在生态系统中的未来方向。
6. 数据基础设施
2024 年,数据基础设施格局基本保持稳定,Kubernetes 庆祝其成立 10 周年,同时继续作为云环境中领先的资源调度和虚拟化引擎保持其地位。
在可观测性领域,InfluxDB、Prometheus 和 Grafana 继续保持领先地位,Grafana Labs 成功获得了一轮引人注目的 2.7 亿美元融资,这进一步巩固了其核心产品如 Grafana 作为通用可观测性解决方案的长期可行性。
7. 机器学习/人工智能平台
向量数据库从 2023 年起保持强劲势头,Milvus、Qdrant、Chroma 和 Weaviate 脱颖而出,成为领导者。该类别现在包括十个活跃的向量数据库项目,反映了向量搜索能力在现代人工智能数据架构中的日益重要性。
LLMOps(也称为 GenOps)作为今年展示的生态全景中一个独特的类别被引入,这一举措标志着像 Dify 和 vLLM 这样的新项目快速增长的标志,这些项目专门为管理 LLM 模型而构建。
8. 元数据管理
元数据管理平台近年来取得了显著进展,DataHub 通过其积极的开发和社区参与在开源领域引领潮流。
然而,2024 年最显著的发展发生在目录管理方面。虽然 2023 年主导的是开放表格格式的竞争,但 2024 年标志着目录战争的开始。
与早年相比,2024 年市场迎来了一波新的开放目录解决方案,包括 Polaris(由 Snowflake 开源)、Unity Catalog(由 Databricks 开源)、LakeKeeper 和 Apache Gravitino。
这一现象反映了人们意识到,依赖开放表格格式的兴起数据湖平台,缺乏高级内置目录管理功能,无法实现无缝的多引擎互操作性。
所有这些项目都有可能在数据湖 house 平台上建立新的供应商无关、开放目录服务的标准。就像 Hive Metastore 成为基于 Hadoop 平台的事实标准一样,这些新兴的目录最终可能取代 Hive Metastore 在开放数据平台目录管理中的长期主导地位。
9. 分析与可视化
在开源商业智能领域,Apache Superset 和 Metabase 仍然是领先的 BI 解决方案。虽然 Superset 在 GitHub 上最受欢迎,但 Metabase 显示出最高的开发活动。Lightdash 作为一位有潜力的新来者出现,获得了 1100 万美元的融资,并证明了市场对轻量级 BI 解决方案的需求。
BI-as-Code解决方案
BI-as-Code 成为了一个独特的类别,得益于 Streamlit 的持续成功,它保持了作为最受欢迎的 BI-as-Code 解决方案的地位。
这些工具使开发者能够使用代码、SQL 和 Markdown 或 YAML 等模板创建交互式应用程序和轻量级 BI 仪表板,能够将软件工程最佳实践,如版本控制、测试和 CI/CD,结合到仪表板开发工作流程中。
除了 Streamlit 和知名的 Evidence 之外,新进入者如 Quary 和 Vizro 也获得了关注,其中 Quary 特别采用了基于 Rust 的方法,这与该类别以 Python 为中心的规范有所不同。
可组合 BI 技术栈
系统分解的演变不仅限于存储系统;它还对商业智能(BI)堆栈产生了影响。一个新趋势正在出现,将轻量级、无限扩展的 BI 工具(没有后端服务器)与 Apache DataFusion、Apache Arrow 和 DuckDB 等无头嵌入式 OLAP 解决方案相结合。
此集成解决了开源 BI 堆栈中的几个差距,例如查询外部数据湖和湖仓的本地能力,同时保留轻量级、解耦架构的优点。
BI 产品如 Omni、GoodData、Evidence 和 Rilldata 已将这些引擎集成到其 BI 和数据探索工具中。Apache Superset(使用 duckdb-engine 库)和 Metabase 现在都支持嵌入式 DuckDB 连接。
MPP 查询引擎
后 Hadoop 时代,创新和新开源 MPP(大规模并行处理)系统的引入较少,而现有引擎仍在不断成熟。
尽管 Hive 的市场份额正在缩小,但 Presto 和 Trino 仍然作为生产中使用的顶级开源 MPP 查询引擎而存在,尽管它们面临着来自 Spark 作为统一引擎以及 Databricks、Snowflake、AWS Redshift Spectrum 和 Athena 等托管云 MPP 产品的激烈竞争。
未来展望与结论
开源数据生态系统正在关键领域如数据湖仓进入成熟阶段,其特征是围绕成熟技术的整合和运营效率的重视提升。
整个生态持续向云原生、可组合架构演变,同时围绕主导技术进行标准化。值得关注的关键领域包括:
进一步巩固开放表格格式空间
持续演进实时和事务系统中的零磁盘架构
追求提供统一的湖仓体验
LLMOps 和 AI 工程的兴起
数据湖仓生态系统在开放目录集成和本地库开发等领域的扩展
单节点数据处理和嵌入式分析的日益普及