存儲(chǔ)成本降半、處理效率倍增:火山引擎多模態(tài)數(shù)據(jù)湖如何支撐Agent規(guī)模化落地
2025年,智能體(AI Agent)已成為人工智能領(lǐng)域最具前瞻性的技術(shù)方向與產(chǎn)業(yè)焦點(diǎn)。各行各業(yè)對(duì)企業(yè)級(jí) Agent 的研發(fā)與應(yīng)用持續(xù)深入,其核心目標(biāo)在于顯著提升業(yè)務(wù)運(yùn)營(yíng)效能與決策智能化水平。在此背景下,火山引擎數(shù)智平臺(tái)推出的 Data Agent(數(shù)據(jù)智能體),已在多個(gè)行業(yè)的實(shí)踐中取得了可驗(yàn)證的成效。
然而,將一個(gè)通用的對(duì)話工具升級(jí)為能夠進(jìn)行精準(zhǔn)決策并深度理解業(yè)務(wù)的專業(yè)智能體,面臨著系統(tǒng)性挑戰(zhàn)。這一轉(zhuǎn)變強(qiáng)烈依賴于高質(zhì)量數(shù)據(jù)、深厚的行業(yè)知識(shí)、結(jié)構(gòu)化的上下文管理以及實(shí)時(shí)的用戶反饋閉環(huán)。這些要求對(duì)底層數(shù)據(jù)基礎(chǔ)設(shè)施的技術(shù)能力、靈活性及可靠性提出了全新的、更高的標(biāo)準(zhǔn)。
隨著 AI Agent 時(shí)代的到來(lái),數(shù)據(jù)基礎(chǔ)設(shè)施正在經(jīng)歷一場(chǎng)深刻變革。數(shù)據(jù)的使用方式已從單一的結(jié)構(gòu)化模態(tài),擴(kuò)展為多種模態(tài)的融合運(yùn)用,這也帶來(lái)了不同模態(tài)數(shù)據(jù)之間轉(zhuǎn)換與管理的全新挑戰(zhàn)。據(jù) IDC 預(yù)測(cè),中國(guó)的非結(jié)構(gòu)化數(shù)據(jù)將呈現(xiàn)爆發(fā)式增長(zhǎng),預(yù)計(jì)未來(lái)五年內(nèi),數(shù)據(jù)總量將從51 ZB攀升至129 ZB,其中非結(jié)構(gòu)化數(shù)據(jù)占比高達(dá)80%,年復(fù)合增長(zhǎng)率預(yù)計(jì)超過(guò)30%至40%,整體規(guī)模增長(zhǎng)將超過(guò)十倍。在此背景下,面向 Agent 的數(shù)據(jù)基礎(chǔ)設(shè)施主要面臨以下三大核心挑戰(zhàn):
- 數(shù)據(jù)存儲(chǔ)格式的挑戰(zhàn)。傳統(tǒng)的數(shù)據(jù)存儲(chǔ)格式難以有效滿足多模態(tài)數(shù)據(jù)的處理需求。無(wú)論是小數(shù)據(jù)時(shí)代普遍使用的 TXT、CSV 格式,還是大數(shù)據(jù)時(shí)代為分析場(chǎng)景設(shè)計(jì)的 ORC、Parquet 格式,在應(yīng)對(duì)視頻、音頻、文本等多種模態(tài)混合存儲(chǔ)時(shí),均顯現(xiàn)出局限性。因此,迫切需要一種新的存儲(chǔ)范式來(lái)適應(yīng)這一變化。
- 數(shù)據(jù)計(jì)算引擎的挑戰(zhàn)。過(guò)去的計(jì)算引擎(如Spark、Flink)主要圍繞 CPU 進(jìn)行架構(gòu)設(shè)計(jì),并分別成為離線和實(shí)時(shí)數(shù)據(jù)處理的標(biāo)準(zhǔn)方案。然而,在 AI 時(shí)代,通過(guò) GPU 對(duì)數(shù)據(jù)處理,算力規(guī)模和速度要求呈現(xiàn)爆發(fā)式增長(zhǎng);因此,亟需新一代能夠更好滿足 GPU 計(jì)算需求的計(jì)算引擎。
- 數(shù)據(jù)管理范式的挑戰(zhàn)。傳統(tǒng)的數(shù)據(jù)管理范式同樣以結(jié)構(gòu)化數(shù)據(jù)為核心。非結(jié)構(gòu)化數(shù)據(jù)通常零散地存儲(chǔ)在個(gè)人設(shè)備或獨(dú)立目錄中,形成了嚴(yán)重的數(shù)據(jù)孤島。隨著非結(jié)構(gòu)化數(shù)據(jù)量的急劇增長(zhǎng),構(gòu)建統(tǒng)一的管理平臺(tái)、治理工具與手段,并將其與既有的結(jié)構(gòu)化數(shù)據(jù)體系打通,已成為當(dāng)前的重要任務(wù)。
為應(yīng)對(duì) AI Agent 時(shí)代數(shù)據(jù)基礎(chǔ)設(shè)施的上述挑戰(zhàn),火山引擎推出了一系列創(chuàng)新的產(chǎn)品與解決方案。這包括正式發(fā)布新一代多模態(tài)數(shù)據(jù)湖解決方案,并對(duì) EMR、ByteHouse、Flink 等核心數(shù)據(jù)產(chǎn)品進(jìn)行升級(jí),使其全面具備處理多模態(tài)數(shù)據(jù)的能力。同時(shí),方案引入了專為 AI 場(chǎng)景設(shè)計(jì)的 Lance 格式作為數(shù)據(jù)湖的存儲(chǔ)基礎(chǔ)。
本文將重點(diǎn)探討火山引擎多模態(tài)數(shù)據(jù)湖解決方案的整體架構(gòu)與核心技術(shù)特性,并分享火山引擎在多模態(tài)數(shù)據(jù)處理和推理框架方面的實(shí)踐與見(jiàn)解。
火山引擎推出的多模態(tài)數(shù)據(jù)湖解決方案,旨在提供一個(gè)從存儲(chǔ)、計(jì)算到管理的全方位平臺(tái)。該方案主要由五個(gè)核心部分構(gòu)成:
方案的基石是多模態(tài)數(shù)據(jù)存儲(chǔ)層,火山引擎采用 Iceberg 和 Lance 作為核心的數(shù)據(jù)湖格式。同時(shí),為了兼容各類應(yīng)用場(chǎng)景,還支持具身智能領(lǐng)域常用的 MCAP 和 LeRobot 格式,以及其他視頻、音頻、文本等多種文件格式。
在存儲(chǔ)層之上,方案構(gòu)建了訓(xùn)推一體的數(shù)據(jù)處理平臺(tái)。該平臺(tái)覆蓋了從數(shù)據(jù)攝入、分布式處理、離線/在線推理到實(shí)時(shí)入湖和高性能檢索的全鏈路。同時(shí)對(duì) Spark 進(jìn)行了升級(jí),并集成了 Ray、Daft、Bytehouse 和 Flink 等計(jì)算引擎。在模型推理方面,則深度整合了豆包和 Deepseek 等先進(jìn)模型。
為了簡(jiǎn)化非結(jié)構(gòu)化數(shù)據(jù)的處理流程,方案開發(fā)了一層豐富的數(shù)據(jù)處理算子。這些算子旨在通過(guò)標(biāo)準(zhǔn)化的操作大幅提升開發(fā)效率,讓非結(jié)構(gòu)化數(shù)據(jù)處理更輕松,涵蓋了 PDF 內(nèi)容提取、圖片 Embedding、音頻人聲分離與文字提取、視頻關(guān)鍵幀抽取等常用功能。通過(guò)這些算子,不同模態(tài)數(shù)據(jù)間的轉(zhuǎn)化與處理變得更加高效。
針對(duì) Agent 時(shí)代的數(shù)據(jù)管理需求,多模態(tài)數(shù)據(jù)湖提供了一套完善的管理工具。這套工具支持對(duì)數(shù)據(jù)版本、數(shù)據(jù)探查、數(shù)據(jù)共享進(jìn)行精細(xì)化控制,并提供了針對(duì)文本、圖片等不同源數(shù)據(jù)的豐富管理手段。此外,它還圍繞 Lance 和 Iceberg 格式,提供了先進(jìn)的數(shù)據(jù)湖治理模式。
在最頂層,多模態(tài)數(shù)據(jù)湖方案推出了 Processing Agent。它允許用戶通過(guò)自然語(yǔ)言輕松調(diào)用底層的算子和計(jì)算框架,從而極大地降低了非結(jié)構(gòu)化數(shù)據(jù)處理的門檻,讓開發(fā)工作更加直觀和便捷。
在數(shù)據(jù)湖存儲(chǔ)方面,Agent 時(shí)代的數(shù)據(jù)湖存儲(chǔ)呈現(xiàn)出若干與以往顯著不同的特征。
多模態(tài)數(shù)據(jù)中不同數(shù)據(jù)鏈的大小差異極大,例如視頻文件與文本之間的單列存儲(chǔ)空間差異可能達(dá)到數(shù)百甚至數(shù)千倍。而早期的格式如 Iceberg 和 ORC 在設(shè)計(jì)時(shí),底層采用的 Parquet 格式,是基于不同列之間大小差異在幾倍到幾十倍的假設(shè)下進(jìn)行設(shè)計(jì)的,盡管它們也采用了列式存儲(chǔ)結(jié)構(gòu),但在面對(duì)極不均勻的多模態(tài)數(shù)據(jù)時(shí),仍會(huì)面臨數(shù)據(jù)訪問(wèn)和讀寫過(guò)程中的單點(diǎn)查詢性能問(wèn)題,以及數(shù)據(jù)查詢時(shí)的讀寫 IO 瓶頸。
另一個(gè)關(guān)鍵問(wèn)題是,不同模態(tài)的數(shù)據(jù)最好能夠通過(guò)統(tǒng)一的檢索、存儲(chǔ)和查詢機(jī)制進(jìn)行管理。以往用戶在處理多模態(tài)數(shù)據(jù)時(shí),通常將文本和數(shù)值型數(shù)據(jù)以二維表形式存儲(chǔ),而非結(jié)構(gòu)化數(shù)據(jù)則通過(guò) URL 鏈接到對(duì)象存儲(chǔ)或文件存儲(chǔ)中的具體地址進(jìn)行訪問(wèn)。
傳統(tǒng)做法存在若干明顯弊端:其一,系統(tǒng)架構(gòu)不夠靈活簡(jiǎn)潔;其二,增加列操作不便,讀取原始文件流程繁瑣。以過(guò)去常用的 WebDataset 格式為例,讀取時(shí)需對(duì)對(duì)象存儲(chǔ)中的原始文件解壓,使用完畢后再重新壓縮,導(dǎo)致顯著的讀寫放大問(wèn)題,嚴(yán)重制約處理效率。隨著數(shù)據(jù)規(guī)模持續(xù)增長(zhǎng),此類架構(gòu)復(fù)雜、效率低下的問(wèn)題日益凸顯。其三,隨機(jī)點(diǎn)查性能面臨挑戰(zhàn)。盡管部分存儲(chǔ)方案可將數(shù)據(jù)置于內(nèi)存中以提升點(diǎn)查性能,但在數(shù)據(jù)量極大時(shí)擴(kuò)展性不足,難以滿足訓(xùn)練場(chǎng)景下的高并發(fā)點(diǎn)查需求。其四,業(yè)務(wù)對(duì)數(shù)據(jù) Schema 的靈活性要求日益提高。由于常需為不同場(chǎng)景生成標(biāo)注信息或調(diào)整數(shù)據(jù)規(guī)則,業(yè)務(wù)迭代頻繁,數(shù)據(jù)評(píng)價(jià)體系也不斷拓展,因而對(duì)存儲(chǔ)格式的 Schema 擴(kuò)展能力提出了更高要求。
為解決上述痛點(diǎn),火山引擎多模態(tài)數(shù)據(jù)湖引入 Lance 作為其存儲(chǔ)格式的基礎(chǔ)。
Lance 是一種專為 AI 場(chǎng)景設(shè)計(jì)的列式表格存儲(chǔ)格式,其架構(gòu)包含兩個(gè)核心層面:Lance Table Format 與 File Format。在火山引擎的實(shí)踐中,Lance 格式可部署于對(duì)象存儲(chǔ) TOS,同時(shí)也支持 HDFS 和 vePFS 文件存儲(chǔ)系統(tǒng)。該格式支持?jǐn)?shù)據(jù)的冷熱分層管理,例如在模型訓(xùn)練階段將熱數(shù)據(jù)存放于高性能的 vePFS,而冷數(shù)據(jù)則根據(jù)策略沉降至成本更優(yōu)的 TOS 對(duì)象存儲(chǔ),此機(jī)制已在大型客戶的實(shí)際業(yè)務(wù)中得到應(yīng)用。
其次,Lance 具備出色的多模態(tài)數(shù)據(jù)存儲(chǔ)與高性能隨機(jī)訪問(wèn)能力,其靈活的加列操作(ADD COLUMN)和良好的Schema 擴(kuò)展機(jī)制,能夠高效應(yīng)對(duì)動(dòng)態(tài)標(biāo)注等場(chǎng)景需求。火山引擎團(tuán)隊(duì)已與 Lance 開發(fā)方在 Schema 管理方面進(jìn)行了深度集成,并增強(qiáng)了數(shù)據(jù)版本控制能力。此外,Lance 還支持多模態(tài)混合檢索與透明壓縮技術(shù);實(shí)踐案例表明,通過(guò)有效的數(shù)據(jù)壓縮,有火山客戶的數(shù)據(jù)存儲(chǔ)容量可降低一半以上。
火山引擎多模態(tài)數(shù)據(jù)湖中 Lance 格式的發(fā)展,始于2024年初應(yīng)對(duì)客戶在多模態(tài)數(shù)據(jù)存儲(chǔ)上的迫切需求,特別是在高效點(diǎn)查詢與靈活增減列操作方面存在的顯著痛點(diǎn)。經(jīng)過(guò)深入的用戶調(diào)研、技術(shù)路徑分析以及與多家客戶的聯(lián)合概念驗(yàn)證(PoC),火山引擎于2024年正式推出了支持 Lance 格式的解決方案,并針對(duì)對(duì)象存儲(chǔ)進(jìn)行了讀寫性能優(yōu)化。
至2025年,火山引擎進(jìn)一步將 Lance 深度集成至其新產(chǎn)品 LAS 中。用戶可在 LAS 平臺(tái)內(nèi)選擇 Lance 作為存儲(chǔ)格式,進(jìn)行多模態(tài)數(shù)據(jù)湖的管理以及AI數(shù)據(jù)集的構(gòu)建,該格式尤其擅長(zhǎng)支撐超大規(guī)模的多模態(tài)數(shù)據(jù)管理場(chǎng)景。同時(shí),Lance 也已成為字節(jié)跳動(dòng)內(nèi)部模型訓(xùn)練所采用的數(shù)據(jù)湖存儲(chǔ)格式,并積極開展了開源社區(qū)的推廣工作。
目前,火山引擎多模態(tài)數(shù)據(jù)湖已實(shí)現(xiàn)了 Lance 在數(shù)據(jù)計(jì)算、存儲(chǔ)、模型訓(xùn)練與推理全鏈路中的端到端貫通。在實(shí)際應(yīng)用中,用戶部署的最大數(shù)據(jù)規(guī)模已達(dá)到數(shù)十 PB 級(jí)別。
在計(jì)算層面,多模態(tài)數(shù)據(jù)處理面臨著比存儲(chǔ)更為復(fù)雜的挑戰(zhàn),主要體現(xiàn)在以下四個(gè)關(guān)鍵方面:首先,GPU 與 CPU 的協(xié)同計(jì)算![]()
為解決多模態(tài)數(shù)據(jù)在計(jì)算層面面臨的復(fù)雜挑戰(zhàn),火山引擎多模態(tài)數(shù)據(jù)湖引入 Daft 作為核心計(jì)算引擎。Daft 具備以下關(guān)鍵特性,使其特別適合 AI 場(chǎng)景下的多模態(tài)數(shù)據(jù)處理:
第一,Daft 具備原生的多模態(tài)數(shù)據(jù)與調(diào)用模型能力。其內(nèi)置多模態(tài)數(shù)據(jù)類型系統(tǒng)及相應(yīng)處理算子,可便捷地將模型推理嵌入數(shù)據(jù)處理流程中,實(shí)現(xiàn)對(duì)圖像、文本等非結(jié)構(gòu)化數(shù)據(jù)的直接操作。
第二,提供原生的 Python DataFrame 與 SQL 雙重接口。在延續(xù) Pandas 類 DataFrame 操作習(xí)慣的同時(shí),也支持 SQL 查詢,兼顧了數(shù)據(jù)科學(xué)家與工程師的使用習(xí)慣,便于在 Python 生態(tài)中快速集成與開發(fā)。
第三,執(zhí)行層采用 Rust 編寫的原生向量化執(zhí)行引擎。通過(guò)運(yùn)用 SIMD 指令優(yōu)化計(jì)算效率,并在內(nèi)存管理方面表現(xiàn)穩(wěn)定,從而提供強(qiáng)勁的數(shù)據(jù)處理性能。
第四,Daft 支持原生的 GPU 與 CPU 異構(gòu)資源調(diào)度。能夠有效協(xié)調(diào) GPU 與 CPU 的混合負(fù)載,更好地適應(yīng) AI 場(chǎng)景下對(duì)異構(gòu)計(jì)算資源的調(diào)度需求。
第五,系統(tǒng)設(shè)計(jì)兼具極致輕量性與分布式擴(kuò)展能力。在具備優(yōu)秀單機(jī)處理性能的基礎(chǔ)上,支持一鍵輕量安裝,并可基于 Ray 框架實(shí)現(xiàn)無(wú)縫的分布式擴(kuò)展,構(gòu)成其底層所依賴的 Flotilla 分布式執(zhí)行引擎。
基于 Daft 的能力,該方案在 LAS 平臺(tái)上構(gòu)建了豐富的數(shù)據(jù)處理算子框架。此框架提供了上百種針對(duì)多模態(tài)數(shù)據(jù)的處理算子,其底層實(shí)現(xiàn)深度集成了 Daft,從而實(shí)現(xiàn)了 Daft 計(jì)算引擎與火山引擎生態(tài)系統(tǒng)的有效融合。
在開源生態(tài)建設(shè)方面,火山引擎在項(xiàng)目早期階段便持續(xù)投入,包括提升作業(yè) Checkpoint 與容錯(cuò)能力、優(yōu)化模型調(diào)用支持、實(shí)現(xiàn)資源彈性調(diào)度等,并將這些改進(jìn)成果回饋至開源社區(qū)。同時(shí),團(tuán)隊(duì)也對(duì) SQL 性能與功能進(jìn)行了優(yōu)化,增強(qiáng)了對(duì)智能駕駛、具身智能等多種專用數(shù)據(jù)源的接入能力,并實(shí)現(xiàn)了與 LAS Catalog 的深度集成。
以上內(nèi)容系統(tǒng)性地分享了 Lance 與 Daft 兩項(xiàng)前沿技術(shù)棧的核心特性,以及其在火山引擎多模態(tài)數(shù)據(jù)湖方案中的實(shí)踐歷程與思考。火山引擎誠(chéng)摯邀請(qǐng)大家體驗(yàn)多模態(tài)數(shù)據(jù)湖解決方案及數(shù)據(jù)中臺(tái)系列引擎產(chǎn)品。

浙公網(wǎng)安備 33010602011771號(hào)