隨著視頻行業(yè)的快速發(fā)展,數(shù)據(jù)已成為驅(qū)動業(yè)務(wù)決策、優(yōu)化用戶體驗、提升商業(yè)價值的關(guān)鍵資產(chǎn)。作為國內(nèi)領(lǐng)先的在線視頻平臺,愛奇藝憑借其龐大的用戶規(guī)模和豐富的內(nèi)容生態(tài),構(gòu)建了一套高效、穩(wěn)定且智能的數(shù)據(jù)處理服務(wù)體系。本文旨在梳理愛奇藝數(shù)據(jù)中臺在數(shù)據(jù)處理服務(wù)方面的核心建設(shè)實踐,探討其如何支撐起公司內(nèi)外的復(fù)雜數(shù)據(jù)需求。
1. 數(shù)據(jù)處理服務(wù)的定位與目標
愛奇藝數(shù)據(jù)中臺的核心使命是將海量、異構(gòu)、多源的數(shù)據(jù)轉(zhuǎn)化為可供業(yè)務(wù)直接消費的、高質(zhì)量的、標準化的數(shù)據(jù)資產(chǎn)。數(shù)據(jù)處理服務(wù)作為中臺的基石,主要負責數(shù)據(jù)的采集、清洗、集成、存儲與初步計算。其核心目標包括:
- 實時性與準確性:滿足推薦、廣告、風(fēng)控等業(yè)務(wù)對秒級乃至毫秒級實時數(shù)據(jù)的苛刻要求。
- 高吞吐與低成本:支撐每日數(shù)十PB級別的數(shù)據(jù)處理任務(wù),同時通過技術(shù)創(chuàng)新不斷降低計算與存儲成本。
- 靈活性與易用性:為不同技術(shù)背景的業(yè)務(wù)方(如產(chǎn)品、運營、算法工程師)提供自助化、可視化的數(shù)據(jù)處理工具,降低數(shù)據(jù)獲取與使用的門檻。
2. 數(shù)據(jù)處理服務(wù)的技術(shù)架構(gòu)
愛奇藝的數(shù)據(jù)處理服務(wù)構(gòu)建在混合云架構(gòu)之上,采用分層解耦的設(shè)計理念,主要包含以下層次:
- 數(shù)據(jù)采集層:覆蓋全端埋點(Web、App、TV、IoT設(shè)備)、服務(wù)端日志、數(shù)據(jù)庫Binlog以及第三方數(shù)據(jù),通過自研的統(tǒng)一采集Agent和SDK,確保數(shù)據(jù)的完整性與時效性。
- 實時計算層:以Apache Flink為核心引擎,構(gòu)建了統(tǒng)一的實時數(shù)據(jù)流處理平臺。它負責處理用戶行為日志、內(nèi)容播放狀態(tài)、廣告曝光點擊等實時事件,為個性化推薦、實時大盤監(jiān)控、A/B實驗分析提供毫秒級的數(shù)據(jù)支撐。
- 批量計算層:基于Apache Spark和Hive構(gòu)建了大規(guī)模離線數(shù)據(jù)處理平臺。通過任務(wù)調(diào)度系統(tǒng)(如Airflow)和資源管理平臺(如YARN/K8s),高效、有序地完成T+1的ETL任務(wù)、數(shù)據(jù)倉庫建模、用戶畫像構(gòu)建等重計算作業(yè)。
- 統(tǒng)一存儲層:采用“湖倉一體”架構(gòu)。原始明細數(shù)據(jù)存儲在HDFS/Object Storage構(gòu)成的“數(shù)據(jù)湖”中;經(jīng)過清洗和建模后的結(jié)構(gòu)化數(shù)據(jù),則存入以Hive、ClickHouse、Doris等為核心的“數(shù)據(jù)倉庫”,同時結(jié)合Redis、HBase等提供低延遲的在線查詢服務(wù)。
- 服務(wù)與治理層:這是數(shù)據(jù)中臺的“大腦”。通過統(tǒng)一的數(shù)據(jù)服務(wù)網(wǎng)關(guān)(Data API Gateway),將處理后的數(shù)據(jù)以API、數(shù)據(jù)文件、消息等多種形式安全、可控地分發(fā)給下游業(yè)務(wù)。配套建立了完善的數(shù)據(jù)血緣、數(shù)據(jù)質(zhì)量監(jiān)控、元數(shù)據(jù)管理和成本核算體系。
3. 核心建設(shè)實踐與挑戰(zhàn)應(yīng)對
實踐一:流批一體的數(shù)據(jù)處理
為應(yīng)對業(yè)務(wù)對數(shù)據(jù)一致性(如Exactly-Once語義)和開發(fā)效率的訴求,愛奇藝積極探索并落地了流批一體的技術(shù)架構(gòu)。核心思路是:
- 統(tǒng)一數(shù)據(jù)模型:在數(shù)據(jù)建模階段,定義統(tǒng)一的業(yè)務(wù)數(shù)據(jù)模型(如用戶事件模型),使實時流和離線批處理作業(yè)基于同一套語義進行處理。
- 統(tǒng)一計算引擎:推動Flink在批處理場景的深度應(yīng)用,利用其同一套API處理流和批數(shù)據(jù),減少開發(fā)維護成本。
- 統(tǒng)一存儲服務(wù):將實時處理的結(jié)果與離線數(shù)據(jù)在存儲層(如Iceberg、Hudi)進行合并,為上層應(yīng)用提供一份完整、一致的視圖。
實踐二:智能化的任務(wù)運維與成本優(yōu)化
面對數(shù)萬個日常數(shù)據(jù)處理任務(wù),智能化運維至關(guān)重要:
- 智能監(jiān)控與告警:基于機器學(xué)習(xí)算法,對任務(wù)運行時長、資源消耗、數(shù)據(jù)產(chǎn)出延遲等指標進行基線學(xué)習(xí),實現(xiàn)異常自動檢測與根因定位,變被動響應(yīng)為主動預(yù)警。
- 動態(tài)資源調(diào)配:根據(jù)任務(wù)的歷史表現(xiàn)和優(yōu)先級,動態(tài)調(diào)整其計算資源(CPU/內(nèi)存),在保障SLA的提升集群整體資源利用率。
- 存儲生命周期管理:自動識別冷熱數(shù)據(jù),對歷史數(shù)據(jù)進行分層存儲(如從SSD遷移至HDD乃至歸檔存儲)和智能壓縮,顯著降低存儲成本。
實踐三:自助化與協(xié)作的數(shù)據(jù)開發(fā)平臺
為了賦能業(yè)務(wù)團隊,愛奇藝構(gòu)建了集數(shù)據(jù)開發(fā)、管理、消費于一體的可視化平臺:
- 低代碼/零代碼開發(fā):提供圖形化拖拽的ETL編排工具,支持SQL、Python等多種開發(fā)方式,滿足不同用戶需求。
- 數(shù)據(jù)資產(chǎn)目錄:建立全公司統(tǒng)一、可搜索的數(shù)據(jù)地圖,清晰展示每個數(shù)據(jù)表的來源、含義、血統(tǒng)關(guān)系和質(zhì)量分,讓數(shù)據(jù)“可見、可懂、可用”。
- 協(xié)同與安全:集成項目協(xié)作功能,并實施細粒度的數(shù)據(jù)權(quán)限控制(行列級權(quán)限、數(shù)據(jù)脫敏),確保數(shù)據(jù)安全合規(guī)地流通。
4. 與展望
愛奇藝通過構(gòu)建強大、靈活的數(shù)據(jù)處理服務(wù)體系,成功將數(shù)據(jù)中臺打造為支撐其內(nèi)容創(chuàng)作、智能推薦、精準營銷、效率提升等核心業(yè)務(wù)的“數(shù)據(jù)引擎”。數(shù)據(jù)處理服務(wù)已從單純的技術(shù)支撐,演變?yōu)轵?qū)動業(yè)務(wù)創(chuàng)新的核心生產(chǎn)力。
挑戰(zhàn)與機遇并存。一方面,隨著AIGC、元宇宙等新技術(shù)的興起,數(shù)據(jù)處理的復(fù)雜性(如多模態(tài)數(shù)據(jù)處理)和實時性要求將進一步提高;另一方面,數(shù)據(jù)要素化和隱私計算等新規(guī)也對數(shù)據(jù)處理的安全合規(guī)提出了新要求。愛奇藝的數(shù)據(jù)中臺團隊將繼續(xù)在實時智能化、云原生架構(gòu)、數(shù)據(jù)安全與隱私保護等領(lǐng)域深入探索,持續(xù)鞏固和提升其數(shù)據(jù)處理服務(wù)的核心競爭力,為公司的長期發(fā)展注入更強大的數(shù)據(jù)動能。