融合架構(gòu)的高時(shí)效可擴(kuò)展大數(shù)據(jù)分析平臺(tái)
大數(shù)據(jù)應(yīng)用的多樣化 需要的計(jì)算模型、數(shù)據(jù)模型多樣化; 目前每類模型需要單獨(dú)的開源系統(tǒng)來支持(如HDFS、HBase、Neo4j、MongoDB,F(xiàn)link,Spark,Tensorflow等)。 多系統(tǒng)導(dǎo)致大數(shù)據(jù)分析平臺(tái)非常復(fù)雜、效率低下。研究目標(biāo):研究和開發(fā)面向新型多計(jì)算模型融合架構(gòu)的、高時(shí)效、可擴(kuò)展的新 一代大數(shù)據(jù)分析支撐系統(tǒng)與工具平臺(tái)FAST(Fusion-Architecture, Scalable, Time-efficient big data analysis platform)。針對(duì)目前大數(shù)據(jù)分析平臺(tái)復(fù)雜、效率低下的痛點(diǎn),該系統(tǒng)具有三個(gè) 方面的優(yōu)勢(shì):首先,這套系統(tǒng)采用融合架構(gòu),一方面實(shí)現(xiàn)關(guān)系、圖、鍵 值、文檔等多種數(shù)據(jù)模型的高效融合,另一方面實(shí)現(xiàn)批處理計(jì)算、流計(jì) 算的深度融合,并可以通過SQL擴(kuò)展語言來進(jìn)行多模型的統(tǒng)一查詢,實(shí)現(xiàn)高效的跨模型查詢。其次,對(duì)于復(fù)雜系統(tǒng)來說,時(shí)效性非常重要,這 套系統(tǒng)采用融合架構(gòu)提高效率是實(shí)現(xiàn)高時(shí)效的基礎(chǔ),更重要的是,我們 對(duì)大數(shù)據(jù)分析從數(shù)據(jù)到用戶進(jìn)行了端到端的全棧時(shí)效優(yōu)化。最后,對(duì)于 大數(shù)據(jù)應(yīng)用來說,系統(tǒng)擴(kuò)展性非常重要,本系統(tǒng)在資源層、存儲(chǔ)層和計(jì) 算層進(jìn)行了全面的擴(kuò)展性優(yōu)化。下面在融合架構(gòu)、高時(shí)效和可擴(kuò)展這三 個(gè)方面,分別詳細(xì)介紹FAST系統(tǒng)的三個(gè)主要亮點(diǎn)。融合架構(gòu)FAST系統(tǒng)的第一個(gè)亮點(diǎn)是融合架構(gòu),我們?cè)诩夹g(shù)方面的創(chuàng)新主要包 括多數(shù)據(jù)模型融合和多計(jì)算模型融合兩方面。多數(shù)據(jù)模型融合:設(shè)計(jì)和研發(fā)了多模型數(shù)據(jù)管理與查詢引擎,支持關(guān)系、圖、鍵值、 文檔等多種數(shù)據(jù)模型,實(shí)現(xiàn)了查詢解析、查詢優(yōu)化、元數(shù)據(jù)管理、數(shù)據(jù) 分布等功能,將多種數(shù)據(jù)模型進(jìn)行統(tǒng)一管理和深度融合。同時(shí)擴(kuò)展了SQL語言,通過統(tǒng)一的查詢接口支持對(duì)關(guān)系、鍵值、圖、文檔等數(shù)據(jù)進(jìn)行獨(dú)立訪問或者跨模型查詢。經(jīng)過試驗(yàn),多模型數(shù)據(jù)融合查詢,比Spark 2.3.4的查詢時(shí)間能平均減少70.7%。目前spark等現(xiàn)有系統(tǒng)還需要手工編程方式來實(shí)現(xiàn)跨模型查 詢,所以FAST系統(tǒng)在易用性上也表現(xiàn)良好,降低使用門檻,提高開發(fā)效率。多計(jì)算模型融合:在計(jì)算層實(shí)現(xiàn)了最常見的批處理計(jì)算和流計(jì)算深度融合,批流融合的核心方法是在系統(tǒng)內(nèi)部實(shí)現(xiàn)批和流的統(tǒng)一表達(dá),批是對(duì)有限數(shù)據(jù)集 的運(yùn)算,流是對(duì)無限數(shù)據(jù)流的計(jì)算,我們?cè)O(shè)計(jì)了UCollection結(jié)構(gòu)對(duì)批和 流數(shù)據(jù)進(jìn)行統(tǒng)一表達(dá),通過識(shí)別的bounded標(biāo)志,來確定是批、流、或批流融合。有了統(tǒng)一表達(dá),可以開展一系列融合優(yōu)化來提升系統(tǒng)性能。 并且對(duì)上通過Unified API統(tǒng)一用戶的批、流接口,實(shí)現(xiàn)二者在編程范式上的統(tǒng)一表達(dá)。對(duì)于批流混合的計(jì)算,融合架構(gòu)系統(tǒng)的查詢延遲比Flink 1.4.2能減少57%,吞吐量平均可以提升到6.72倍。高時(shí)效FAST系統(tǒng)的第二個(gè)亮點(diǎn)是高時(shí)效,即縮短大數(shù)據(jù)分析的時(shí)間消耗, 提高效率。由于大數(shù)據(jù)分析平臺(tái)是一個(gè)非常復(fù)雜的系統(tǒng),為了做到高時(shí)效,系統(tǒng)不能存在性能短板,因此需要對(duì)大數(shù)據(jù)分析的整個(gè)過程進(jìn)行端到端的全棧時(shí)效優(yōu)化。如圖中所示,自下而上,需要在多模態(tài)存儲(chǔ)、批流融合、機(jī)器學(xué)習(xí)、人工操作各層都進(jìn)行優(yōu)化。對(duì)于多模態(tài)存儲(chǔ),面向應(yīng)用負(fù)載和異構(gòu)硬件特征進(jìn)行自適應(yīng)優(yōu)化;對(duì)于批流融合計(jì)算,在統(tǒng)一表達(dá)基礎(chǔ)上,進(jìn)行系列融合優(yōu)化技術(shù), 包括DAG優(yōu)化、迭代優(yōu)化、部署優(yōu)化、操作符優(yōu)化等;在機(jī)器學(xué)習(xí)層面,進(jìn)行模型優(yōu)化、消息優(yōu)化、梯度優(yōu)化、概率優(yōu)化 等來提高時(shí)效;而且我們也考慮到大數(shù)據(jù)分析過程中用戶人工操作的時(shí)效性問題, 通過智能地進(jìn)行大數(shù)據(jù)分析方法和模型的推薦,來縮減人工操作的 時(shí)間??蓴U(kuò)展FAST系統(tǒng)的第三個(gè)亮點(diǎn)是可擴(kuò)展,由于大數(shù)據(jù)應(yīng)用規(guī)模很大,數(shù)據(jù)增速快,對(duì)系統(tǒng)可擴(kuò)展性的要求非常高,為此我們?cè)谙到y(tǒng)的資源層、 存儲(chǔ)層和計(jì)算層進(jìn)行了全面的擴(kuò)展性優(yōu)化。在資源層,系統(tǒng)都部署在云計(jì)算的虛擬化資源之上,利用了云計(jì)算資源的彈性機(jī)制進(jìn)行系統(tǒng)擴(kuò)展。并在系統(tǒng)中實(shí)現(xiàn)了可伸縮調(diào)整模塊, 能實(shí)時(shí)監(jiān)控軟硬件系統(tǒng)的狀態(tài),按照應(yīng)用需求來自適應(yīng)地進(jìn)行彈性伸縮。在存儲(chǔ)層,分布式存儲(chǔ)系統(tǒng)擴(kuò)展性的關(guān)鍵在于分布式共識(shí)和一致性 協(xié)議(Raft),因此提出了KV-Raft、vRaft等進(jìn)行Raft的擴(kuò)展優(yōu)化。在計(jì)算層,我們擴(kuò)展了機(jī)器學(xué)習(xí)模型的參數(shù)規(guī)模,使系統(tǒng)可以支持 到百億級(jí)別的超大規(guī)模機(jī)器學(xué)習(xí)模型訓(xùn)練,并且性能方面有明顯提 升。亮點(diǎn)成果:融合架構(gòu)大數(shù)據(jù)分析平臺(tái)目前已經(jīng)在阿里巴巴雙十一進(jìn)行示范應(yīng)用。 從2020年11月10日至11月16日一周的時(shí)間,在阿里的生產(chǎn)環(huán)境中,研發(fā) 的系統(tǒng)一直連續(xù)穩(wěn)定運(yùn)行,基于淘寶和天貓的實(shí)際用戶信息進(jìn)行大數(shù)據(jù) 分析,綜合運(yùn)用了本系統(tǒng)的存儲(chǔ)、計(jì)算、機(jī)器學(xué)習(xí)等多個(gè)模塊的能力, 累計(jì)進(jìn)行了184億件商品推薦。同時(shí)在雙十一期間,基于智能交互向?qū)Ъ夹g(shù),也面向電子商務(wù)應(yīng)用 的賣家提供了“生意參謀”應(yīng)用,基于大數(shù)據(jù)分析,幫助賣家分析產(chǎn)品 銷量變化的原因,以及促銷的有效手段等。
中國(guó)人民大學(xué)
2021-04-10