精品无人区无码乱码毛片国产_性做久久久久久免费观看_天堂中文在线资源_7777久久亚洲中文字幕

首頁 自媒自媒體大數(shù)據(jù)棟察正文

為什么大數(shù)據(jù)應(yīng)用需要敏捷?敏捷大數(shù)據(jù)方法論

  前段時間有報道稱,有學(xué)者質(zhì)疑“大數(shù)據(jù)”理論,也有硅谷公司負(fù)責(zé)人質(zhì)疑大數(shù)據(jù)應(yīng)用的效果。結(jié)合2011年Gartner關(guān)于BI(Business Intelligence)應(yīng)用70%-80%都失敗的一個調(diào)查結(jié)論(這里的fail是夸張的說法,更確切地講應(yīng)該是沒有達(dá)到預(yù)期效果),本文就來談?wù)劄槭裁磿霈F(xiàn)這樣的問題,大數(shù)據(jù)應(yīng)用落地的瓶頸是什么?為什么大數(shù)據(jù)應(yīng)用容易失敗?為什么大數(shù)據(jù)應(yīng)用需要敏捷?敏捷大數(shù)據(jù)方法論又是什么,包括那些關(guān)鍵技術(shù),系統(tǒng)架構(gòu)如何設(shè)計等等問題,希望能為業(yè)界大數(shù)據(jù)應(yīng)用落地提供一點(diǎn)有價值的參考。

  大數(shù)據(jù)應(yīng)用落地的主要瓶頸是什么?

  我在前文《論大數(shù)據(jù)的泡沫、價值與應(yīng)用陷阱》有說到,大數(shù)據(jù)現(xiàn)象源于我們對未來不確定性的恐懼,和應(yīng)對軟件在加速吞噬世界(軟件越來越龐雜,操作越來越自動化,數(shù)據(jù)越來越豐富,而大部分人卻對其原理和特性卻知之甚少)這一大背景下的管理失控問題。大數(shù)據(jù)規(guī)律的可預(yù)測性創(chuàng)造了一種新的知識體系和管理思維,但分析模型的黑箱和操作的自動化卻削弱了人類對其深層規(guī)律的理解和探索能力,機(jī)器的量化能力與人的主觀判斷能力短時間內(nèi)還難以有機(jī)融合,大數(shù)據(jù)應(yīng)用不缺預(yù)測模型、計算資源和數(shù)據(jù)科學(xué)家,而是缺乏提出正確問題和利用大數(shù)據(jù)工具解決問題的能力,就好比用大炮沒有打到蚊子,我們不能說大炮沒用,而會說這個人的方法搞錯了。

  “Between 70% to 80% of business intelligence projects fail”- Gartner, Feb. 2011

  大數(shù)據(jù)分析的核心目標(biāo)是,面向過去,發(fā)現(xiàn)數(shù)據(jù)規(guī)律,歸納已知;面向未來,挖掘數(shù)據(jù)趨勢,預(yù)測未知。從而通過大數(shù)據(jù)分析提高對事物的理解和決策處置能力,最終實(shí)現(xiàn)智能化。不管是商業(yè)智能,機(jī)器智能,人工智能,還是智能客服,智能問答,智能推薦,智慧醫(yī)療、智慧交通等相關(guān)技術(shù)和系統(tǒng),其本質(zhì)都是朝著這一目標(biāo)在演進(jìn)。隨著云計算平臺和開源大數(shù)據(jù)系統(tǒng)(如Hadoop、Spark、Storm等)的高速發(fā)展,獲得大數(shù)據(jù)基礎(chǔ)設(shè)施建設(shè)相關(guān)技術(shù)和支持越來越容易。同時,移動互聯(lián)網(wǎng)和物聯(lián)網(wǎng)技術(shù)所具備的全面數(shù)據(jù)采集能力,客觀上促進(jìn)了大數(shù)據(jù)的積累和爆發(fā)。但是,大數(shù)據(jù)應(yīng)用要落地,除了需要上述提出正確問題和利用大數(shù)據(jù)工具解決問題的能力之外,個人認(rèn)為還面臨如下幾個方面的主要瓶頸:

  1)IT向DT(Data Technology,DT)技術(shù)泛型的轉(zhuǎn)變,使得傳統(tǒng)硬件和軟件技術(shù)架構(gòu)面臨挑戰(zhàn),大規(guī)模并行計算、量子計算機(jī)、深度神經(jīng)網(wǎng)絡(luò)芯片、分布式存儲系統(tǒng)、GPU大規(guī)模計算等都是對傳統(tǒng)IT技術(shù)架構(gòu)的顛覆?,F(xiàn)階段各種大數(shù)據(jù)分析相關(guān)的開源技術(shù)和系統(tǒng)百花齊放,大數(shù)據(jù)技術(shù)生態(tài)體系龐雜,技術(shù)門檻較高也間接說明了這一點(diǎn)。研究、研發(fā)人員要跟上這一波技術(shù)變革還需要時間去消化和積累,特別是學(xué)術(shù)界和工業(yè)界的結(jié)合,對大數(shù)據(jù)應(yīng)用來講至關(guān)重要,深度學(xué)習(xí)領(lǐng)域的突破就是例證。如何在掌握有限技術(shù)的條件下(或受制于核心技術(shù)人才的情況下),能快速進(jìn)行大數(shù)據(jù)應(yīng)用研究和落地應(yīng)用,需要從技術(shù)選型角度進(jìn)行深入探討、分析和評估。

  2)傳統(tǒng)商業(yè)智能(Business Intelligence, BI)應(yīng)用的失敗教訓(xùn)太多,項目周期漫長,考驗(yàn)客戶耐性,應(yīng)用投入成本高,最終成果多是昂貴的豪華報表,沒有達(dá)到預(yù)期效果。另外,傳統(tǒng)數(shù)據(jù)倉庫和數(shù)據(jù)集市架構(gòu)下,面對海量數(shù)據(jù)的存儲能力、擴(kuò)展能力、并發(fā)能力弱等問題無法從根本解決。大數(shù)據(jù)分析如何從BI項目中總結(jié)失敗教訓(xùn)和獲得經(jīng)驗(yàn),大數(shù)據(jù)應(yīng)用與傳統(tǒng)BI系統(tǒng)是融合還是代替?企業(yè)大數(shù)據(jù)技術(shù)架構(gòu)如何與發(fā)源于互聯(lián)網(wǎng)巨頭的主流大數(shù)據(jù)技術(shù)框架有機(jī)統(tǒng)一?也還有很多問題需要深入總結(jié),解決不好就會事倍功半。

  3)大數(shù)據(jù)應(yīng)用的標(biāo)準(zhǔn)化和產(chǎn)品化問題。針對大數(shù)據(jù)的多源異構(gòu)、動態(tài)性、關(guān)聯(lián)性等特點(diǎn),對大數(shù)據(jù)分析流程和應(yīng)用進(jìn)行標(biāo)準(zhǔn)化的管理,對離線分析、在線分析、實(shí)時分析、內(nèi)存分析等計算框架的融合處理,對圖像、文本、視頻、音頻、網(wǎng)頁、關(guān)系數(shù)據(jù)庫等多源異構(gòu)數(shù)據(jù)進(jìn)行跨模態(tài)建模,對大數(shù)據(jù)分析結(jié)果的應(yīng)用效果進(jìn)行量化與評價。不管是從技術(shù)選型角度還是業(yè)務(wù)支撐角度,都還有很多問題需要實(shí)戰(zhàn)經(jīng)驗(yàn)的積累和支持,想要一勞永逸地解決不現(xiàn)實(shí)。

  4)除了前述探討的大數(shù)據(jù)應(yīng)用面臨的挑戰(zhàn)之外,從大數(shù)據(jù)架構(gòu)本身的技術(shù)角度分析還需要解決如下幾個關(guān)鍵問題:高可擴(kuò)展性,能支持大規(guī)模數(shù)據(jù)增長和大量業(yè)務(wù)分析的快速擴(kuò)展等;高容錯性和穩(wěn)定性,能支持大數(shù)據(jù)分析的失敗情況和進(jìn)行自動恢復(fù)等;高性能和并行支持,能在海量數(shù)據(jù)條件下快速完成多種計算模型和分析處理;多源異構(gòu)環(huán)境支持,能處理多模態(tài)數(shù)據(jù)和多種分析任務(wù);開放性和共享支持,能提供標(biāo)準(zhǔn)的數(shù)據(jù)和開發(fā)接口,支持?jǐn)?shù)據(jù)和系統(tǒng)集成;效率和成本的控制,能在有限的時間、人力和財力條件下提高系統(tǒng)性能等,這對大數(shù)據(jù)系統(tǒng)架構(gòu)的設(shè)計提出了較高要求。

  5)大數(shù)據(jù)管理思維和開發(fā)、應(yīng)用實(shí)施的脫節(jié),大數(shù)據(jù)強(qiáng)化了定量科學(xué)和客觀方法的地位,但事實(shí)上,現(xiàn)階段很多企業(yè)領(lǐng)導(dǎo),包括技術(shù)人員對大數(shù)據(jù)的處理和使用仍然是主觀性的,而且面對機(jī)器學(xué)習(xí)的黑箱,對模型的缺陷和適用范疇很難有深入把握,這樣的話通過大數(shù)據(jù)挖掘分析量化的結(jié)果也未必更符合客觀事實(shí),大數(shù)據(jù)不等于好數(shù)據(jù),如何切實(shí)輔助決策才是關(guān)鍵。

  再則,大數(shù)據(jù)是非常碎片化的,大數(shù)據(jù)不只是谷歌,亞馬遜,BAT等互聯(lián)網(wǎng)企業(yè),每一個行業(yè)、企業(yè)里面都有它去關(guān)注數(shù)據(jù)的痕跡:一條生產(chǎn)線上的實(shí)時傳感器數(shù)據(jù),車輛身上的傳感數(shù)據(jù),高鐵設(shè)備的運(yùn)行狀態(tài)數(shù)據(jù),交通部門的監(jiān)控數(shù)據(jù)等等;其次,現(xiàn)在的開源大數(shù)據(jù)系統(tǒng)架構(gòu)和工具集來源于互聯(lián)網(wǎng)巨頭,這種技術(shù)架構(gòu)不一定適合傳統(tǒng)企業(yè)和政府關(guān)聯(lián)機(jī)構(gòu),因?yàn)椴煌M織機(jī)構(gòu)所擁有的數(shù)據(jù)類型和結(jié)構(gòu)可能大不相同;再次,從大數(shù)據(jù)應(yīng)用過程和特點(diǎn)來看,數(shù)據(jù)科學(xué)的本質(zhì)是迭代,就好比嬰兒的學(xué)習(xí)一樣,輸入-回應(yīng)-反饋-學(xué)習(xí)-再輸入,持續(xù)訓(xùn)練和學(xué)習(xí)才會產(chǎn)生智能,大數(shù)據(jù)分析系統(tǒng)是一樣的道理,自適應(yīng)優(yōu)化和持續(xù)改進(jìn)是大數(shù)據(jù)系統(tǒng)的必備特征。所以,這就需要大數(shù)據(jù)技術(shù)架構(gòu)具有極強(qiáng)的靈活性、可擴(kuò)展性,或者說敏捷性。

  大數(shù)據(jù)應(yīng)用為什么需要敏捷?

  上述五個方面的大數(shù)據(jù)應(yīng)用瓶頸分析可以看到,大數(shù)據(jù)應(yīng)用要切實(shí)落地并產(chǎn)生應(yīng)有價值還要較長的路要走,當(dāng)然這取決于我們的期望,在《企業(yè)大數(shù)據(jù)應(yīng)用三段論》一文中,有明確的界定,大數(shù)據(jù)應(yīng)用的效果不能輕易否定,當(dāng)然也不能太樂觀,關(guān)鍵還是看處于那個階段,技術(shù)成熟度和設(shè)計研發(fā)能力如何等等。為什么大數(shù)據(jù)需要敏捷,或者說我為什么提出敏捷大數(shù)據(jù),主要基于上述大數(shù)據(jù)應(yīng)用瓶頸的判斷:大數(shù)據(jù)應(yīng)用落地面臨很多現(xiàn)實(shí)問題,首先我們看大數(shù)據(jù)的應(yīng)用過程和特點(diǎn)(如圖1),大數(shù)據(jù)要完成的是一種將各方面源數(shù)據(jù)(零散的、相關(guān)的圍繞某行業(yè)或者某分析主題的數(shù)據(jù))通過ETL組織成為主題數(shù)據(jù),從主題數(shù)據(jù)中提煉信息特征,從特征挖掘中發(fā)現(xiàn)規(guī)律和有價值的知識,就規(guī)律和預(yù)測等知識信息形成決策支持并進(jìn)行應(yīng)用和追蹤評估,最后反饋回大數(shù)據(jù)系統(tǒng)進(jìn)行反復(fù)驗(yàn)證、優(yōu)化并持續(xù)迭代的閉環(huán)信息處理過程。

  

  圖1 大數(shù)據(jù)應(yīng)用金字塔模型

  其次,有沒有通用的大數(shù)據(jù)應(yīng)用架構(gòu)和流程?一般來講,不同行業(yè)、不同企業(yè)、不同應(yīng)用場景,采用的技術(shù)架構(gòu)和分析流程也會有差異;再次,大數(shù)據(jù)應(yīng)用落地需面對的現(xiàn)實(shí)問題眾多,項目周期漫長,考驗(yàn)客戶耐性,技術(shù)生態(tài)龐雜,復(fù)合型人才少,一將難求,應(yīng)用效果如何量化也還沒標(biāo)準(zhǔn),用戶參與度低,難達(dá)預(yù)期目標(biāo),機(jī)器學(xué)習(xí)數(shù)據(jù)實(shí)驗(yàn),如何應(yīng)用于數(shù)據(jù)工程等等問題,對大數(shù)據(jù)分析的系統(tǒng)架構(gòu)、關(guān)鍵技術(shù)及應(yīng)用方法論,提出了較高要求,下面就來看敏捷大數(shù)據(jù)能否解決一些問題。

  敏捷大數(shù)據(jù)方法論

  (1)何為敏捷?

  

?

  何為敏捷,我們先看幾個概念:

  敏捷開發(fā)(Agile Development),以用戶的需求進(jìn)化為核心,采用迭代、循序漸進(jìn)的方法進(jìn)行軟件開發(fā)。在敏捷開發(fā)中,軟件項目在構(gòu)建初期被切分成多個子項目,各個子項目的成果都經(jīng)過測試,具備可視、可集成和可運(yùn)行使用的特征。換言之,就是把一個大項目分為多個相互聯(lián)系,但也可獨(dú)立運(yùn)行的小項目,并分別完成,在此過程中軟件一直處于可使用狀態(tài)。

  敏捷管理(Agile Management),敏捷管理是規(guī)劃和指導(dǎo)項目流程的迭代方法,與敏捷軟件開發(fā)一樣,敏捷項目是在叫做迭代的小型部門中完成的。每個迭代都由項目團(tuán)隊審查和評判,從迭代的評判中獲得的信息用于決定項目的下一個步驟。由于開發(fā)周期短,對需求管理恰當(dāng),敏捷管理正在從軟件研發(fā)行業(yè)延伸到已經(jīng)采取項目化管理的大部分行業(yè)中。

  精益生產(chǎn)(Lean Production),簡稱“精益”,是衍生自日本豐田生產(chǎn)方式的一種管理哲學(xué),由美國麻省理工學(xué)院教授詹姆斯.P.沃麥克等專家通過“國際汽車計劃(IMVP)”對全世界17個國家90多個汽車制造廠的調(diào)查和對比分析,認(rèn)為日本豐田汽車公司的生產(chǎn)方式是最適用于現(xiàn)代制造企業(yè)的一種生產(chǎn)組織管理方式,精益生產(chǎn)是通過系統(tǒng)結(jié)構(gòu)、人員組織、運(yùn)行方式和市場供求等方面的變革,使生產(chǎn)系統(tǒng)能很快適應(yīng)用戶需求不斷變化,并能使生產(chǎn)過程中一切無用、多余的東西被精簡,最終達(dá)到包括市場供銷在內(nèi)的生產(chǎn)的各方面最好結(jié)果的一種生產(chǎn)管理方式。

  精益思維(Lean Thinking)和精益管理(Lean Management),源于精益生產(chǎn),精益管理由最初的在生產(chǎn)系統(tǒng)的管理實(shí)踐成功,已經(jīng)逐步延伸到企業(yè)的各項管理業(yè)務(wù),也由最初的具體業(yè)務(wù)管理方法,上升為戰(zhàn)略管理理念。精益管理要求企業(yè)的各項活動都必須運(yùn)用“精益思維” (Lean Thinking)?!熬嫠季S”的核心就是以最小資源投入,包括人力、設(shè)備、資金、材料、時間和空間, 創(chuàng)造出盡可能多的價值,為顧客提供新產(chǎn)品和及時的服務(wù)。

  

  圖. 現(xiàn)代軟件工程,基礎(chǔ)技術(shù)工具棧已經(jīng)很成熟,搭積木式敏捷開發(fā)與精益制造有著相似理念

  從上述概念定義可以看出,敏捷和精益是對孿生姐妹,其關(guān)鍵詞涉及需求進(jìn)化,迭代,可視化,循序漸進(jìn),可集成可運(yùn)行,精益,最小資源投入等。單體應(yīng)用系統(tǒng)建設(shè),傳統(tǒng)軟件工程對敏捷開發(fā)和精益管理思想的需求并不迫切,而面對多源、異構(gòu)、協(xié)作式大數(shù)據(jù)系統(tǒng)的架構(gòu)設(shè)計、研發(fā)和項目實(shí)施來講,敏捷和精益設(shè)計理念至關(guān)重要,為什么這樣講?下圖是典型的傳統(tǒng)信息化技術(shù)架構(gòu)與大數(shù)據(jù)系統(tǒng)架構(gòu)的一個對比,有經(jīng)驗(yàn)的朋友們應(yīng)該可以看出一些端倪。

  

  圖2 傳統(tǒng)信息系統(tǒng)與大數(shù)據(jù)系統(tǒng)架構(gòu)對比

  上圖左邊部分為傳統(tǒng)信息化技術(shù)架構(gòu),右邊部分為常見大數(shù)據(jù)系統(tǒng)架構(gòu),當(dāng)然其中具體的技術(shù)組件選型根據(jù)不同的需求也不一樣,這種架構(gòu)不是固定的,其中每個組件至少有幾個替代品,而且可以根據(jù)需要進(jìn)行擴(kuò)展。從這個圖我們可以得出這樣的結(jié)論,傳統(tǒng)信息系統(tǒng)可以一人打天下,而大數(shù)據(jù)系統(tǒng)的核心思想?yún)s是分布式和團(tuán)結(jié)協(xié)作,一個人的力量再大,智慧再高,精力再強(qiáng),也不如一群人有效整合后的力量大,而大數(shù)據(jù)系統(tǒng)架構(gòu)就是負(fù)責(zé)多方面的整合(Hadoop,Spark等大數(shù)據(jù)基礎(chǔ)系統(tǒng)架構(gòu)同理,如圖3-Hadoop系統(tǒng)架構(gòu)示意圖),換句話說,這就像是軟件研發(fā)或生產(chǎn)過程中的敏捷和精益管理,由公司大領(lǐng)導(dǎo)(Master)進(jìn)行分配任務(wù),人員調(diào)配,每位員工(slave)努力完成自己負(fù)責(zé)的小目標(biāo)工作,各級主管進(jìn)行橫向和縱向協(xié)同,有效整合起來就是公司的大目標(biāo),可見大數(shù)據(jù)系統(tǒng)架構(gòu)的演變已經(jīng)是很接近人類社會協(xié)作的思想了。而要有效支撐大數(shù)據(jù)系統(tǒng)架構(gòu)的分布式協(xié)作能力,敏捷和精益設(shè)計思想是很有必要的參考。

  

  圖3 Hadoop系統(tǒng)架構(gòu)示意圖

  (2)敏捷大數(shù)據(jù)定義

  那什么是敏捷大數(shù)據(jù)呢,本文暫且給出一個初步的定義(還不夠成熟):“敏捷大數(shù)據(jù)是基于數(shù)據(jù)科學(xué)的迭代性本質(zhì)和敏捷研發(fā)管理思想,利用構(gòu)件化、服務(wù)化和容器化等技術(shù),對大數(shù)據(jù)系統(tǒng)架構(gòu)和關(guān)鍵組件協(xié)作等進(jìn)行精益設(shè)計,逐步實(shí)現(xiàn)多層次數(shù)據(jù)的融合處理和多種計算框架、模型的擴(kuò)展和高效管理,快速響應(yīng)大數(shù)據(jù)分析需求,快速構(gòu)建大數(shù)據(jù)生產(chǎn)系統(tǒng),快速迭代大數(shù)據(jù)分析能力,從而提升大數(shù)據(jù)系統(tǒng)的分析效率和大數(shù)據(jù)決策價值”。敏捷大數(shù)據(jù)的核心要素遵從SFV原則(Small,F(xiàn)ast,Validation, SFV):一是小、二是快、三是證,小的業(yè)務(wù)分析目標(biāo)切入,快速出原型快速迭代,證明有效之后再擴(kuò)張。從某種程度上講,傳統(tǒng)BI項目的失敗很多是沒有把握好這三個原則,而互聯(lián)網(wǎng)企業(yè)的大數(shù)據(jù)系統(tǒng)能成功,能使開源大數(shù)據(jù)技術(shù)百花齊放,是因?yàn)榘盐蘸昧诉@三個原則。

  敏捷大數(shù)據(jù)要解決如下關(guān)鍵問題:如何實(shí)現(xiàn)統(tǒng)一的、標(biāo)準(zhǔn)化的、模塊化、可配置的大數(shù)據(jù)架構(gòu),以解決不同類型的異構(gòu)子系統(tǒng)之間難以有效整合的問題。應(yīng)用功能可以使用已有的功能組件組合而成,通過服務(wù)復(fù)用降低成本,在組件之間交換的數(shù)據(jù)形式應(yīng)當(dāng)標(biāo)準(zhǔn)化和接口化;組件的組合只需少量編程或配置便可以完成,常用模型和工具的集成標(biāo)準(zhǔn)化,如何簡化使用,可以對非程序員提供開箱即用的數(shù)據(jù)挖掘和分析能力;大數(shù)據(jù)應(yīng)用全程(采集、存儲、分析、管理)可視化操作?;跀?shù)據(jù)科學(xué)的迭代性本質(zhì)和利用高效組件化工具,對大數(shù)據(jù)各功能子系統(tǒng)(模塊)進(jìn)行組件化,模型標(biāo)準(zhǔn)化設(shè)計,并根據(jù)實(shí)際需求快速選型、快速配置、快速搭建大數(shù)據(jù)原型系統(tǒng),快速迭代大數(shù)據(jù)分析結(jié)果,并順應(yīng)不斷變化的需求,盡快將原型轉(zhuǎn)化成生產(chǎn)系統(tǒng)。在快速迭代、快速反饋、閉環(huán)驗(yàn)證過程中,讓客戶逐步完成大數(shù)據(jù)分析的系統(tǒng)思維和管理思維變革,天下武功,唯快不破,快小證原則和精益設(shè)計,這是敏捷大數(shù)據(jù)應(yīng)用的核心目標(biāo)。

  

  圖4 敏捷迭代開發(fā)示意圖

  (3)敏捷大數(shù)據(jù)流程優(yōu)化

  根據(jù)敏捷大數(shù)據(jù)快、小、證SFV原則,我們對傳統(tǒng)的跨行業(yè)數(shù)據(jù)挖掘標(biāo)準(zhǔn)流程(Cross-industry Standard Process for Data Mining ,CRISP-DM)進(jìn)行了改進(jìn),提出了基于微服務(wù)和容器(后續(xù)敏捷大數(shù)據(jù)關(guān)鍵技術(shù)章節(jié)會做詳細(xì)介紹)的敏捷大數(shù)據(jù)處理流程(Agile Big Data Processing based on Micro-services),如下圖:

  

  圖5. CRISP-DM流程與敏捷大數(shù)據(jù)處理流程

  敏捷大數(shù)據(jù)處理流程相比傳統(tǒng)數(shù)據(jù)挖掘流程,從兩個層面進(jìn)行了擴(kuò)展:首先是架構(gòu)上采用基于容器的微服務(wù)技術(shù)進(jìn)行支撐;其次針對傳統(tǒng)數(shù)據(jù)挖掘模型、系統(tǒng)和現(xiàn)實(shí)決策反饋的脫節(jié)問題,根據(jù)數(shù)據(jù)科學(xué)迭代性本質(zhì)特點(diǎn),對模型系統(tǒng)和現(xiàn)實(shí)決策反饋兩個過程分別進(jìn)行自適應(yīng)迭代升級和智能決策進(jìn)化支持。通過這種擴(kuò)展,使得敏捷大數(shù)據(jù)方法論與傳統(tǒng)數(shù)據(jù)挖掘技術(shù),以及和新興的主流大數(shù)據(jù)框架,能在架構(gòu)和流程上進(jìn)行互補(bǔ)和融合。要實(shí)現(xiàn)敏捷大數(shù)據(jù)SFV原則,敏捷大數(shù)據(jù)架構(gòu)的設(shè)計至關(guān)重要。敏捷大數(shù)據(jù)架構(gòu)需要在組件化管理、數(shù)據(jù)融合、資源調(diào)度、服務(wù)抽象、部署運(yùn)維、計算模型和標(biāo)準(zhǔn)數(shù)據(jù)集的服務(wù)化,以及敏捷大數(shù)據(jù)處理流程等多個層面,進(jìn)行科學(xué)有效地設(shè)計支撐。核心目標(biāo)是要實(shí)現(xiàn)大數(shù)據(jù)的融合處理和分析功能的服務(wù)化、標(biāo)準(zhǔn)化和流程化,基于數(shù)據(jù)融合和微服務(wù)技術(shù),設(shè)計模塊化、可配置的大數(shù)據(jù)分析平臺,對微服務(wù)的構(gòu)建和管理進(jìn)行快速實(shí)現(xiàn),通過各種微服務(wù)的劃分、組合、編排和動態(tài)配置,形成可復(fù)用的、可擴(kuò)展的和可靈活調(diào)整的大數(shù)據(jù)分析系統(tǒng),從而實(shí)現(xiàn)敏捷大數(shù)據(jù)目標(biāo)。

  4.敏捷大數(shù)據(jù)關(guān)鍵技術(shù)

  大數(shù)據(jù)時代,各種新興技術(shù)和計算框架層出不窮,加之分析需求的不斷變化,如何使大數(shù)據(jù)架構(gòu)能隨時調(diào)整以適應(yīng)業(yè)務(wù)需求,跟上技術(shù)更新的步伐,是大數(shù)據(jù)應(yīng)用要解決的關(guān)鍵問題,這也是為什么提出敏捷大數(shù)據(jù)架構(gòu)的本質(zhì)原因。面對大型企業(yè)動輒數(shù)十個上百個信息系統(tǒng),如何通過跨物理、虛擬、公共和私有云環(huán)境實(shí)現(xiàn)一致性、互操作性和可移植性,對IT基礎(chǔ)設(shè)施來講是極大的挑戰(zhàn)。所以微服務(wù)和容器技術(shù)應(yīng)運(yùn)而生,微服務(wù)實(shí)現(xiàn)系統(tǒng)模塊的組件化和獨(dú)立自治運(yùn)行,容器能實(shí)現(xiàn)輕量級的虛擬化,而且完全使用沙箱機(jī)制,相互之間沒有任何接口。微服務(wù)、容器與云計算技術(shù)的天然結(jié)合,及其快速的研發(fā)、部署、維護(hù)優(yōu)勢,使得基于微服務(wù)和容器的敏捷大數(shù)據(jù)應(yīng)用潛力巨大。

  (1)微服務(wù)技術(shù)

  服務(wù)的本質(zhì)就是行為的抽象,面向?qū)ο蟮姆椒ㄊ菑膶ο髮?shí)體這個維度對世界進(jìn)行描述,而面向服務(wù)(SOA)則是從行為模式這個維度對世界進(jìn)行描述,本質(zhì)上是兩種不同維度的描述方法。

  

  圖6. 軟件服務(wù)化發(fā)展歷程

  由于數(shù)據(jù)科學(xué)的迭代性本質(zhì),大數(shù)據(jù)分析即服務(wù)成為應(yīng)用熱點(diǎn),而微服務(wù)與容器技術(shù)能有效支持本文提出的敏捷大數(shù)據(jù)SFV核心原則。近年來,微服務(wù)(設(shè)計思想發(fā)源于康威定律,如圖7)成為互聯(lián)網(wǎng)和大數(shù)據(jù)企業(yè)的研究和設(shè)計熱點(diǎn),諸如谷歌、亞馬遜、Facebook、百度、京東、攜程等公司都在采用微服務(wù)理論和技術(shù)進(jìn)行產(chǎn)品的設(shè)計、研發(fā)和部署。Netflix公司的Adrian Cockcroft將微服務(wù)稱為“細(xì)化SOA(Service Oriented Architecture, SOA)”,并認(rèn)為這是一套具備開創(chuàng)意義的新型架構(gòu)。敏捷之父Martin Fowler在他的《Micro services》一文中給出了微服務(wù)的定義,概括來說,微服務(wù)設(shè)計思想是一種使用若干小服務(wù)開發(fā)龐大應(yīng)用的方法,每個服務(wù)運(yùn)行在自己的進(jìn)程中,通過輕量級的通信機(jī)制進(jìn)行信息交互,每個微服務(wù)的粒度基于業(yè)務(wù)能力大小進(jìn)行構(gòu)建,并可以由不同的程序語言實(shí)現(xiàn),構(gòu)建的服務(wù)鏈能夠通過容器等技術(shù)進(jìn)行自動化部署。

  

  圖7. 康威定律(Conway’s Law),系統(tǒng)的結(jié)構(gòu)受限于設(shè)計這個系統(tǒng)的組織的溝通結(jié)構(gòu)。由于系統(tǒng)的結(jié)構(gòu)可能會隨著設(shè)計的深入而變化,所以必須保持設(shè)計的精簡與靈活。

  從上述微服務(wù)定義可以看到,去中心化、原子化、獨(dú)立自治、快速組合、自動部署等特性是微服務(wù)技術(shù)的核心要素,中心思想是將一個單體應(yīng)用構(gòu)架打散,把原來龐大的應(yīng)用層功能切分成粒度較小的微服務(wù)模塊,數(shù)據(jù)庫也按微服務(wù)功能單元進(jìn)行相應(yīng)的拆分進(jìn)行支持(如圖8所示),采用基于云的容器技術(shù)單獨(dú)運(yùn)行這些服務(wù)模塊,通過網(wǎng)絡(luò)和輕量級通信機(jī)制將這些分解的服務(wù)模塊協(xié)同連接起來,形成微服務(wù)簇和網(wǎng)絡(luò),完成大型復(fù)雜任務(wù),這種通過將復(fù)雜系統(tǒng)切分成若干小的微服務(wù)模塊的方式,其分布式、低耦合架構(gòu)能極大地適應(yīng)大數(shù)據(jù)分布式處理特性。

  

  圖8 傳統(tǒng)單體應(yīng)用架構(gòu)與微服務(wù)架構(gòu)的區(qū)別

  (2)容器技術(shù)

  微服務(wù)技術(shù)采用類似搭積木的構(gòu)建方法,使得服務(wù)之間不相互影響,而且同一個系統(tǒng)的微服務(wù)可以采用不同的開發(fā)語言和數(shù)據(jù)庫技術(shù)。但是面對大型企業(yè)動輒數(shù)十、上百個信息系統(tǒng),如何通過跨物理、虛擬、公共和私有云環(huán)境實(shí)現(xiàn)一致性、互操作性和可移植性,對IT基礎(chǔ)設(shè)施來講是極大的挑戰(zhàn)。所以容器技術(shù)應(yīng)運(yùn)而生,容器最早由Docker公司提出并應(yīng)用于自家的PaaS云服務(wù)平臺,近年來獲得廣泛認(rèn)可,很多大型企業(yè)開始將單體應(yīng)用系統(tǒng)微服務(wù)化,并部署在容器中。容器基于操作系統(tǒng)之上能實(shí)現(xiàn)相比傳統(tǒng)虛擬化技術(shù)(如VMware)更輕量級的虛擬化,而且完全使用沙箱機(jī)制,相互之間沒有接口。Hadoop的子系統(tǒng)Kubernetes已經(jīng)能支持基于云計算和Docker容器技術(shù)的微服務(wù)開發(fā)和部署,容器技術(shù)與云計算的天然結(jié)合及其快速的研發(fā)、部署、維護(hù)優(yōu)勢,對于微服務(wù)和敏捷大數(shù)據(jù)架構(gòu)的設(shè)計和實(shí)現(xiàn)具有重要支撐作用。

  

  圖9 Docker容器架構(gòu)圖

  (3)數(shù)據(jù)融合技術(shù)

  由于大數(shù)據(jù)呈現(xiàn)的關(guān)聯(lián)性、動態(tài)性、多源異構(gòu)性等特點(diǎn),導(dǎo)致大數(shù)據(jù)的存儲、挖掘、分析和理解面臨極大挑戰(zhàn)。如何對多種形態(tài)格式的數(shù)據(jù)進(jìn)行統(tǒng)一標(biāo)準(zhǔn)化融合處理,是敏捷大數(shù)據(jù)要解決的關(guān)鍵問題。與一般的大數(shù)據(jù)融合目標(biāo)不同,本文主要從構(gòu)建標(biāo)準(zhǔn)數(shù)據(jù)集的角度進(jìn)行大數(shù)據(jù)多粒度融合,通過構(gòu)建統(tǒng)一數(shù)據(jù)單元(unified data units,UDU)來支持多模態(tài)特征融合和多種類型、結(jié)構(gòu)數(shù)據(jù)集的封裝融合。將多源異構(gòu)數(shù)據(jù)進(jìn)行抽取、融合、集成為支持不同計算模型處理的UDU數(shù)據(jù)集,是多粒度信息融合技術(shù)的核心目標(biāo)。統(tǒng)一數(shù)據(jù)單元是獨(dú)立的和靈活的實(shí)體數(shù)據(jù)集,可隨數(shù)據(jù)源和分析需求的變化進(jìn)行快速重組、調(diào)整和更新。通過信息融合形成的UDU標(biāo)準(zhǔn)數(shù)據(jù)集,是進(jìn)行敏捷大數(shù)據(jù)處理的基礎(chǔ)。

  針對機(jī)器學(xué)習(xí)各類模型的數(shù)據(jù)適配特點(diǎn),我們提出了一種標(biāo)準(zhǔn)數(shù)據(jù)集定義:統(tǒng)一數(shù)據(jù)單元(UDU)對大數(shù)據(jù)多個層次和粒度的信息進(jìn)行融合處理。特別是對多模態(tài)數(shù)據(jù),通過統(tǒng)一數(shù)據(jù)單元設(shè)計方法能實(shí)現(xiàn)數(shù)據(jù)的存儲優(yōu)化和機(jī)器學(xué)習(xí)模型數(shù)據(jù)輸入的標(biāo)準(zhǔn)化,以統(tǒng)一數(shù)據(jù)單元作為敏捷大數(shù)據(jù)系統(tǒng)的基本數(shù)據(jù)組織和處理單元,能提高大數(shù)據(jù)分析模型和算法的適應(yīng)性和敏捷性,提升大數(shù)據(jù)處理能力。多粒度信息融合設(shè)計如下圖所示。

  

  圖10 大數(shù)據(jù)多粒度信息融合設(shè)計

  上圖的UDU統(tǒng)一數(shù)據(jù)單元至少可以支持三個層面的大數(shù)據(jù)融合,一是特征級融合,支持跨模態(tài)特征(如時間+空間特征)的大數(shù)據(jù)計算模型處理;二是數(shù)據(jù)級融合,支持多維數(shù)據(jù)立方體(Data Cube),數(shù)據(jù)集市(星型,雪花型模式)等數(shù)據(jù)模式和數(shù)據(jù)結(jié)構(gòu)的融合;三是模型級融合,從不同模型任務(wù)(如分類、聚類、預(yù)測、關(guān)聯(lián)等模型)角度支持相應(yīng)的數(shù)據(jù)單元處理。設(shè)計和構(gòu)造大數(shù)據(jù)統(tǒng)一數(shù)據(jù)單元,需進(jìn)行如下三個環(huán)節(jié)的處理。

  1)特征抽?。簩Y(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行數(shù)據(jù)集成和特征抽取,抽取出數(shù)據(jù)中的各類不同特征,包括時間特征、空間特征或其他全局特征等,實(shí)現(xiàn)對數(shù)據(jù)相關(guān)的位置屬性、時間空間關(guān)聯(lián)屬性和其他觀測屬性等的特征描述。

  2)融合封裝:抽取出來的各類數(shù)據(jù)特征,或者初步預(yù)處理后的數(shù)據(jù),根據(jù)不同的計算模型數(shù)據(jù)處理特點(diǎn)和要求,封裝成結(jié)構(gòu)和格式統(tǒng)一的數(shù)據(jù)處理單元,形成標(biāo)準(zhǔn)分析數(shù)據(jù)集,為上層的挖掘計算服務(wù)提供快速數(shù)據(jù)適配??梢酝ㄟ^元數(shù)據(jù)定義方法和XML/JSON等技術(shù),實(shí)現(xiàn)不同種類的統(tǒng)一數(shù)據(jù)單元定義,對每類統(tǒng)一數(shù)據(jù)單元進(jìn)行基本信息和各類屬性定義和描述,包括標(biāo)識ID、基本屬性、語義屬性、結(jié)構(gòu)屬性等內(nèi)容。3)服務(wù)接口:封裝好的統(tǒng)一數(shù)據(jù)單元數(shù)據(jù)集,針對不同的挖掘計算服務(wù)模型實(shí)現(xiàn)快速數(shù)據(jù)適配,設(shè)計統(tǒng)一的數(shù)據(jù)單元調(diào)用接口,通過接口定義和參數(shù)設(shè)置對封裝數(shù)據(jù)單元進(jìn)行解析,并對數(shù)據(jù)集各類屬性特征、結(jié)構(gòu)信息等進(jìn)行提取。

  敏捷大數(shù)據(jù)系統(tǒng)架構(gòu)

  根據(jù)上述敏捷大數(shù)據(jù)關(guān)鍵技術(shù)的分析,如何設(shè)計實(shí)現(xiàn)有效的敏捷大數(shù)據(jù)系統(tǒng)架構(gòu)是敏捷大數(shù)據(jù)應(yīng)用的重點(diǎn)內(nèi)容。下面以交通大數(shù)據(jù)處理為例,對其敏捷處理架構(gòu)進(jìn)行了初步設(shè)計。由于交通大數(shù)據(jù)的復(fù)雜性和分析目標(biāo)的多樣性,對傳統(tǒng)的數(shù)據(jù)挖掘分析模式和大數(shù)據(jù)技術(shù)架構(gòu)提出了挑戰(zhàn)。例如,針對海量交通歷史靜態(tài)數(shù)據(jù),需采用離線批處理技術(shù),而動態(tài)實(shí)時流交通數(shù)據(jù)則需要流式計算框架進(jìn)行處理。另外,對文本、圖像、視頻、傳感器等多模態(tài)數(shù)據(jù)需采用不同的機(jī)器學(xué)習(xí)模型進(jìn)行處理,如何進(jìn)行跨模態(tài)的融合計算分析也是應(yīng)用難點(diǎn)。針對交通大數(shù)據(jù)分析需求的變更和擴(kuò)展,大數(shù)據(jù)系統(tǒng)如何進(jìn)行快速響應(yīng)和功能、模型的擴(kuò)充和調(diào)整,是面向交通的敏捷大數(shù)據(jù)架構(gòu)設(shè)計要解決的關(guān)鍵問題。

  換句話說,要能根據(jù)不同的交通大數(shù)據(jù)分析需求設(shè)計靈活的處理架構(gòu)進(jìn)行支持,大數(shù)據(jù)架構(gòu)要能從采集、存儲、計算、應(yīng)用多個層面,滿足不同分析需求的變更或擴(kuò)張?;诿艚荽髷?shù)據(jù)方法論及其關(guān)鍵技術(shù)的分析和研究,從數(shù)據(jù)采集集成、大規(guī)模數(shù)據(jù)存儲和數(shù)據(jù)融合、多模式/多模態(tài)計算微服務(wù)、數(shù)據(jù)應(yīng)用4個層面進(jìn)行了敏捷大數(shù)據(jù)架構(gòu)設(shè)計。通過基于多粒度大數(shù)據(jù)集成融合構(gòu)建統(tǒng)一數(shù)據(jù)單元,形成標(biāo)準(zhǔn)數(shù)據(jù)集,通過基于微服務(wù)的計算模型抽象和匯聚層處理,實(shí)現(xiàn)交通大數(shù)據(jù)挖掘的敏捷化、服務(wù)化。采用標(biāo)準(zhǔn)接口和插件開發(fā)的方式,對大數(shù)據(jù)主流處理框架(如Hadoop、Spark、Storm等)能進(jìn)行統(tǒng)一配置管理,基于即插即用的構(gòu)件化和服務(wù)化設(shè)計,各層子系統(tǒng)和組件可根據(jù)分析目標(biāo)進(jìn)行快速選型、靈活配置,構(gòu)建原型和迭代升級(如下圖中根據(jù)兩條虛線不同的設(shè)計路徑,可以快速配置實(shí)現(xiàn)歷史數(shù)據(jù)庫數(shù)據(jù)的批處理分析,或公網(wǎng)采集數(shù)據(jù)的流處理分析),敏捷大數(shù)據(jù)總體架構(gòu)設(shè)計如下圖所示。

  

  圖11 面向交通的敏捷大數(shù)據(jù)總體架構(gòu)設(shè)計

  1)數(shù)據(jù)采集層:分3個層面的采集技術(shù)進(jìn)行支持,一是傳統(tǒng)業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫和半結(jié)構(gòu)化、結(jié)構(gòu)化數(shù)據(jù)的采集和集成,如采用Sqoop技術(shù)進(jìn)行關(guān)系數(shù)據(jù)庫和Hadoop系統(tǒng)之間的數(shù)據(jù)抽取和交換;二是交通實(shí)時流數(shù)據(jù)的采集,包括實(shí)時傳感器數(shù)據(jù)、定位軌跡數(shù)據(jù)和其他實(shí)時流數(shù)據(jù);三是交通公共數(shù)據(jù)的采集,包括公網(wǎng)的數(shù)據(jù)爬取、開放平臺的數(shù)據(jù)接口、行業(yè)公共數(shù)據(jù)庫的數(shù)據(jù)交換等。對采集到的數(shù)據(jù)需進(jìn)行提取、轉(zhuǎn)換和加載(extract-transform-load,ETL)處理,包括數(shù)據(jù)抽取、轉(zhuǎn)換、清洗和隱私脫敏等預(yù)處理工作,預(yù)處理集成后的數(shù)據(jù)進(jìn)入交通大數(shù)據(jù)云存儲中心。

  2)數(shù)據(jù)存儲層:交通領(lǐng)域數(shù)據(jù)規(guī)模巨大,數(shù)據(jù)存儲層需設(shè)計基于云計算的分布式云存儲系統(tǒng),以支持海量數(shù)據(jù)的存儲擴(kuò)展。提供基于云的列式存儲、NoSQL存儲或數(shù)據(jù)倉庫存儲能力;根據(jù)業(yè)務(wù)需求和快速配置,可切換相應(yīng)的分布式存儲模式,還可根據(jù)需要對傳統(tǒng)BI系統(tǒng)的數(shù)據(jù)倉庫和數(shù)據(jù)集市進(jìn)行集成。利用Hadoop集群提供PB級存儲能力擴(kuò)展,同時Hadoop YARN 和Spark Mesos等集群資源管理框架可支持多種存儲模式和計算模式(主要對存儲和計算兩個層面資源進(jìn)行管理,如圖中雙向箭頭所示)的云資源調(diào)度。在此基礎(chǔ)上,對各類存儲數(shù)據(jù)進(jìn)行多粒度信息融合,構(gòu)建統(tǒng)一數(shù)據(jù)處理單元,為計算服務(wù)層提供標(biāo)準(zhǔn)化的分析數(shù)據(jù)集。

  3)數(shù)據(jù)計算層:針對交通大數(shù)據(jù)多源、異構(gòu)、海量等特征,傳統(tǒng)的計算模型難以直接處理。數(shù)據(jù)計算層需滿足主流大數(shù)據(jù)處理框架的各種計算模型與方法實(shí)現(xiàn),如基于云計算并行框架,實(shí)現(xiàn)基于Hadoop批處理、Storm流處理、Spark內(nèi)存處理的高效數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)。數(shù)據(jù)計算層采用基于統(tǒng)一數(shù)據(jù)處理單元和計算模式、模型微服務(wù)化的大數(shù)據(jù)分析框架,通過構(gòu)建多種微服務(wù)簇網(wǎng)絡(luò)(主要分計算微服務(wù)、數(shù)據(jù)微服務(wù)和流程微服務(wù),涵蓋存儲和計算兩個層面,如圖中雙向箭頭所示),為應(yīng)用層提供支持MapReduce、Storm、Spark等多種計算模式下的多種數(shù)據(jù)挖掘模型與方法(如分類、聚類、序列等);根據(jù)大數(shù)據(jù)分析需求和數(shù)據(jù)特征,可基于組件配置和服務(wù)治理技術(shù)進(jìn)行各類服務(wù)的快速切換和靈活管理。

  4)數(shù)據(jù)應(yīng)用層:數(shù)據(jù)應(yīng)用層首先要滿足智慧交通各類大數(shù)據(jù)分析需求,包括基本的可視化與查詢、展示、探索等,分析結(jié)果能結(jié)合知識庫應(yīng)用于決策支持。另外,大數(shù)據(jù)系統(tǒng)本身管理方面,針對構(gòu)件化和微服務(wù)設(shè)計,需對相關(guān)中間件進(jìn)行設(shè)計,實(shí)現(xiàn)服務(wù)治理、組件配置、安全、接口等功能,以支撐存儲層和計算層各類微服務(wù)的敏捷管理。

  敏捷大數(shù)據(jù)架構(gòu)的關(guān)鍵內(nèi)容除了數(shù)據(jù)融合UDU層面之外,另外一個關(guān)鍵環(huán)節(jié)就是對多種計算模式框架、多種計算模型的微服務(wù)化設(shè)計,包括計算框架、模型和算法的微服務(wù)化、數(shù)據(jù)獲取調(diào)用的微服化和分析流程的微服務(wù)化等層面。其核心是計算微服務(wù),如MapReduce批處理服務(wù)、Storm流處理服務(wù)、Spark內(nèi)存處理服務(wù),每種大的計算框架微服務(wù)下包含具體挖掘模型等小粒度的計算微服務(wù)支持(如分類模型服務(wù)、序列模型服務(wù))等。由于微服務(wù)詳細(xì)技術(shù)涉及面比較廣,包括微服務(wù)的注冊、定位、發(fā)現(xiàn)和搜索(基于分布式一致算法Paxos和Zookeeper框架等),微服務(wù)的輕量級通信機(jī)制如REST(Representational State Transfer)、RPC(Remote Procedure Call Protocol)、IPC(Inter-Process Communication)等,微服務(wù)的容錯處理(熔斷、限流、負(fù)載均衡等),微服務(wù)容器化和服務(wù)的測試、部署等方面。由于篇幅原因,各方面的技術(shù)細(xì)節(jié)這里不做贅述,大家可以參考專業(yè)數(shù)據(jù)進(jìn)行了解。在敏捷大數(shù)據(jù)架構(gòu)和數(shù)據(jù)融合統(tǒng)一數(shù)據(jù)單元基礎(chǔ)上,進(jìn)行了大數(shù)據(jù)分析層的微服務(wù)設(shè)計,如下圖。

  

  圖12 面向交通的大數(shù)據(jù)分析微服務(wù)化設(shè)計

  大數(shù)據(jù)分析微服務(wù)化的核心理念是一個服務(wù)只專注做好一類或一個分析,服務(wù)的粒度和分析功能大小、邊界要匹配,服務(wù)方(計算微服務(wù))和消費(fèi)方(基于微服務(wù)的分析功能)要能解耦,即調(diào)整或升級一個微服務(wù)不能影響其他微服務(wù)。大數(shù)據(jù)分析微服務(wù)設(shè)計主要內(nèi)容包括如下幾個方面。

  1)大數(shù)據(jù)分析業(yè)務(wù)抽象和微服務(wù)劃分:按多模式計算框架分,有MapReduce批處理框架、Storm流式處理框架、Spark內(nèi)存處理框架、圖計算框架等;按挖掘模型分,有分類、聚類、序列、多模態(tài)、多任務(wù)等不同種類計算模型。針對交通大數(shù)據(jù)各類分析需求和數(shù)據(jù)處理特點(diǎn),進(jìn)行大數(shù)據(jù)業(yè)務(wù)分析和抽象建模,并選擇相應(yīng)的計算模型和計算框架進(jìn)行支撐,再決定需要哪些微服務(wù),并實(shí)現(xiàn)微服務(wù)的劃分和組合,設(shè)定好微服務(wù)網(wǎng)絡(luò)的總體設(shè)計目標(biāo),并通過統(tǒng)一的微服務(wù)接口(Microservices API Gateway)進(jìn)行調(diào)用。

  2)微服務(wù)簇設(shè)計及契約接口定義:針對大數(shù)據(jù)處理特點(diǎn),服務(wù)層中的微服務(wù)分3類進(jìn)行規(guī)劃設(shè)計,數(shù)據(jù)微服務(wù)簇負(fù)責(zé)從UDU標(biāo)準(zhǔn)數(shù)據(jù)集中進(jìn)行數(shù)據(jù)獲取、數(shù)據(jù)同步和更新等操作;計算微服務(wù)簇是敏捷大數(shù)據(jù)處理的核心,按多模式計算框架和多類計算模型兩個維度進(jìn)行挖掘分析服務(wù)的統(tǒng)籌設(shè)計;流程微服務(wù)簇負(fù)責(zé)數(shù)據(jù)微服務(wù)、計算微服務(wù)的協(xié)同處理,同時對系統(tǒng)組件的配置管理和調(diào)度進(jìn)行支持。各類微服務(wù)通過REST、RPC等輕量級通信機(jī)制和MessageBroker等消息服務(wù)進(jìn)行交互和聯(lián)系[14],構(gòu)建微服務(wù)簇網(wǎng)絡(luò),并通過服務(wù)路由進(jìn)行統(tǒng)一管理和調(diào)度。

  3)微服務(wù)治理和容器部署:由各類微服務(wù)簇連接成的微服務(wù)網(wǎng)絡(luò),其高效協(xié)調(diào)工作離不開微服務(wù)治理技術(shù)和容器管理技術(shù)。通過服務(wù)路由和服務(wù)治理負(fù)責(zé)各種大小微服務(wù)的注冊、搜索、發(fā)現(xiàn)、通信和統(tǒng)一配置,最后基于云計算和容器技術(shù)進(jìn)行微服務(wù)的自動部署和動態(tài)管理。

  敏捷大數(shù)據(jù)應(yīng)用評述

  本文提出的敏捷大數(shù)據(jù)架構(gòu)在一定程度上實(shí)現(xiàn)了大數(shù)據(jù)融合處理和挖掘計算的服務(wù)化、標(biāo)準(zhǔn)化和流程化?;诮y(tǒng)一數(shù)據(jù)單元和計算、流程微服務(wù)設(shè)計思想,對微服務(wù)的構(gòu)建和管理進(jìn)行快速實(shí)現(xiàn),通過各種微服務(wù)的劃分、組合、編排和動態(tài)配置,能構(gòu)建模塊化、可配置、可復(fù)用、可擴(kuò)展的敏捷大數(shù)據(jù)分析系統(tǒng)。相比傳統(tǒng)大數(shù)據(jù)處理架構(gòu),敏捷大數(shù)據(jù)架構(gòu)在如下幾個方面具有明顯優(yōu)勢(見表1)。

  表1 敏捷大數(shù)據(jù)架構(gòu)與傳統(tǒng)大數(shù)據(jù)架構(gòu)比較分析

  

  從上述各項特性的比較分析可以看到,敏捷大數(shù)據(jù)架構(gòu)除了支持大規(guī)模數(shù)據(jù)增長之外,更重要的是能適應(yīng)大數(shù)據(jù)分析業(yè)務(wù)的擴(kuò)展和變化,通過容器和服務(wù)化技術(shù),具備高容錯性和穩(wěn)定性,能支持大數(shù)據(jù)分析的失敗處理和自動恢復(fù)等,能在海量數(shù)據(jù)條件下快速完成多種計算模型和分析處理,能基于數(shù)據(jù)融合單元和計算服務(wù)化技術(shù),支持多模態(tài)計算和多模式計算任務(wù)處理,能在有限的成本條件下提高大數(shù)據(jù)分析效率。

  當(dāng)然要實(shí)現(xiàn)一套有效的敏捷大數(shù)據(jù)架構(gòu),不同的業(yè)務(wù)需求或采用不同的技術(shù)路線,所做的工作可能有較大差異,所以本文的標(biāo)題定義為方法論。條條大路通羅馬,技術(shù)只是工具,關(guān)鍵還是方法論和指導(dǎo)思想。另外在架構(gòu)詳細(xì)設(shè)計和實(shí)現(xiàn)方面,還有幾個難點(diǎn)需要突破,由于大數(shù)據(jù)計算框架眾多、每種框架下所支持的分析模型也很多、可視化庫更多…這些計算框架的技術(shù)架構(gòu)和開發(fā)語言、接口定義標(biāo)準(zhǔn)可能都不一樣,敏捷大數(shù)據(jù)架構(gòu)如何通過構(gòu)建化、插件化等技術(shù)對上述工具集進(jìn)行標(biāo)準(zhǔn)化和流程化的快速集成,這是敏捷實(shí)現(xiàn)要解決的主要問題。

  我們結(jié)合正在規(guī)劃建設(shè)的綜合交通大數(shù)據(jù)分析云服務(wù)平臺,以本文提出的敏捷大數(shù)據(jù)方法論及架構(gòu)設(shè)計,作為關(guān)鍵技術(shù)選型和技術(shù)路線實(shí)現(xiàn)的指導(dǎo)思想,并進(jìn)行了初步應(yīng)用。綜合交通大數(shù)據(jù)分析云服務(wù)平臺的主要目標(biāo)是通過大數(shù)據(jù)技術(shù)解決交通資源的供需智能匹配和瓶頸預(yù)測分析問題。應(yīng)用多粒度信息融合和多模態(tài)計算微服務(wù)技術(shù),對交通大數(shù)據(jù)進(jìn)行集成、融合和挖掘;采用定量分析和定性分析相結(jié)合的機(jī)器學(xué)習(xí)進(jìn)行供求配置預(yù)測,為智能出行推薦、交通樞紐瓶頸分析、多模接駁換乘、實(shí)時交通管控等智慧交通關(guān)鍵環(huán)節(jié)提供大數(shù)據(jù)分析和決策支持。由于綜合交通大數(shù)據(jù)多源異構(gòu)、時空關(guān)聯(lián)和動態(tài)處理等特點(diǎn),傳統(tǒng)大數(shù)據(jù)架構(gòu)面臨擴(kuò)展性、兼容性、穩(wěn)定性諸多問題?;诿艚荽髷?shù)據(jù)方法論,設(shè)計了面向智慧交通的具有構(gòu)件化、云服務(wù)化、容器化特性的敏捷大數(shù)據(jù)架構(gòu),為綜合交通大數(shù)據(jù)分析云服務(wù)平臺的研發(fā)提供了切實(shí)參考和應(yīng)用指導(dǎo),并在一定程度上提高了開發(fā)效率和控制了技術(shù)風(fēng)險。

  總結(jié)與展望

  探討了大數(shù)據(jù)應(yīng)用落地的主要瓶頸和面臨的挑戰(zhàn)。針對大數(shù)據(jù)特點(diǎn)及其分析瓶頸問題,分析了傳統(tǒng)信息化技術(shù)架構(gòu)與大數(shù)據(jù)系統(tǒng)架構(gòu)的區(qū)別,基于敏捷、精益和迭代設(shè)計思想,首次提出了敏捷大數(shù)據(jù)方法論,并對其概念定義、核心要素、流程優(yōu)化和關(guān)鍵技術(shù)等內(nèi)容進(jìn)行了論述,通過分析敏捷大數(shù)據(jù)的設(shè)計緣由,基于傳統(tǒng)數(shù)據(jù)挖掘流程改進(jìn),設(shè)計了面向微服務(wù)的敏捷大數(shù)據(jù)處理流程,并對其關(guān)鍵支撐技術(shù)進(jìn)行了初步研究和探索。構(gòu)建了基于微服務(wù)和多粒度信息融合技術(shù)的敏捷大數(shù)據(jù)架構(gòu),并結(jié)合實(shí)際案例對交通大數(shù)據(jù)微服務(wù)化、交通大數(shù)據(jù)融合等關(guān)鍵技術(shù)環(huán)節(jié)進(jìn)行了詳細(xì)設(shè)計和論述。

  敏捷大數(shù)據(jù)的提出是基于數(shù)據(jù)科學(xué)迭代性本質(zhì),為各行業(yè)大數(shù)據(jù)應(yīng)用環(huán)境下的高效、靈活大數(shù)據(jù)系統(tǒng)建設(shè)和機(jī)器學(xué)習(xí)、知識發(fā)現(xiàn)提供了新方法、新思路和新的技術(shù)架構(gòu),希望能通過敏捷設(shè)計最大程度降低成本、控制風(fēng)險,從而發(fā)揮出大數(shù)據(jù)的應(yīng)用價值,相比傳統(tǒng)大數(shù)據(jù)處理方法和技術(shù)架構(gòu),本方法論的重要意義和參考價值不言而喻。當(dāng)然,敏捷大數(shù)據(jù)作為一個新的涵蓋多種前沿信息技術(shù)的跨領(lǐng)域應(yīng)用研究問題,還需要在設(shè)計方法、關(guān)鍵技術(shù)和系統(tǒng)架構(gòu)等方面進(jìn)行深入探索和應(yīng)用實(shí)踐。(作者 | 杜圣東)

責(zé)任編輯:陳近梅

分享: