游乐游手机版
首页/AI热点日报/热点详情

大语言模型DataOps数据工程技术架构实践

类型:热点整理2026-05-30
DataOpsforLLM的数据工程架构从传统ETL演进至EtLT,以应对多样化数据源和实时处理需求。DolphinScheduler作为调度平台支撑大规模任务编排,SeaTunnel作为高性能数据集成工具,支持超190种数据源及向量数据库,实现高效数据清洗、转换与流批一体处理。

LLM 的爆发让人工智能进入了新的阶段,但背后支撑这一切的,是数据工程这个“隐形基建”。数据怎么来、怎么洗、怎么流动、怎么喂给模型——这些环节的效率,直接决定了AI应用落地的速度。今天这篇文章,就来拆解一下DataOps for LLM的数据工程技术架构,以及Apache SeaTunnel在这个体系里扮演的角色。

DataOps for LLM 的数据工程技术架构实践

DataOps for LLM 数据工程架构

海外独角兽企业打造数据工程平台

近年来,全球数据工程架构在AI应用的推动下发生了巨大变化,尤其是一些海外独角兽企业在技术上持续创新。以往的数据架构主要依赖传统数据库和大数据平台,如Oracle、Hadoop、MySQL和MongoDB,但现在这些数据库纷纷增加了向量支持,适应AI对向量数据处理的需求。云计算和多云环境的广泛应用使数据管理更具灵活性,例如Snowflake和Databricks等云端数据仓库成为主流,但跨云管理的复杂性也带来了新的挑战。

数据治理领域的创新也在快速发展,许多公司专注于数据转换、集成、调度和编排等模块。Collibra和Bigeye等企业在数据治理方面备受关注,而DBT则作为数据转换的标杆工具被广泛使用。Fivetran在数据集成上表现突出,尤其是在多云环境下的数据同步。白鲸开源科技公司也推出了Apache SeaTunnel等开源项目,支持国内企业进行数据集成。数据调度工具方面,Airflow和Prefect是海外的主流选择,白鲸开源为更好的适应AI时代下的调度平台需求,推出了新一代数据任务调度平台——DolphinScheduler。

此外,随着AI场景需求的提升,Flyte、Ray等新兴的AI工具链支持了机器学习模型的训练、部署和微调,在金融、营销和数据可视化等落地场景中发挥着重要作用。与此同时,开源大模型如LLaMA 3、ChatGPT等的普及进一步推动了AI在消费领域的落地应用,帮助企业提升决策效率。总的来说,这些独角兽企业的实践展示了数据工程的前沿技术发展方向。

数据工程与大模型

关于大模型的训练,数据工程不仅需要整合多种数据源,包括结构化、非结构化以及向量数据,还要实现跨源数据聚合和多层次的数据验证。这一过程涉及从网络爬虫到数据库、乃至国内的信创数据库等多样数据源的统一管理与聚合。同时,随着实时湖仓的快速发展,数据工程平台也在努力实现离线和实时的数据加工,以满足实时数据湖的需求,例如Iceberg等工具便在非结构化数据处理上表现突出。

数据工程平台在整个链条中扮演的角色,说到底就是——为算法团队准备好高质量的数据。这听起来简单,但干过的人都懂,这事儿真不轻松。随着互联网数据逐渐不足以满足模型训练的需求,合成数据的应用逐渐增多,高质量的数据对保证模型效果极为关键。因此,平台不仅需要严格的质量管控和数据影响分析,还要在数据血缘上进行追踪,以确保数据源的可靠性和模型结果的可解释性。

在模型训练的编排过程中,数据工程平台需支持预训练、微调、增强学习等阶段的高效管理,从而完成对模型的性能评估,构建一个循环优化的闭环。模型训练和测试完成后,这些经过验证的数据和模型将被投入到实际应用中,支持各类业务需求的落地。这一数据工程—模型训练的闭环流程,是确保大模型在实际应用中效果最优的关键。

SeaTunnel的诞生——企业面临的数据挑战

在企业构建数据平台,特别是应用于LLaMA等大模型的过程中,数据工程团队往往面临多重挑战。

首先是数据源的多样性。数据源不仅仅是结构化和半结构化的数据,还包括图像、视频、本地文件(如PDF、HTML)等多种类型。此外,企业的数据库种类和版本差异也很大,且不同版本之间的兼容性问题往往带来不少麻烦。十多年来,大数据领域发展迅猛,但缺乏标准化的工程管控工具,数据加工流程像蜘蛛网一样复杂,使得管理和优化变得极其困难。例如,在使用DolphinScheduler进行数据加工时,许多团队发现数据流的管理难度增大,处理逻辑往往混乱。在离线、实时、全量与增量的多种数据采集模式中,实时采集尤为复杂,例如要使用CDC机制采集binlog数据,不仅要知道何时发生了DDL变更,还要支持多表整合和同步,这给数据团队带来了巨大的技术压力。如何减少数据采集对数据源的影响是企业尤其是金融行业非常关注的问题。对于数据库管理员而言,通常会严格限制数据采集的数据库连接数量和频率,以避免对数据源造成过大压力。数据团队和算法团队的协作也是企业面临的主要难题之一。数据团队通常负责数据加工,而算法团队往往需要对这些数据进行二次处理才能用于训练模型,这种数据处理链条的割裂增加了数据流转的复杂性,也是DataOps的关键挑战之一。

新技术挑战下的EtLT架构

随着业务场景和技术挑战的增多,数据工程逐步从传统的ETL架构演进到更为灵活的EtLT架构。这一演变不是简单的位置转变,而是为了适应云SaaS、混合数据源以及实时数据湖和数据仓库的需求。EtLT架构的出现使数据处理更加敏捷,尤其是在云计算和数据引擎能力增强的背景下,这种架构更好地支持了AI模型训练过程中复杂多变的数据需求。举个例子,ClickHouse如今可以在单机模式下实现对数百亿数据的秒级查询,这在传统数仓引擎中是难以实现的,反映了现代数据引擎在大数据处理和查询速度上的显著提升。

EtLT架构中数据抽取的要求也更高,不仅需要实时抽取,还必须处理如binlog的变更以及DDL更新等复杂场景。例如,当上游数据表字段增减时,下游数据库或数据湖也需实时同步更新字段。这种高效的数据抽取方法在传统ETL流程中无法实现。此外,随着SaaS API的对接愈加复杂,数据抽取环节必须能够灵活适应业务变化。

在此基础上,EtLT架构中增加的小“t”处理为数据加工提供了关键支持。数据在抽取过程中可以经过类型转换和字段过滤等处理,避免无用字段占用存储空间和计算资源。例如,若源表包含300个字段,而目标表只需50个,则通过过滤只同步必要数据,降低资源浪费。同时,脏数据的清洗和结构转换也在同步过程中完成,从而进一步提升数据质量和利用效率。

各类数据引擎在加载数据时的方式也因架构变革而多样化。例如,Doris需要stream load模式,Redshift则采用copy文件模式,以提高数据加载效率。在EtLT架构中,由于每秒需同步大量数据到数据湖或数据仓库,传统的JDBC方式显然已无法满足需求。EtLT架构的这些创新设计,使其更好地适应了实时数据仓库、AI训练等场景的高效数据处理需求,与传统ETL相比,展现出更大的灵活性和实时性。

白鲸开源主导的Apache项目——DolphinScheduler

DolphinScheduler作为数据工程中的操作系统,是数据加工的基础平台。白鲸开源开发并开源了这个项目,正是因为在构建数据流水线中,调度与编排功能至关重要。数据加工并非一步完成,而是分为多个环节。环节间的衔接需要调度系统来实现,因此调度系统成为整个数据操作的核心基础设施,甚至被称为“数据操作系统”。

早期,数据工程的任务调度通常依赖手动脚本和cron,但这种方式无法满足复杂的数据编排需求。Azkaban和Airflow等工具为任务调度提供了自动化方案,尤其在代码定义工作流时效果较好。然而,Airflow在大规模数据量和高频任务场景下显得力不从心,扩展性不足、缺乏友好的可视化界面,也导致其难以应对国内数百万级的日常调度任务量。

基于这些痛点,DolphinScheduler于2017年启动开发,2019年开源,经过多年社区协作发展,如今已成为数据工程领域的热门开源调度平台。该平台支持去中心化设计,已经帮助不少用户稳定处理数百万级别的日调度任务量,具有高扩展性和灵活的可视化功能,适合超大数据任务量场景。

白鲸开源主导的Apache项目——SeaTunnel

SeaTunnel项目是一个旨在解决数据集成和传输挑战的高性能分布式工具,被形象地称为数据工程的高速公路。随着现代企业面临的数据源种类不断增加,如Hadoop、Kafka、Iceberg、Doris等,SeaTunnel致力于实现这些不同数据源之间的高效连接和同步。其主要目标是让各种数据源之间的打通变得更加简便,促进数据的实时流动和集成。

SeaTunnel被定位为下一代高性能数据集成工具,特别适用于大数据领域。通过支持超过190种数据源的采集和传输,SeaTunnel使得用户能够更灵活地处理复杂的业务需求,满足从传统数据库到新兴的向量数据库等不同场景的需求。它不仅支持批量数据传输,还支持实时数据流处理,特别是在AI应用场景中,对于向量数据库和流式数据处理的需求日益增加,SeaTunnel能够有效地支持这些需求。

在技术架构方面,SeaTunnel采用了无中心化的设计,架构中包括Master和Worker两个主要组件。Master负责整体作业的管理和调度,而Worker则专注于执行具体的任务,包括数据的采集、转换和写入。每个任务的执行由TaskExecutionService管理,而JobMaster则负责对整个任务的管控,包括调度和监控任务状态。

SeaTunnel还提供了强大的数据处理能力,支持各种数据转换操作,比如将原始数据清洗、过滤,甚至进行格式转换,以满足下游系统的要求。这一过程中的数据流动就像是高速公路上的车辆,灵活而高效。SeaTunnel确保在数据处理过程中能够进行断点续传和检查点管理,使得在出现故障时,能够迅速恢复任务,避免数据丢失和重复处理的问题。

2022年,SeaTunnel在经过两年多的孵化后正式成为Apache顶级项目,标志着它在开源数据集成领域的成熟。这一里程碑不仅展示了技术实力,也体现了中国在全球开源项目中的重要地位。

SeaTunnel在2023年增加了对向量数据库的支持,这对于处理现代AI应用中的高维数据非常重要。向量类型的添加,使得用户可以更加高效地处理和转换向量数据,这一功能的实现离不开社区的贡献。向量数据库的引入,意味着SeaTunnel能够处理更多样化的数据源,并且能够将向量数据与其他类型的数据进行整合,进一步提升了数据集成的能力。

对于数据集的转换,SeaTunnel具备对语言模型(如LLaMA)进行数据处理和增强的能力。通过与GPT等API的集成,SeaTunnel可以执行如数据标记和增强等任务。例如,用户可以利用这些能力判断一个名字对应的国籍,虽然这个例子看似简单,但实际上展现了SeaTunnel在数据处理中的强大灵活性和增强能力。通过应用GPT进行数据合成,用户能够在数据采集和生成上获得更多支持,使得数据更符合实际应用需求。

在Embedding方面,SeaTunnel支持多种模型的嵌入,包括豆包和千问等,同时也允许用户自定义嵌入方式。这一设计使得SeaTunnel不仅可以处理标准的Embedding任务,还能够满足特定业务需求,支持不同模型的灵活集成。整个架构为插件化设计,用户可以通过自定义源、转换和目标来扩展SeaTunnel的功能,这一灵活性大大提升了SeaTunnel在实际应用中的适应性和可扩展性。

Apache SeaTunnel项目旨在提供一个轻量、高效且易于使用的数据集成工具,其主要功能包括:

  • 轻量化设计:Apache SeaTunnel不依赖于Hadoop、Spark等重量级的大数据框架。相比之下,传统的大数据处理架构常常需要大量资源来维持其运行,特别是在商业化环境中,客户可能只提供有限的机器资源,使用较重的框架如Hadoop和Spark,可能会导致资源的浪费,使得其余任务难以高效执行。因此,SeaTunnel的轻量设计旨在降低资源消耗,使用户能够在资源受限的环境中高效运行数据处理任务。
  • 广泛的数据源支持:SeaTunnel支持多种数据源,包括向量数据库和多模态数据库,使其能够将非结构化数据转换为结构化数据。这一功能非常适合现代数据处理需求,用户可以通过SeaTunnel方便地实现各种数据源的集成与同步。
  • 流处理一体化:Apache SeaTunnel实现了流处理与批处理的无缝切换,消除了以往在流和批之间频繁切换所需的人工干预。这样的设计不仅提高了工作效率,也减少了出错的可能性。
  • 高性能数据读取:该项目提供了高效的并行读取和自动分片能力,使得数据处理的性能得到显著提升。通过支持全量到增量的无锁化自动切换,SeaTunnel能够更灵活地应对数据流的变化,减少了对资源的竞争。
  • 动态伸缩能力:SeaTunnel具有节点的动态伸缩能力,能够根据数据处理的实际需要进行资源的调整,确保在高负载时也能维持稳定的性能。这一功能尤其适合于数据量波动较大的场景。
  • 读缓冲和速率控制:为了提升数据读取效率,SeaTunnel引入了读缓冲机制,允许源读取数据的同时,支持多个目标的同步。此外,它还具备速率控制功能,用户可以灵活地调整数据流的处理速度,以适应不同的业务需求。
  • Schema Evolution:SeaTunnel支持Schema Evolution,这意味着在数据源的结构发生变化(如DDL变更)时,系统能够自动适应,而无需手动干预。这一特性特别重要,因为在动态的业务环境中,数据模型的变化是非常常见的。
  • 无中心化设计与多引擎支持:SeaTunnel采用无中心化的设计,不依赖于特定的计算引擎。同时,SeaTunnel提供多引擎的支持,用户可以根据需求选择不同的底层引擎,而无需为每个引擎实现独立的连接器。其自定义的API能够适配新出现的引擎,解决了引擎版本更新带来的兼容性问题。
  • 多版本支持与JDBC多路复用:SeaTunnel实现了对多版本底层引擎的支持,用户只需一次性实现集成,即可兼容流和批的操作。同时,SeaTunnel支持JDBC的多路复用,能够在不同的底层引擎之间进行转换,简化了数据处理流程。
  • 高效的数据转换:SeaTunnel内部实现了Spark和Flink的数据结构转换,能够将SeaTunnel的行数据结构转换为Spark和Flink的格式,确保用户能够无缝地在不同的数据处理框架间切换。

SeaTunnel之所以能够实现高效的数据处理,得益于其强大的分片机制和对各类引擎的特性支持。以下是其在加速数据处理方面的关键技术:

  • 分片与多机并行:SeaTunnel采用分片机制,能够将大规模的数据任务切分为多个小任务,分配到多台机器上并行执行。这种分片多机并行的处理方式极大地提升了数据处理速度,是SeaTunnel快速高效的核心所在。
  • 针对性引擎适配:SeaTunnel在设计上充分利用各类数据库引擎的特点。例如,Doris在数据加载时采用stream load方法最快,而ClickHouse则倾向于通过生成文件来进行加载。SeaTunnel在数据写入环节会根据目标引擎的特性选择最优的数据导入方式,极大地提高了写入效率。这种个性化适配机制确保SeaTunnel能够充分发挥各类数据库的性能潜力。
  • 并发管理与分片均匀性:在数据处理的中间环节,SeaTunnel采用了并发和并行的管理机制,以确保分片数据能够均匀分布。同时,它通过抽样来分析各字段类型,例如识别某字段是字符串还是整数,以此决定分片同步的最佳机制,从而实现更高效的并发处理。
  • 对比其他数据集成产品:与其他数据集成工具(如DataX、Sqoop、Flume等)相比,SeaTunnel的部署相对更轻量级,且不依赖Hadoop生态系统。这使得SeaTunnel在复杂性和灵活性方面具备优势。此外,Flume虽然在Hadoop体系下运作相对简单,但SeaTunnel仍然能够提供更灵活的部署方式。
  • 多功能数据同步:SeaTunnel支持自动建表和多表同步,且具备断点续传的能力,确保数据在中断后可以从上次的位置继续处理。同时,它为批处理和流处理的融合提供了支持,以应对近年来批流一体的趋势。
  • 一致性与分布式事务支持:SeaTunnel在数据准确性和一致性方面进行了专门的设计。为确保数据的一致性,SeaTunnel使用了分布式事务技术,这对数据集成工具提出了更高的技术要求。

上图中从多个维度对Apache SeaTunnel与其它相关产品进行了对比。

SeaTunnel的CDC功能通过抽象设计实现了读取和写入端的数据变化捕捉,便于不同数据库之间的数据同步。CDC采用SeaTunnel的自定义数据类型,建立数据源与目标之间的字段映射,进行模型推演,使字段和类型在上下游匹配。数据分为insert、update(更新前后)和delete几种类型。

CDC的读取流程包括快照读取和增量读取两部分。快照读取负责历史表数据的初始化,增量读取捕捉实时变化,通过读取增量日志实现动态更新,支持批流一体化转换。SeaTunnel CDC在初始化后自动切换到实时模式,确保数据的高效、准确同步。

白鲸开源的工程实践

白鲸开源在开源项目基础上开发了商业化产品——WhaleStudio,在Apache DolphinScheduler和SeaTunnel开源核心基础上增加了众多企业级特性,也强化了对国内信创环境及数据源的支持,如适配达梦、人大金仓等国产数据库。

商业化版本通过WhaleStudio实现了一站式的开发、测试和运维闭环管理,提供了调度、数据同步、数据质量监控以及影响分析等完整功能。相比开源版本,商业版在CDC和数据源支持方面有显著增强,不仅支持更多数据源,还增加了DDL变更报警和延时告警,提升了数据开发与运维能力。

此外,商业版提供了强大的工作流与血缘分析功能,使得用户可以在长链路数据处理中查看多层次的下游影响,通过自动重跑和故障分析来管理复杂任务的依赖关系。通过智能告警和基线管理,系统能够自动分析上游依赖,对如金融报表等关键任务提供基于依赖的告警,确保按时交付。运维能力方面,商业版通过多种智能运维手段提升了系统在复杂任务链和多任务环境下的稳定性和管理效率,为用户提供了更加智能、全面的运维支持。

案例分享

中信建投作为典型的金融行业案例,展示了通过敏捷开发与运维实现高效工作流编排的实践。针对中信建投复杂的业务需求,系统支持了“业务日期”概念,集成了交易日历与自然日历,并能够在交易切换中根据证券业务需求对日期进行精确管理。例如,系统支持4点前后业务日期的切换,帮助用户在复杂的日期切换中保持数据一致性。这一功能经过多次深入沟通和优化,吸收了金融行业的特定业务流程,显著提升了调度产品的适配性与智能化。

在应用中,中信建投从模型设计、数据加工、编排、测试、上线监控到运维实现了一体化的自动化管理,将IT部门的技术能力直接转换为业务部门的支持,全面提升了开发、运营和管理的效率。

数据工程的未来

展望数据工程的未来发展,白鲸开源做了诸多尝试,让工作流更加智能化。

比如,现在可以直接查询GPT作为知识库的一部分。通过RAG技术,用户可以输入需求,比如“计算市场部门的每天销售额”,GPT会自动找到对应表并返回数据。此外,还可进行知识问询,例如了解数据依赖、业务日历等概念,这些日常问询基本能够满足业务需求。

在技术实现方面,白鲸开源开发了Text-to-SQL的功能,使用户能够通过自然语言输入自动生成SQL语句,以便在数仓加工中处理各种场景。例如用户输入“计算学生平均分”,系统会自动生成包含分组等操作的嵌套SQL。白鲸开源还希望通过未来的数据工程简化链路,实现从上游采集到结果的自动化处理,以减少数据工程的复杂性。

在数据连接器的扩展上,白鲸开源也利用ChatGPT进行优化开发。SeaTunnel目前支持160种数据源,但为适应更多业务场景,需要开发更多连接器。白鲸开源尝试通过GPT自动生成接口,例如HTTP和SaaS接口相对简单,数据库接口较复杂,但仍能加快开发速度。此外,白鲸开源还结合GPT与Copilot来加强这一部分的开发效率,帮助SeaTunnel更好地支持多种数据源和业务场景。

来源:https://www.53ai.com/news/finetuning/2024111396075.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。