跳到主要内容

从 ETL、ELT、EtLT 到 Agent:企业数据工程体系正在发生什么变化

· 阅读需 19 分钟
David Zollo

过去二十年,企业数据工程体系一直建立在一个默认前提之上:

人负责理解系统,系统负责执行流程。

工程师理解业务,拆解链路,编写 SQL、Spark、Shell、同步脚本或调度任务,然后交给系统执行。调度系统不需要理解业务,只需要按照 DAG 把任务跑完;数据同步系统不需要理解指标,只需要把数据从源端搬到目标端。

这套模式支撑了很长时间的数据仓库、数据湖、BI、报表和批量调度体系。

但今天,这个前提正在开始失效。

企业数据系统变得越来越复杂:数据源更多,链路更长,实时性更强,业务变化更快,指标口径更容易冲突,AI 应用又不断带来新的交互数据、模型反馈数据、向量索引和非结构化数据。

在这样的环境下,企业真正缺少的,已经不只是更多 Pipeline,也不只是一个更会写 SQL 的 Copilot。

企业真正需要的是:

能够理解系统、规划任务、调用工具、验证结果,并持续积累经验的 Data Engineering Agent。

而在这个变化中,Apache SeaTunnel 的角色会变得非常关键。

因为 Agent 时代的数据工程,不只是“会思考”就够了。它还必须能稳定连接数据源、捕获变化、执行同步、处理增量、保障一致性,并把数据安全、可靠、低成本地移动到目标系统。

换句话说:

Agent 负责理解目标和规划动作,SeaTunnel 负责把这些动作变成真实、可靠、可恢复的数据工程执行。

这也是为什么从 ETL、ELT、EtLT 到 Agent 的演进里,SeaTunnel 会成为下一代数据工程体系的重要执行底座。

一、从 ETL 到 ELT:第一次范式迁移

传统 ETL 的逻辑很清楚:

  1. 先 Extract,把数据从源端抽出来。
  2. 再 Transform,在中间层完成清洗、转换、聚合。
  3. 最后 Load,把处理后的结果加载到目标系统。

这套模式适合早期数据仓库时代。

因为当时数据源相对有限,链路相对清楚,计算资源也比较集中。企业希望在进入数仓之前,把脏数据清洗掉,把口径处理好,把结构整理成可以直接使用的结果。

ETL 本质上是一种确定性 Pipeline。

它的核心假设是:

人提前定义好流程,系统按流程执行。

后来,随着云数仓、数据湖、Lakehouse 和弹性计算的发展,ELT 开始流行。

ELT 的思路是:

  1. 先 Extract。
  2. 再 Load。
  3. 最后在目标系统里 Transform。

也就是说,先把原始数据或近原始数据装进统一存储底座,再利用目标端强大的计算能力做转换。

ELT 解决了 ETL 的一些问题。比如,它降低了前置处理的复杂度,保留了更多原始数据,也让后续建模和分析更加灵活。

但 ELT 也带来了新的问题。

如果所有转换都推迟到目标端,源端数据的脏问题、类型问题、字段变化、CDC 事件、隐私字段、格式差异、结构漂移,都会被直接带进目标系统。

在简单批量场景里,这还可以接受;但在今天的实时同步、CDC、多表同步、湖仓入湖、SaaS API 接入和 AI 数据工程场景里,完全“先 Load 再说”会让下游治理成本急剧上升。

于是,企业数据工程开始进入第三种形态:

EtLT。

二、EtLT:从 Pipeline 到 Agent 的关键过渡形态

这里的 EtLT,不是简单把 ETL 和 ELT 混在一起。

我更愿意把它理解为:

Extract -> lightweight transform -> Load -> semantic Transform

也就是:

  • 抽取数据。
  • 先做一层必要的轻量 transform。
  • 再把数据加载到统一数据底座。
  • 最后做面向业务语义、指标口径和数据产品的大 Transform。

这里最关键的是小写 t 和大写 T 的区别。

小写 t 不是复杂业务建模,而是数据进入平台之前必须完成的工程化处理,例如:

  • 字段裁剪
  • 类型映射
  • 格式标准化
  • 主键或分区字段处理
  • 敏感字段脱敏
  • CDC 事件格式转换
  • 多表路由
  • Schema Evolution
  • 数据质量前置校验
  • 一读多写
  • 限速和并行控制

这些处理不应该全部推迟到目标端。否则,数据湖、数仓或 Lakehouse 里会堆积大量结构不一致、语义不清楚、质量不可控的原始数据。

但小写 t 也不应该承载过重的业务逻辑。

真正复杂的业务口径、指标定义、主题建模、语义映射和跨域聚合,应该放到大写 T 里,在 Lakehouse、数仓、指标层、语义层和治理体系中完成。

所以 EtLT 的核心价值在于:

在数据进入统一底座之前,先完成必要的工程标准化;在数据进入统一底座之后,再完成业务语义化。

这正是 SeaTunnel 非常适合承担的部分。

Apache SeaTunnel 的 Source、Transform、Sink 架构,本质上天然适合 EtLT 里的小写 t:它既能连接多种异构数据源,也能在数据流动过程中完成轻量转换、结构适配、CDC 处理、多表同步和写入目标系统。

因此,在 EtLT 架构里,SeaTunnel 不只是一个“数据搬运工具”,而是企业数据进入统一底座之前的 Data Integration Runtime

三、为什么传统 ETL 开始吃力

传统 ETL 面对的是相对确定的流程。

把规则写清楚,DAG 画出来,任务按顺序执行,失败之后工程师排查修复。

但今天的数据工程环境已经不是当年的样子。

企业里同时存在 OLTP 数据库、Kafka 消息流、CDC 链路、SaaS API、日志、对象存储、Lakehouse、实时 OLAP、向量数据库、AI 交互日志和模型结果数据。

数据不只是变多了,也变得更碎、更异构、更实时。

更麻烦的是链路长度。

一个看上去很普通的经营指标,背后可能经过几十张表、多层宽表、多个业务域拼接,还有一堆复杂口径转换。到了这个阶段,很多企业面临的真实问题已经不是“流程有没有搭起来”,而是几乎没人能把整条链路从头到尾讲明白。

传统 ETL 在这里暴露出来的是结构性问题。

  • 一个字段改名,可能带崩上百个任务。
  • 一个枚举值变化,可能让多个核心指标悄悄漂移。
  • 一段增量逻辑写错,影响的可能不只是单张表,而是一串下游分析结果。

调度系统能告诉你任务失败了,但它不一定知道为什么失败。 同步工具能把数据写过去,但它不一定知道这份数据影响了哪个业务指标。 工程师能修复脚本,但前提是他先能找到完整上下文。

所以传统 ETL 真正吃力的地方,不只是性能或稳定性,而是它天然缺少系统级认知能力。

它能执行流程,但不能理解系统。

四、为什么 Copilot 没有真正解决问题

很多团队第一次把 AI 引入数据工程,往往是从 Copilot 开始:写 SQL、补 Spark 代码、生成 YAML、写测试样例。

这些能力当然有价值,尤其能提高局部开发效率。

但它们没有触达企业数据工程最深层的问题。

因为数据工程真正难的,从来不只是代码生成,而是系统理解。

Copilot 可以帮你生成一段 SQL,却不知道这个字段的业务含义是什么;可以帮你写一个同步任务,却不知道上游 schema change 会影响哪些下游指标;可以帮你生成调度配置,却不知道这次变更是否破坏了历史一致性。

企业数据工程真正复杂的部分,是:

  • lineage reasoning
  • dependency analysis
  • semantic understanding
  • metric governance
  • risk estimation
  • impact analysis
  • incremental recovery

这些不是单靠代码补全就能解决的。

所以企业真正需要的,不只是一个 AI IDE,而是一套能理解数据系统、围绕目标拆解任务、调用工程工具并验证结果的 Agentic Data Engineering 系统。

五、从 Pipeline 到 Agent,真正变化是什么

如果只保留一句核心判断,我会这样说:

传统 ETL 的核心是:人定义流程,系统执行流程。Agent 数据工程的核心是:人定义目标,系统生成流程。

这不是一句包装口号,而是两套系统组织方式的根本差异。

在传统模式里,工程师先设计好任务链路,配置 Source、Transform、Sink,再交给调度系统执行。

系统面对的是一个固定流程。

而在 Agent 模式里,人输入的可能只是一个目标。

比如:

新增一个订单利润指标,并保证和财务口径一致。

传统做法是工程师自己去找数据源、查表结构、看血缘、写转换逻辑、配置同步任务、补质量校验、发起回归测试。

Agent 理想中的工作方式,则是围绕这个目标自动拆解一组动作:

  • 识别涉及哪些业务对象
  • 查找候选数据源
  • 分析上游 lineage
  • 判断应该走 ETL、ELT 还是 EtLT
  • 生成 SeaTunnel 同步任务
  • 配置 CDC 或全量同步
  • 完成轻量 transform
  • 写入 Lakehouse 或目标系统
  • 触发质量校验
  • 评估下游影响
  • 把结果反馈给工程师确认

这里真正变化的,不是“AI 帮你写了一段 SQL”,而是系统开始围绕目标生成工程动作。

但这也带来一个关键问题:

Agent 规划出来的数据动作,谁来可靠执行?

这正是 SeaTunnel 的价值所在。

六、SeaTunnel 在 Agent 时代的位置:Agent 的数据集成执行层

Agent 不能只停留在分析和建议阶段。

如果一个 Data Engineering Agent 发现某张表需要同步、某条链路需要回放、某个 CDC 任务需要调整、某批数据需要重新写入目标系统,它必须能调用一个稳定、可控、可观测的数据集成执行层。

这个执行层需要具备几类能力。

1. 能连接足够多的数据源

企业数据系统天然异构。Agent 不可能只面对一种数据库或一种文件系统。它需要连接 MySQL、Oracle、PostgreSQL、SQL Server、Kafka、Hive、Iceberg、Doris、ClickHouse、StarRocks、Elasticsearch、S3、HDFS、MongoDB、SaaS API 等不同系统。

SeaTunnel 的 Connector API 和插件化架构,正好解决了这个问题。它把 Source、Transform、Sink 抽象成统一接口,让不同数据源以相对一致的方式被接入和调用。

2. 能同时处理批、流、CDC 和整库同步

Agent 时代的数据工程不是单一范式。它既需要一次性全量迁移,也需要持续 CDC;既需要离线批处理,也需要实时同步;既需要单表同步,也需要多表或整库级别的数据移动。

SeaTunnel 的价值就在于,它不是单纯的 ETL 脚本工具,而是面向数据同步和数据集成场景构建的运行体系,可以承载全量、增量、实时、CDC、多表同步等多种数据移动任务。

3. 能承载 EtLT 里的轻量 transform

EtLT 不是把所有业务逻辑都塞进同步链路,而是在数据进入统一底座之前,先完成必要的工程标准化。

SeaTunnel 的 Transform 能力,适合处理字段映射、类型转换、数据过滤、字段裁剪、格式调整、脱敏、路由等轻量处理。

这些能力让 SeaTunnel 可以承担 EtLT 中的小写 t

不做过重的业务建模,但把数据整理到可治理、可加载、可继续加工的状态。

4. 能提供一致性、容错和恢复能力

Agent 可以判断“应该重跑这一段链路”,但真正执行重跑时,底层系统必须具备 Checkpoint、失败恢复、状态管理和一致性保障能力。

一个只会规划、不可靠执行的系统,最终只是“会想但不会做”。

所以在 Agent 时代,执行质量仍然和智能水平同样重要。

七、未来的数据工程栈会越来越像“操作系统”

如果再往前看一步,企业数据工程体系会越来越像一套分层的数据操作系统,而不再只是很多零散 Pipeline 的集合。

在这套体系里:

  • Semantic Layer 负责定义业务世界模型
  • Metadata 负责提供结构化上下文
  • Memory 负责沉淀经验
  • Planning Layer 负责把目标拆成动作
  • Execution Layer 负责真正执行同步、CDC、数据移动、回放和恢复

SeaTunnel 就处在这个 Execution Layer 里。

这个位置非常关键。

未来不是“在 ETL 上面套一个大模型”就结束了。

未来是一个清晰分层、各司其职的系统:

  • Agent 决定应该做什么
  • SeaTunnel 保障这件事真的被可靠执行出来

八、用一句话总结这个演进

ETL 时代,企业构建的是数据流水线。

ELT 时代,企业开始把数据沉淀到统一底座。

EtLT 时代,企业开始重新平衡数据接入、轻量治理和业务转换之间的关系。

Agent 时代,企业要构建的更像是一套数据操作系统。

在这套系统里,Semantic Layer 提供业务世界模型,Metadata 提供上下文,Memory 沉淀经验,Planning Layer 负责决策,SeaTunnel 这样的数据集成引擎负责把数据移动、CDC、轻量 transform、增量同步、回放和恢复真正执行出来。

所以,Agent 不是在 ETL 外面简单挂一个大模型,也不是给调度系统加一层聊天入口。

它真正改变的是企业数据工程的底层操作范式。

而 SeaTunnel 的价值,也会在这个过程中被重新定义。

它不只是一个数据同步工具,而是下一代 Agentic Data Engineering 体系里的数据集成执行底座。

Agent 让数据系统开始理解目标。

EtLT 让数据进入平台的过程更加可控。

SeaTunnel 让这些目标真正变成可靠的数据工程动作。

这就是从 ETL、ELT、EtLT 到 Agent 时代,企业数据工程正在发生的根本变化。