• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      云海大數(shù)據(jù)一體機(jī)體系結(jié)構(gòu)和關(guān)鍵技術(shù)

      2016-07-31 23:32:06亓開元辛國茂劉正偉顏秉珩
      關(guān)鍵詞:可擴(kuò)展性

      張 東 亓開元 吳 楠 辛國茂 劉正偉 顏秉珩 郭 鋒

      (高效能服務(wù)器和存儲(chǔ)技術(shù)國家重點(diǎn)實(shí)驗(yàn)室 濟(jì)南 250101)(浪潮電子信息產(chǎn)業(yè)股份有限公司 濟(jì)南 250101)(qiky@inspur.com)

      云海大數(shù)據(jù)一體機(jī)體系結(jié)構(gòu)和關(guān)鍵技術(shù)

      張 東 亓開元 吳 楠 辛國茂 劉正偉 顏秉珩 郭 鋒

      (高效能服務(wù)器和存儲(chǔ)技術(shù)國家重點(diǎn)實(shí)驗(yàn)室 濟(jì)南 250101)
      (浪潮電子信息產(chǎn)業(yè)股份有限公司 濟(jì)南 250101)(qiky@inspur.com)

      為了彌補(bǔ)從大數(shù)據(jù)技術(shù)到行業(yè)應(yīng)用之間的鴻溝,針對(duì)當(dāng)前行業(yè)用戶對(duì)大數(shù)據(jù)處理平臺(tái)的持續(xù)擴(kuò)展、一體化和多樣性需求,提出了大數(shù)據(jù)一體機(jī)的可擴(kuò)展性、可定制性和多類型處理模型,并基于此設(shè)計(jì)了云海大數(shù)據(jù)一體機(jī).該一體機(jī)采用兼顧橫向和縱向可擴(kuò)展的體系結(jié)構(gòu),并采用硬件可定制化設(shè)計(jì)和混合型軟件架構(gòu)支持多種大數(shù)據(jù)應(yīng)用類型.在此基礎(chǔ)上,針對(duì)HDFS元數(shù)據(jù)服務(wù)瓶頸問題、MapReduce負(fù)載傾斜問題、HBase的跨域問題,介紹了在云海大數(shù)據(jù)一體機(jī)中采用的多元數(shù)據(jù)服務(wù)、負(fù)載均衡和跨數(shù)據(jù)中心大表技術(shù).在電信、金融和環(huán)保行業(yè)實(shí)際案例中的應(yīng)用和測試表明,上述體系結(jié)構(gòu)和關(guān)鍵技術(shù)是可行和有效的.

      隨著信息時(shí)代云計(jì)算、物聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)等技術(shù)的快速發(fā)展,數(shù)據(jù)已經(jīng)滲透到每一個(gè)行業(yè)領(lǐng)域,成為重要的生產(chǎn)因素,而數(shù)據(jù)的海量累積逐漸被公認(rèn)為是與水、石油、天然氣同等重要的國家戰(zhàn)略資源,將推動(dòng)生產(chǎn)力發(fā)展和創(chuàng)新[1].IDC(International Data Corporation)預(yù)測[2],2020年以前全球數(shù)據(jù)量將保持每年40%以上的速度增長,2015年將達(dá)到7.9ZB,2020年將突破35ZB.迅速積累的大數(shù)據(jù)對(duì)行業(yè)用戶來說蘊(yùn)含著巨大的商業(yè)價(jià)值和社會(huì)價(jià)值,通過挖掘大數(shù)據(jù),公司的決策會(huì)建立在更加科學(xué)的依據(jù)基礎(chǔ)上,而對(duì)于政府,大數(shù)據(jù)技術(shù)可以提高運(yùn)行效率、危機(jī)應(yīng)對(duì)能力和公共服務(wù)水平.

      大數(shù)據(jù)雖然極具價(jià)值,但由于類型復(fù)雜、規(guī)模巨大,不論傳統(tǒng)的數(shù)據(jù)倉庫還是新興的分布式處理方法都有特定的短板,不可能滿足所有的需求,因此,要真正釋放大數(shù)據(jù)的能量,推動(dòng)大數(shù)據(jù)應(yīng)用并非易事,主要面臨著以下問題和挑戰(zhàn):

      1)基礎(chǔ)設(shè)施的持續(xù)擴(kuò)展問題.IDC的數(shù)據(jù)顯示,數(shù)據(jù)總量每2年至少增長1倍,但是硬件基礎(chǔ)設(shè)施由于摩爾定律失效很難進(jìn)行無限制擴(kuò)展.即使是新興分布式技術(shù)的擴(kuò)展性有了重大的提高,也仍存在擴(kuò)展上限,如Oracle RAC最大支持100個(gè)節(jié)點(diǎn),Hadoop集群支持4 000個(gè)節(jié)點(diǎn),并且其設(shè)計(jì)初衷是建立在大量廉價(jià)、低端服務(wù)器上的,在充分橫向擴(kuò)展架構(gòu)的同時(shí)還需要縱向擴(kuò)展才能進(jìn)一步提升整體性能[3].與此同時(shí),基礎(chǔ)設(shè)施規(guī)模不斷增大也會(huì)帶來其他的問題,首先是系統(tǒng)的可用性,大規(guī)模分布系統(tǒng)中節(jié)點(diǎn)故障成為常態(tài),不能因此影響業(yè)務(wù)應(yīng)用的持續(xù)性.另外,隨著系統(tǒng)規(guī)模的擴(kuò)展,數(shù)據(jù)傳輸量快速增長,網(wǎng)絡(luò)瓶頸也會(huì)制約系統(tǒng)性能的提升,限制系統(tǒng)的可擴(kuò)展性.

      2)數(shù)據(jù)處理的個(gè)性化、多樣性和一體化需求問題.大數(shù)據(jù)催生了多種數(shù)據(jù)類型,無論是結(jié)構(gòu)化、半結(jié)構(gòu)化還是非結(jié)構(gòu)化的數(shù)據(jù),從采集到挖掘都需要精細(xì)劃分,形成準(zhǔn)結(jié)構(gòu)化數(shù)據(jù),并在此基礎(chǔ)上進(jìn)行關(guān)聯(lián)性分析,最后呈現(xiàn)處理后的結(jié)果.在上述過程中,每一個(gè)環(huán)節(jié)對(duì)于數(shù)據(jù)、軟件和硬件的要求是不一樣的,用單一的軟硬件無法滿足所有類型應(yīng)用.更為重要的是,作為大數(shù)據(jù)應(yīng)用主體的行業(yè)用戶并非都是IT專家,不可能獨(dú)立實(shí)現(xiàn)上述過程以及大數(shù)據(jù)相關(guān)技術(shù)方案的整合部署、應(yīng)用移植和二次開發(fā),因此就需要一個(gè)涵蓋數(shù)據(jù)采集、歸類、挖掘、呈現(xiàn)、部署和移植的一體化解決方案.總之,多類型、多維度數(shù)據(jù)處理環(huán)節(jié)的復(fù)雜性決定了無法依靠單一類型的設(shè)備完美處理,為不同的應(yīng)用類型和處理階段提供針對(duì)性的軟硬件一體化方案也是大數(shù)據(jù)應(yīng)用面臨的挑戰(zhàn).

      針對(duì)上述挑戰(zhàn),國內(nèi)外紛紛推出了針對(duì)大數(shù)據(jù)處理的解決方案或者產(chǎn)品來滿足需求,其中備受關(guān)注的當(dāng)屬軟硬件一體化設(shè)備——大數(shù)據(jù)一體機(jī)(big data appliance).大數(shù)據(jù)一體機(jī)是一種專為大量數(shù)據(jù)分析處理而設(shè)計(jì)的軟、硬件結(jié)合產(chǎn)品,由服務(wù)器、網(wǎng)絡(luò)、存儲(chǔ)、操作系統(tǒng)、數(shù)據(jù)管理系統(tǒng)以及一些為數(shù)據(jù)查詢、處理、分析用途而特別預(yù)先安裝及優(yōu)化的軟件組成,為TB至PB級(jí)別的數(shù)據(jù)倉庫提供解決方案.大數(shù)據(jù)一體機(jī)通過標(biāo)準(zhǔn)化的集成架構(gòu)減化數(shù)據(jù)中心基礎(chǔ)設(shè)施部署和運(yùn)維管理的復(fù)雜性,通過預(yù)配置和調(diào)優(yōu)解決多重工作負(fù)載性能問題,其中比較有代表性的是IBM PureData,Oracle Exadata,SAP HANA,EMC Greenplum等.IDC在其對(duì)亞太區(qū)ICT市場的十大預(yù)測中指出,到2015年,65%的私有云或行業(yè)云環(huán)境將部署一體機(jī)[4].

      為打破國外廠商的技術(shù)壟斷,我們?cè)O(shè)計(jì)并研發(fā)了云海大數(shù)據(jù)一體機(jī)(in-cloud smart data appliance,iSDA).本文首先介紹了iSDA體系結(jié)構(gòu)的理論基礎(chǔ),提出了可擴(kuò)展性、可定制性和多樣性處理模型,依照上述原理設(shè)計(jì)的iSDA兼顧橫向和縱向擴(kuò)展能力,并可通過定制化和混合型軟件架構(gòu)支持多種大數(shù)據(jù)處理應(yīng)用類型.在此基礎(chǔ)上,針對(duì)HDFS元數(shù)據(jù)服務(wù)瓶頸、MapReduce負(fù)載傾斜、HBase跨域擴(kuò)展等問題,介紹了iSDA采用的多元數(shù)據(jù)服務(wù)、負(fù)載均衡和跨數(shù)據(jù)中心大表技術(shù).最后,通過在多個(gè)行業(yè)中的實(shí)際案例進(jìn)一步驗(yàn)證iSDA體系結(jié)構(gòu)和關(guān)鍵技術(shù)的有效性.

      1 體系結(jié)構(gòu)

      總體來說,國外廠商在大數(shù)據(jù)一體機(jī)領(lǐng)域還處于領(lǐng)先地位,對(duì)部分產(chǎn)品和技術(shù)形成了壟斷.然而,國外廠商的大數(shù)據(jù)一體機(jī)大都屬于基于已有關(guān)系數(shù)據(jù)庫(如Oracle,SQLServer,Greenplum等)進(jìn)行擴(kuò)展的并行數(shù)據(jù)庫,雖然理論上支持上千節(jié)點(diǎn)的部署規(guī)模,但國內(nèi)外僅有少量上百節(jié)點(diǎn)的部署案例,并且還無法實(shí)現(xiàn)真正的在線擴(kuò)展;此外,國外一體機(jī)大都捆綁眾多軟硬件產(chǎn)品,價(jià)格高昂,并且從國家信息安全角度,若過分依賴國外產(chǎn)品,存在風(fēng)險(xiǎn)和隱患.

      在國外競爭對(duì)手通過一體機(jī)發(fā)力大數(shù)據(jù)領(lǐng)域的同時(shí),國內(nèi)廠商也在加大對(duì)大數(shù)據(jù)一體機(jī)的研發(fā)步伐.與國外廠商相比,國內(nèi)大數(shù)據(jù)一體機(jī)大都基于開源Hadoop軟件以及通用操作系統(tǒng)、計(jì)算和存儲(chǔ)服務(wù)器搭建而成,缺乏真正意義上自頂而下、由內(nèi)而外、軟硬結(jié)合的一體化設(shè)計(jì),特別是保留著開源軟件易有的弊端.例如,缺乏圖形化管理工具,為部署與管理帶來不便;缺乏負(fù)載均衡、任務(wù)調(diào)度等算法優(yōu)化,容易在低性能或熱點(diǎn)服務(wù)器上產(chǎn)生性能瓶頸;元數(shù)據(jù)節(jié)點(diǎn)易形成單點(diǎn)故障和系統(tǒng)瓶頸,一旦失效系統(tǒng)將無法讀寫;無法進(jìn)行跨數(shù)據(jù)中心部署等.

      相比較之下,iSDA采用兼顧scale-up和scaleout的體系架構(gòu),既可通過橫向增加節(jié)點(diǎn)進(jìn)行線性擴(kuò)展,也可通過縱向擴(kuò)展硬件得到提升,在達(dá)到4 000個(gè)重載節(jié)點(diǎn)情況下,也還能夠?qū)崿F(xiàn)相對(duì)較好的擴(kuò)展性;采用一體化、定制化設(shè)計(jì),行業(yè)用戶可以根據(jù)各自應(yīng)用特點(diǎn)選擇不同的系列化配置,實(shí)現(xiàn)按需定制.此外,iSDA基于硬件平臺(tái)構(gòu)建面向行業(yè)多樣性應(yīng)用的混合型大數(shù)據(jù)軟件系統(tǒng),滿足實(shí)時(shí)處理、交互處理、高效檢索、數(shù)據(jù)挖掘和商業(yè)智能等多樣性需求,在實(shí)現(xiàn)資源調(diào)度和作業(yè)管理分離的基礎(chǔ)上,提供對(duì)計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)等集群資源的統(tǒng)一監(jiān)控和分配,提供對(duì)各類大數(shù)據(jù)處理技術(shù)的可擴(kuò)展支持,并解決當(dāng)前單一數(shù)據(jù)處理系統(tǒng)普遍存在的單點(diǎn)失效和安裝部署困難等問題,增強(qiáng)系統(tǒng)可靠性和自動(dòng)化部署能力,在提高資源利用率的同時(shí)促進(jìn)對(duì)大數(shù)據(jù)技術(shù)的有效利用.

      下面主要介紹iSDA在可擴(kuò)展性、可定制性和應(yīng)用多樣性方面的設(shè)計(jì)原理和關(guān)鍵技術(shù).

      1.1 可擴(kuò)展性設(shè)計(jì)

      面向大數(shù)據(jù)的處理需要突破存儲(chǔ)和計(jì)算能力限制,為了支撐大規(guī)模數(shù)據(jù)的存儲(chǔ)和計(jì)算,當(dāng)前往往采用多核服務(wù)器集群并行計(jì)算架構(gòu),以及Cache、內(nèi)存、輔存和分布式存儲(chǔ)的多層存儲(chǔ)結(jié)構(gòu).隨著內(nèi)存價(jià)格的不斷下降、服務(wù)器可配置內(nèi)存容量的不斷提高以及固態(tài)硬盤(solid state disk,SSD)技術(shù)的發(fā)展,基于內(nèi)存計(jì)算架構(gòu)完成高速的大數(shù)據(jù)處理成為重要發(fā)展趨勢[5].

      Gustafson定律[6]給出了固定時(shí)間內(nèi)的集群加速比,但其性能模型過于理想,沒有考慮網(wǎng)絡(luò)I?O開銷和單個(gè)節(jié)點(diǎn)的性能影響.Gustafson定律將任務(wù)劃分為串行和并行部分,在考慮網(wǎng)絡(luò)的情況下,可以將任務(wù)的網(wǎng)絡(luò)傳輸部分視為影響可擴(kuò)展性提高的因素.即若任務(wù)串行部分為α,網(wǎng)絡(luò)傳輸部分為β,隨著節(jié)點(diǎn)增加,為保持連通性,集群拓?fù)浣Y(jié)構(gòu)復(fù)雜性為

      網(wǎng)絡(luò)傳輸部分對(duì)集群的影響為τβ.

      根據(jù)上述分析,基于Gustafson定律,iSDA集群的可擴(kuò)展性模型可定義如下.

      定義1.iSDA可擴(kuò)展性模型.若任務(wù)串行部分為α,網(wǎng)絡(luò)傳輸部分為β,單個(gè)節(jié)點(diǎn)的性能提升因子為s,則n節(jié)點(diǎn)集群的加速比為

      對(duì)式(1)求導(dǎo)取極值點(diǎn)n′,可得

      上述模型表明,單個(gè)節(jié)點(diǎn)處理能力的提升是促使整個(gè)集群處理能力提升、保障集群可伸縮性的基礎(chǔ).因此,在iSDA中采用了如下技術(shù)進(jìn)行節(jié)點(diǎn)加速:

      1)適用于大數(shù)據(jù)處理的重載計(jì)算單元.針對(duì)訪問請(qǐng)求密集、數(shù)據(jù)量大且耦合度高、具有特定算法的計(jì)算密集類應(yīng)用,在通用處理器同構(gòu)多核架構(gòu)基礎(chǔ)上設(shè)計(jì)了基于異構(gòu)協(xié)同計(jì)算架構(gòu)的重載計(jì)算單元,通過CPU與眾核處理器(many integrated core,MIC)融合、圖形處理器(graphic processing unit,GPU)局部強(qiáng)化和現(xiàn)場可編程門陣列(field programmable gate array,F(xiàn)PGA)硬件加速,實(shí)現(xiàn)10~100倍的加速比.

      2)適用于大數(shù)據(jù)處理的存儲(chǔ)單元.充分發(fā)揮新型存儲(chǔ)介質(zhì)的作用,構(gòu)建基于非易失性存儲(chǔ)(nonvolatile memory,NVM)和傳統(tǒng)動(dòng)態(tài)隨機(jī)存取存儲(chǔ)(dynamic random access memory,DRAM)的高可靠、大容量、低功耗異構(gòu)混合內(nèi)存,在整個(gè)存儲(chǔ)層次里面增加SSD作為高速緩存,并針對(duì)每個(gè)存儲(chǔ)單元的多塊磁盤實(shí)現(xiàn)負(fù)載均衡、冗余編碼多副本和分布共享緩存,提高了I?O吞吐量.

      3)大數(shù)據(jù)互聯(lián)交換芯片和全局交換網(wǎng)絡(luò).在互連核心交換芯片中,實(shí)現(xiàn)了對(duì)系統(tǒng)級(jí)消息通信、數(shù)據(jù)交換以及I?O操作的統(tǒng)一支持,降低內(nèi)部延遲;設(shè)計(jì)全局高速交換網(wǎng)絡(luò),融合數(shù)據(jù)通信與存儲(chǔ)網(wǎng)絡(luò),提高了系統(tǒng)通信性能和擴(kuò)展能力.

      此外,iSDA可擴(kuò)展性模型還表明,若集群規(guī)模在網(wǎng)絡(luò)帶寬范圍之內(nèi),加速比由串行部分和可擴(kuò)展的并行部分確定;若集群規(guī)模持續(xù)增大,網(wǎng)絡(luò)帶寬將會(huì)成為制約集群可擴(kuò)展性的瓶頸,增加節(jié)點(diǎn)不會(huì)促進(jìn)加速比提升.由于iSDA采用了完全分布式的處理架構(gòu),任務(wù)串行部分可近似為0,例如,采用NoSQL數(shù)據(jù)模型的HBase數(shù)據(jù)庫避免了由于維護(hù)ACID和事務(wù)特性而引入的同步處理.由式(2)可知,若無任務(wù)串行部分,即α=0,則集群可伸縮性由網(wǎng)絡(luò)傳輸部分決定,有

      根據(jù)上述原理,iSDA中采用了以下優(yōu)化設(shè)計(jì):

      1)高速通信網(wǎng)絡(luò).基于TCP?IP協(xié)議,iSDA可配置高帶寬的萬兆以太網(wǎng)乃至40Gbps的InfiniBand網(wǎng)絡(luò),實(shí)現(xiàn)一體機(jī)內(nèi)部的高速互聯(lián).然而,由于TCP?IP屬于傳輸層協(xié)議,其內(nèi)部的慢啟動(dòng)、擁塞避免等機(jī)制造成帶寬利用率不高,即便是采用萬兆網(wǎng)也無法有效應(yīng)對(duì)TB以上級(jí)數(shù)據(jù)傳輸,I?O瓶頸嚴(yán)重影響了系統(tǒng)整體性能.iSDA進(jìn)一步基于PCIe通道構(gòu)建互聯(lián)網(wǎng)絡(luò),使得節(jié)點(diǎn)可以通過擴(kuò)展卡連接到PCIe網(wǎng)絡(luò)上,雙向16通道帶寬能夠達(dá)到256Gbps.

      2)減少數(shù)據(jù)傳輸量.由于采用了分布式并行處理架構(gòu),網(wǎng)絡(luò)傳輸開銷隨集群規(guī)模增加而增大.若某任務(wù)節(jié)點(diǎn)間的網(wǎng)絡(luò)傳輸為10Mbps,由式(3)可知,配置千兆網(wǎng)絡(luò)集群規(guī)模無法超過100節(jié)點(diǎn).為減少數(shù)據(jù)傳輸,iSDA在軟件棧中全面支持GZIP,LZO,Snappy等壓縮方式,并通過對(duì)數(shù)據(jù)分區(qū)、分桶以及Map-only Combine、Map Join等方法盡量減少數(shù)據(jù)傳輸.此外,iSDA內(nèi)部的網(wǎng)絡(luò)通信主要來自主節(jié)點(diǎn)和從節(jié)點(diǎn)間的狀態(tài)同步,為了減少大量的狀態(tài)數(shù)據(jù)傳輸量,采用狀態(tài)緩存算法[7]減少不必要的網(wǎng)絡(luò)開銷,即DataNode使用SHA-256或SHA-512Hash函數(shù)記錄當(dāng)前節(jié)點(diǎn)狀態(tài),之后在只有在狀態(tài)Hash值不同的情況下才發(fā)送完整節(jié)點(diǎn)狀態(tài),否則只發(fā)送心跳信息.通過上述優(yōu)化,在達(dá)到10%的壓縮率以及配置萬兆網(wǎng)絡(luò)的情況下,由式(3)可知,集群規(guī)模能夠提高100倍.

      1.2 可定制性設(shè)計(jì)

      針對(duì)當(dāng)前涌現(xiàn)出的多種多樣的大數(shù)據(jù)處理需求,傳統(tǒng)的方法是采用通用服務(wù)器來構(gòu)建應(yīng)用平臺(tái),由于與應(yīng)用之間的匹配度不好,導(dǎo)致實(shí)際應(yīng)用效能比較低.iSDA根據(jù)不同業(yè)務(wù)類型,結(jié)合各種應(yīng)用負(fù)載特點(diǎn),設(shè)計(jì)可定制的系列化配置來分別滿足應(yīng)用需求.下面給出iSDA可定制性的理論模型及其系列化設(shè)計(jì).

      定義2.iSDA可定制性模型.若節(jié)點(diǎn)j內(nèi)存容量為mj,外存空間為pj,命中率提升因子σ,則中間結(jié)果內(nèi)存命中率為

      非命中率為η-=1-η,若節(jié)點(diǎn)在中間結(jié)果內(nèi)存命中的情況下處理速度為μ,非命中情況下處理速度阻尼因子為λ,則處理速度的數(shù)學(xué)期望為

      上述模型表明,可以根據(jù)CPU速度、內(nèi)存容量和I?O帶寬刻畫節(jié)點(diǎn)的處理能力,通過定制進(jìn)一步優(yōu)化單個(gè)節(jié)點(diǎn)的處理能力,在式(4)中可以通過μ,λ和σ等參數(shù)體現(xiàn)出來.根據(jù)上述原理,iSDA的系列化配置[8]及其性能對(duì)比如表1和表2所示:

      Table 1 iSDA Series Configuration表1 iSDA系列化配置

      Table 2 iSDA Performance Comparison表2 iSDA性能對(duì)比

      針對(duì)在線交易、視頻處理、圖像渲染、圖像編解碼、在線加解密、高性能計(jì)算等重載應(yīng)用,采用CPU與GPU,MIC混合的異構(gòu)協(xié)同計(jì)算架構(gòu),使用FPGA將算法固化在硬件中,并在存儲(chǔ)層次里加大SSD緩存進(jìn)行數(shù)據(jù)讀寫加速.

      針對(duì)模式計(jì)算、商業(yè)智能和數(shù)據(jù)挖掘等通用類型處理應(yīng)用,基于通用處理器設(shè)計(jì)計(jì)算、I?O、存儲(chǔ)能力均衡的機(jī)架式和刀片式服務(wù)器來滿足常規(guī)處理類應(yīng)用的需求,如分布式文件系統(tǒng)HDFS和分布式數(shù)據(jù)處理MapReduce等.

      針對(duì)企業(yè)搜索、流式處理等海量并發(fā)的輕量級(jí)應(yīng)用,雖然并發(fā)訪問量可達(dá)每秒數(shù)十萬次,但每個(gè)請(qǐng)求所需的計(jì)算資源較小,因此,基于多核多線程低功耗處理器,采用最小化和并發(fā)線程優(yōu)化方法設(shè)計(jì)輕量級(jí)計(jì)算模塊,再配以大容量內(nèi)存滿足NoSQL數(shù)據(jù)庫、流處理引擎需求.例如,在2U的空間里集成128個(gè)CPU核心,具有512個(gè)并發(fā)線程的處理能力,而總體功耗小于2kW.

      綜合可擴(kuò)展性和可定制性設(shè)計(jì),iSDA硬件架構(gòu)如圖1所示:

      Fig.1 iSDA hardware architecture.圖1 iSDA硬件架構(gòu)

      1.3 混合多樣性設(shè)計(jì)

      針對(duì)行業(yè)大數(shù)據(jù)業(yè)務(wù)需求,面向數(shù)據(jù)密集型應(yīng)用的計(jì)算框架和系統(tǒng)不斷出現(xiàn),如MapReduce編程模型[9]、NoSQL高并發(fā)實(shí)時(shí)數(shù)據(jù)庫[10]、內(nèi)存計(jì)算引擎[11]和流式處理框架[12]等.這些系統(tǒng)僅針對(duì)各自的問題域提供解決方案,為了應(yīng)對(duì)行業(yè)日益復(fù)雜的業(yè)務(wù)需求,需要在大規(guī)模集群或數(shù)據(jù)中心中綜合運(yùn)用多種處理架構(gòu)來存儲(chǔ)和處理海量數(shù)據(jù).然而,當(dāng)前的各種大數(shù)據(jù)系統(tǒng)是邏輯獨(dú)立的,缺乏統(tǒng)一的集中管理,若各自采用單獨(dú)集群部署,則存在不可忽略的數(shù)據(jù)冗余和資源利用率低下問題;若考慮到資源利用率和數(shù)據(jù)共享等因素,將所有框架和系統(tǒng)集中部署到單一集群中,則又面臨著相互之間資源競爭和性能干擾等問題.

      為滿足行業(yè)應(yīng)用對(duì)大數(shù)據(jù)的多源異構(gòu)存儲(chǔ)和多樣性處理需求,iSDA采用了一種混合型大數(shù)據(jù)軟件架構(gòu).該架構(gòu)在融合各種分布式存儲(chǔ)和處理技術(shù)的基礎(chǔ)上,通過構(gòu)建對(duì)于大規(guī)模、多層次異構(gòu)存儲(chǔ)的一致性數(shù)據(jù)組織和透明管理機(jī)制,進(jìn)一步借助內(nèi)存數(shù)據(jù)庫和內(nèi)存計(jì)算引擎優(yōu)化大數(shù)據(jù)處理性能,并通過一體化的管理平臺(tái)保障系統(tǒng)的可擴(kuò)展性和可靠性.

      iSDA混合型軟件棧包括分布式數(shù)據(jù)采集層、基于內(nèi)存計(jì)算的混合型分布式存儲(chǔ)層和處理層、一體化的資源和系統(tǒng)管理層,如圖2所示:

      Fig.2 iSDA hybrid software stack.圖2 iSDA混合型軟件棧

      1)分布式數(shù)據(jù)采集層以流水化、并行方式抽取、轉(zhuǎn)換和載入數(shù)據(jù),實(shí)現(xiàn)對(duì)多源異構(gòu)行業(yè)數(shù)據(jù)的高速導(dǎo)入.支持文本、XML、傳輸協(xié)議、數(shù)據(jù)庫、文件系統(tǒng)等多種數(shù)據(jù)源,以及異步Push和輪詢Polling等靈活的工作模式,可按需定義清洗、編碼、分發(fā)和轉(zhuǎn)換等預(yù)處理操作,同時(shí)可動(dòng)態(tài)擴(kuò)展以提高吞吐量,并且可根據(jù)性能需求配置可靠性級(jí)別.

      2)大數(shù)據(jù)存儲(chǔ)層采用分布式外部存儲(chǔ)、結(jié)構(gòu)化?半結(jié)構(gòu)化數(shù)據(jù)庫、分布式內(nèi)存3層存儲(chǔ)架構(gòu),包括分布式文件系統(tǒng)以及基于分布式文件系統(tǒng)的關(guān)系數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫和內(nèi)存數(shù)據(jù)庫.分布式文件系統(tǒng)可以直接存儲(chǔ)客戶服務(wù)系統(tǒng)或社會(huì)經(jīng)濟(jì)數(shù)據(jù)中的文本、視頻和音頻文件,并能夠?yàn)樯蠈訑?shù)據(jù)庫提供高可靠、可擴(kuò)展的文件存儲(chǔ);關(guān)系數(shù)據(jù)庫用來存儲(chǔ)生產(chǎn)管理、客戶關(guān)系、營銷這類結(jié)構(gòu)化特征強(qiáng)、模型驅(qū)動(dòng)的、需要強(qiáng)一致性事務(wù)保證的數(shù)據(jù);NoSQL數(shù)據(jù)庫用來存儲(chǔ)歷史日志數(shù)據(jù)、氣象信息、社會(huì)經(jīng)濟(jì)數(shù)據(jù)這類半結(jié)構(gòu)化或者結(jié)構(gòu)化特征較弱、主要考慮存取性能和可擴(kuò)展性的數(shù)據(jù);內(nèi)存數(shù)據(jù)庫則存儲(chǔ)各種經(jīng)常使用或需要加速處理的數(shù)據(jù),如索引、中間結(jié)果、維表數(shù)據(jù)等.

      3)大數(shù)據(jù)處理層采用基于分布式內(nèi)存計(jì)算的混合型處理架構(gòu),包括內(nèi)存計(jì)算引擎以及基于內(nèi)存計(jì)算的批處理、圖計(jì)算、交互處理和流處理引擎.內(nèi)存計(jì)算引擎提供對(duì)異構(gòu)存儲(chǔ)介質(zhì)的分布式內(nèi)存抽象,實(shí)現(xiàn)緩存數(shù)據(jù)、提高I?O性能的效果,并采用并行流水化方式和線程級(jí)輕量運(yùn)行環(huán)境加速數(shù)據(jù)處理性能;批處理引擎面向以離線方式進(jìn)行的數(shù)據(jù)密集型并行計(jì)算,如聚類、關(guān)聯(lián)分析、協(xié)同過濾等數(shù)據(jù)挖掘算法;圖計(jì)算面向一類以圖模型作為數(shù)據(jù)表示的特殊離線處理,如網(wǎng)頁排序、用戶行為分析、社會(huì)關(guān)系網(wǎng)絡(luò)等;交互處理引擎用來快速響應(yīng)應(yīng)用層的標(biāo)準(zhǔn)SQL請(qǐng)求,如查詢、聚合和關(guān)聯(lián)等;流處理引擎面向連續(xù)、實(shí)時(shí)到達(dá)數(shù)據(jù)的流式處理,如時(shí)間窗口查詢統(tǒng)計(jì)、清洗轉(zhuǎn)換和異常報(bào)警等.此外,高性能計(jì)算引擎基于重載類型iSDA配置,使用MPI?OpenMP,CUDA?OpenCL,Verilog?VHDL等特定的編程模型[13],滿足緊耦合的、多次迭代的計(jì)算密集型應(yīng)用需求.

      4)一體化管理平臺(tái)包括集中式Web控制臺(tái)和分布式集群資源管理系統(tǒng).控制臺(tái)通過提供采集、存儲(chǔ)和處理子系統(tǒng)的安裝、部署和配置功能,計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源及各子系統(tǒng)運(yùn)行情況的監(jiān)控功能,以及認(rèn)證、授權(quán)、加密等安全管理功能,增強(qiáng)系統(tǒng)的可管理性和易用性.集群資源管理系統(tǒng)一方面基于資源調(diào)度和任務(wù)控制分離方式,采用統(tǒng)一的資源調(diào)度框架在各子系統(tǒng)間進(jìn)行資源分配,使子系統(tǒng)只需關(guān)注內(nèi)部任務(wù)的控制和調(diào)度,從而減輕了子系統(tǒng)壓力,提高了整個(gè)系統(tǒng)的可擴(kuò)展性;另一方面通過提供監(jiān)聽、分布式鎖、一致性存儲(chǔ)等分布式服務(wù)監(jiān)控集群節(jié)點(diǎn)增加、失效、退出等動(dòng)態(tài)變化,記錄關(guān)鍵信息,在任意節(jié)點(diǎn)失效后能夠快速恢復(fù)系統(tǒng)狀態(tài),保證整個(gè)系統(tǒng)的可用性.

      基于iSDA混合型軟件架構(gòu),可以定義針對(duì)行業(yè)大數(shù)據(jù)各種應(yīng)用類型的處理模型.

      定義3.iSDA在線實(shí)時(shí)處理模型.在線實(shí)時(shí)處理的運(yùn)行機(jī)制和處理過程為:

      1)采集系統(tǒng)從政府、證券、銀行等行業(yè)的系統(tǒng)中抽取各種客體行為數(shù)據(jù)、交易記錄、實(shí)時(shí)事件等結(jié)構(gòu)化數(shù)據(jù),這類數(shù)據(jù)來源多、生成速度快,數(shù)據(jù)量通常在TB級(jí).

      2)數(shù)據(jù)經(jīng)過預(yù)處理后,若屬于結(jié)構(gòu)化特征強(qiáng)的數(shù)據(jù),則批量加載進(jìn)入關(guān)系數(shù)據(jù)庫;若屬于歷史日志數(shù)據(jù)、事件記錄、社會(huì)經(jīng)濟(jì)數(shù)據(jù)這類結(jié)構(gòu)化特征較弱、主要考慮存取性能和可擴(kuò)展性的數(shù)據(jù),則批量加載入NoSQL數(shù)據(jù)庫.

      3)在后臺(tái)進(jìn)一步對(duì)數(shù)據(jù)進(jìn)行準(zhǔn)備,形成數(shù)據(jù)索引、過濾器、維表、中間結(jié)果等經(jīng)常使用或可以加速處理的數(shù)據(jù)導(dǎo)入內(nèi)存數(shù)據(jù)庫.

      4)在線實(shí)時(shí)處理類應(yīng)用主要是關(guān)鍵字查詢、多維查詢、模糊查詢以及數(shù)據(jù)更新、插入、刪除等高并發(fā)增刪改查請(qǐng)求,要求毫秒級(jí)至秒級(jí)響應(yīng)時(shí)間,根據(jù)對(duì)事務(wù)特性的需求可分為在線交易處理和在線并發(fā)處理,在線交易對(duì)ACID事務(wù)特性有嚴(yán)格限制,需要達(dá)到Committed Read,Repeatable Read甚至串行化隔離級(jí)別,在線并發(fā)處理只需要簡單的行級(jí)鎖或Check and Set語義保障讀寫一致性.

      5)應(yīng)用層在發(fā)起數(shù)據(jù)請(qǐng)求時(shí)先查看內(nèi)存數(shù)據(jù)庫中是否有索引、過濾器或緩存數(shù)據(jù),若在內(nèi)存數(shù)據(jù)庫得到所有數(shù)據(jù)則返回;若內(nèi)存中未獲得有用數(shù)據(jù)或只獲得部分?jǐn)?shù)據(jù),則在線事務(wù)處理繼續(xù)針對(duì)關(guān)系數(shù)據(jù)庫采用標(biāo)準(zhǔn)的SQL語句發(fā)起各種數(shù)據(jù)請(qǐng)求,在線并發(fā)處理繼續(xù)針對(duì)NoSQL數(shù)據(jù)采用基于key? value的API發(fā)起數(shù)據(jù)請(qǐng)求.

      6)為保障數(shù)據(jù)的可靠性,內(nèi)存數(shù)據(jù)庫將變化的數(shù)據(jù)同步到關(guān)系數(shù)據(jù)庫或NoSQL持久化存儲(chǔ),同步可根據(jù)可靠性級(jí)別選擇采用實(shí)時(shí)同步、日志同步和定期同步機(jī)制.

      定義4.iSDA交互式分析模型.在線交互式分析的運(yùn)行機(jī)制和處理過程為:

      1)分布式采集系統(tǒng)從交通、公安、醫(yī)療等部門或互聯(lián)網(wǎng)、銀行、零售、制造等企業(yè)的信息系統(tǒng)中抽取各種交易、ERP、CRM等結(jié)構(gòu)化數(shù)據(jù)和客體行為、系統(tǒng)日志等半結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)量通常在TB級(jí).

      2)數(shù)據(jù)經(jīng)過預(yù)處理后以行存文件格式批量加載進(jìn)分布式文件系統(tǒng),或以列式表形式批量加載進(jìn)NoSQL數(shù)據(jù)庫,必要時(shí)可對(duì)數(shù)據(jù)進(jìn)行壓縮以減少存儲(chǔ)空間.

      3)進(jìn)一步對(duì)數(shù)據(jù)進(jìn)行后臺(tái)準(zhǔn)備,在交互處理引擎中建立關(guān)系模型到物理層文件或列式存儲(chǔ)的映射,指定行列分隔符、存儲(chǔ)格式和序列化方法,并對(duì)數(shù)據(jù)進(jìn)行分區(qū)、分桶、排序等預(yù)處理,將索引、過濾器、維表、中間結(jié)果等經(jīng)常使用或可以加速處理的數(shù)據(jù)導(dǎo)入內(nèi)存數(shù)據(jù)庫.

      4)交互式類應(yīng)用主要包括數(shù)據(jù)掃描、統(tǒng)計(jì)、聚合、多表關(guān)聯(lián)等并發(fā)請(qǐng)求,要求秒級(jí)至分鐘級(jí)響應(yīng)時(shí)間,應(yīng)用層采用標(biāo)準(zhǔn)的SQL語句發(fā)起各種數(shù)據(jù)請(qǐng)求,交互處理引擎解析SQL語句,形成優(yōu)化的查詢路徑并調(diào)度執(zhí)行.

      5)交互處理引擎在發(fā)起數(shù)據(jù)請(qǐng)求時(shí)先查看內(nèi)存數(shù)據(jù)庫中是否有索引、過濾器、維表、中間結(jié)果或其他緩存數(shù)據(jù),若可在內(nèi)存數(shù)據(jù)庫得到所有數(shù)據(jù)完成處理則返回;若內(nèi)存中未獲得有用數(shù)據(jù)或只獲得部分?jǐn)?shù)據(jù),處理引擎繼續(xù)針對(duì)分布式文件系統(tǒng)或NoSQL數(shù)據(jù)庫發(fā)起各種數(shù)據(jù)請(qǐng)求.

      6)為保障數(shù)據(jù)的可靠性,內(nèi)存數(shù)據(jù)庫將變化的數(shù)據(jù)同步到關(guān)系數(shù)據(jù)庫或NoSQL持久化存儲(chǔ),同步可根據(jù)可靠性級(jí)別選擇采用實(shí)時(shí)同步、日志同步和定期同步機(jī)制.

      定義5.iSDA離線批處理模型.離線批處理的運(yùn)行機(jī)制和處理過程為:

      1)采集系統(tǒng)從各種數(shù)據(jù)源中抽取系統(tǒng)日志、手機(jī)記錄、郵件、短信、微博等半?非結(jié)構(gòu)化數(shù)據(jù),數(shù)據(jù)量達(dá)到TB級(jí)至PB級(jí).

      2)數(shù)據(jù)經(jīng)過預(yù)處理后以文件形式加載進(jìn)分布式文件系統(tǒng),必要時(shí)可對(duì)數(shù)據(jù)進(jìn)行壓縮以減少存儲(chǔ)空間.

      3)離線批處理應(yīng)用主要包括聚類、分類、時(shí)間序列回歸、關(guān)聯(lián)分析等數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí),以及社會(huì)網(wǎng)絡(luò)等圖計(jì)算,由于數(shù)據(jù)量巨大,計(jì)算邏輯復(fù)雜、迭代次數(shù)多,一般采用后臺(tái)離線方式,對(duì)響應(yīng)時(shí)間沒有具體要求.這類應(yīng)用采用Map,F(xiàn)ilter,Combine,Partition,Reduce,Join等算子進(jìn)行函數(shù)式編程,以批處理方式提交作業(yè),批處理引擎通過數(shù)據(jù)切分、任務(wù)調(diào)度和內(nèi)部通信完成處理.與普通批處理作業(yè)不同,圖計(jì)算則采用基于圖(如頂點(diǎn)、邊、權(quán)值等)及相應(yīng)函數(shù)(權(quán)值變換、頂點(diǎn)通信、圖結(jié)構(gòu)變化等)的編程模型.

      4)基于內(nèi)存計(jì)算的批處理和圖處理在第1次處理或首次迭代時(shí)從分布式文件系統(tǒng)獲得處理數(shù)據(jù),處理完成后將中間結(jié)果緩存在內(nèi)存中,以便下次處理或迭代復(fù)用.

      定義6.iSDA流式處理模型.流數(shù)據(jù)處理的運(yùn)行機(jī)制和處理過程為:

      1)采集系統(tǒng)從各種數(shù)據(jù)源中實(shí)時(shí)的采集用戶行為、系統(tǒng)事件等數(shù)據(jù).

      2)由于數(shù)據(jù)流的無限性,流式處理主要面向基于時(shí)間窗口的查詢、統(tǒng)計(jì)和分析,以及異常事件報(bào)警和數(shù)據(jù)實(shí)時(shí)清洗轉(zhuǎn)換等應(yīng)用,流處理應(yīng)用采用由多種算子組成的函數(shù)式編程模型.

      3)在運(yùn)行時(shí),數(shù)據(jù)以持續(xù)、不間斷的數(shù)據(jù)流形式進(jìn)入處理系統(tǒng),驅(qū)動(dòng)預(yù)定義的處理邏輯連續(xù)地進(jìn)行計(jì)算,其區(qū)別于批處理之處在于沒有數(shù)據(jù)積攢成批、階段同步、持久化的延遲;流處理系統(tǒng)將處理邏輯定義為由多個(gè)算子組成的多階段處理網(wǎng)絡(luò),在數(shù)據(jù)處理的多個(gè)階段間采用異步流水線方式,在同一階段內(nèi)采用節(jié)點(diǎn)間和節(jié)點(diǎn)內(nèi)并行方式提高實(shí)時(shí)處理性能.

      4)流處理結(jié)果最終輸出到持久化存儲(chǔ)或直接發(fā)送到應(yīng)用層實(shí)時(shí)告警或展示頁面.

      2 關(guān)鍵技術(shù)

      與開源Hadoop方案相比,iSDA增加了管理和監(jiān)控工具,簡化了集群的部署與管理,并進(jìn)行大量的優(yōu)化和擴(kuò)展,如增強(qiáng)HDFS擴(kuò)展性、改進(jìn)MapReduce調(diào)度算法、優(yōu)化HBase查詢性能以及兼容PL?SQL等.本節(jié)針對(duì)HDFS元數(shù)據(jù)服務(wù)瓶頸、MapReduce負(fù)載傾斜、HBase的跨域組織等關(guān)鍵問題,介紹在iSDA中采用的多元數(shù)據(jù)服務(wù)、負(fù)載均衡和跨數(shù)據(jù)中心大表技術(shù).

      2.1 HDFS多元數(shù)據(jù)服務(wù)

      大數(shù)據(jù)環(huán)境下產(chǎn)生的數(shù)以億計(jì)的非結(jié)構(gòu)化數(shù)據(jù)對(duì)分布式文件系統(tǒng)的元數(shù)據(jù)服務(wù)器產(chǎn)生了巨大壓力,單個(gè)元數(shù)據(jù)服務(wù)器已經(jīng)無法很好地滿足全系統(tǒng)的元數(shù)據(jù)訪問.例如,GFS和HDFS都采用了單元數(shù)據(jù)服務(wù)器的方法,因此文件系統(tǒng)的元數(shù)據(jù)規(guī)模受限于元服務(wù)器的內(nèi)存容量和處理速度.為此,元數(shù)據(jù)的服務(wù)能力也需要進(jìn)行擴(kuò)展,通過多元數(shù)據(jù)服務(wù)器的方法可以將系統(tǒng)的元數(shù)據(jù)壓力分布到多臺(tái)服務(wù)器上,降低元數(shù)據(jù)的訪問延遲,提高元數(shù)據(jù)請(qǐng)求的服務(wù)速率,達(dá)到較好的元數(shù)據(jù)擴(kuò)展能力.

      為在多個(gè)服務(wù)器上提供元數(shù)據(jù)服務(wù),最關(guān)鍵的是建立從文件系統(tǒng)命名空間到多個(gè)元數(shù)據(jù)服務(wù)器的映射,命名空間的劃分和映射方法要具有自適應(yīng)性和擴(kuò)展性,即能夠自動(dòng)適應(yīng)目錄空間的增長,并將目錄空間中的項(xiàng)均衡地分布到所有元數(shù)據(jù)服務(wù)器上.基本思想是使用某種動(dòng)態(tài)Hash算法將每個(gè)目錄劃分成很多分片,再采用某種映射算法將每個(gè)目錄分片映射到一臺(tái)元數(shù)據(jù)服務(wù)器上,由該元數(shù)據(jù)服務(wù)器來負(fù)責(zé)該目錄分片訪問和存?。鐖D3所示,在文件系統(tǒng)中,建立全局目錄表(global directionary table,GDT)的特殊數(shù)據(jù)結(jié)構(gòu),它是整個(gè)全局命名空間中所有目錄組成的一張映射表,將目錄名映射到其元數(shù)據(jù)所在的位置.

      在iSDA中,目錄分片到元數(shù)據(jù)服務(wù)器的映射采用2級(jí)映射機(jī)制:第1級(jí)是將目錄分片映射到數(shù)量不可變的多個(gè)虛擬元數(shù)據(jù)服務(wù)器上,第2級(jí)是將虛擬元數(shù)據(jù)服務(wù)器映射到物理元數(shù)據(jù)服務(wù)器上.如圖4所示,通過第1級(jí)映射,根據(jù)文件目錄名唯一確定一個(gè)虛擬服務(wù)器;通過第2級(jí)映射,可以根據(jù)虛擬服務(wù)器唯一確定一個(gè)物理服務(wù)器.這種2級(jí)映射有較好的靈活性,使得映射機(jī)制可以適應(yīng)物理服務(wù)器節(jié)點(diǎn)數(shù)的動(dòng)態(tài)變化(失效或加入),并有利用調(diào)節(jié)物理節(jié)點(diǎn)上的負(fù)載以達(dá)到負(fù)載均衡.

      Fig.3 Global directory mapping.圖3 全局目錄映射

      Fig.4 Data structure of immediate results.圖4 中間結(jié)果數(shù)據(jù)結(jié)構(gòu)

      在初始時(shí),目錄的所有分片會(huì)被映射到一臺(tái)物理服務(wù)器上,隨著負(fù)載的增加和目錄規(guī)模的增大,其分片會(huì)更加均勻地分布到多個(gè)物理服務(wù)器上.同時(shí),為了避免在目錄規(guī)模增大時(shí)目錄分裂引入過多的開銷,通過一致性Hash方法使得目錄分裂只局限在同一個(gè)節(jié)點(diǎn)上,以避免過多的服務(wù)器之間數(shù)據(jù)傳輸.當(dāng)需要進(jìn)行負(fù)載均衡時(shí),通過改變第2級(jí)映射可以利用空閑的節(jié)點(diǎn)或者新加入的節(jié)點(diǎn)資源.關(guān)于多元數(shù)據(jù)服務(wù)器方法的詳細(xì)介紹可參見前期工作[14].

      2.2 Hadoop負(fù)載均衡

      在Hadoop的MapReduce任務(wù)中,Map的輸入來自HDFS,是相對(duì)靜態(tài)的數(shù)據(jù),每個(gè)Map任務(wù)接收到的數(shù)據(jù)是經(jīng)過分片處理的,除最后一個(gè)Map任務(wù),每個(gè)Map需要處理的數(shù)據(jù)量大致相等,因此,各個(gè)Map任務(wù)是均衡的,并且其大小是確定的.而Reduce任務(wù)和Map有所不同,它的輸入是Map階段的輸出,是動(dòng)態(tài)產(chǎn)生的數(shù)據(jù).為保證相同關(guān)鍵字key的記錄分派到同一個(gè)Reduce任務(wù)中處理,Map的輸出數(shù)據(jù)進(jìn)行分區(qū)Partition操作,每一條記錄按照key值被映射到唯一的Reduce任務(wù)上.由于數(shù)據(jù)是動(dòng)態(tài)產(chǎn)生的,只有在Map任務(wù)完成之后才能確定數(shù)據(jù)的大小和分布,因此,每個(gè)Reduce的任務(wù)量不可確定,數(shù)據(jù)映射到Reduce后也不能更改,從而有可能造成Reduce任務(wù)不均衡.

      通過對(duì)大量Map任務(wù)輸出的分析統(tǒng)計(jì)得出,數(shù)據(jù)不均衡的原因可總結(jié)為2類:

      1)中間結(jié)果key分散,但經(jīng)過映射,過多的key聚集在同一個(gè)Reduce任務(wù)中;

      2)中間結(jié)果key雖然單一,但key對(duì)應(yīng)的記錄數(shù)量眾多,一個(gè)Reduce要處理一個(gè)key的所有記錄.

      在iSDA中,為加速key的存取,中間結(jié)果采用Hash B樹存儲(chǔ),如圖4.其中,MapReduce中間結(jié)果[key,list(value)]用鏈表組織,具有相同Hash值的key在Hash表的同一項(xiàng)中用B樹索引,list(value)存儲(chǔ)在B樹結(jié)點(diǎn)中.上述數(shù)據(jù)結(jié)構(gòu)在各種負(fù)載類型下都具有很高的讀寫性能.如果key可預(yù)測并且具有唯一的Hash值,則可以為Hash表分配足夠的項(xiàng)來避免沖突和B樹查找,插入和查找都只有O(1)的復(fù)雜度.如果key沒有唯一的Hash值或不可預(yù)測,插入和查找也只有O(log n)的復(fù)雜度.

      基于Hash B樹結(jié)構(gòu)和式(4),可以根據(jù)Reduce節(jié)點(diǎn)的數(shù)量和處理能力劃分中間結(jié)果.在負(fù)載均衡情況下,各節(jié)點(diǎn)處理速度相同,因此節(jié)點(diǎn)j所分配的歷史數(shù)據(jù)規(guī)模為

      pj∝μ×(σmj×(1-λ)+λ).(5)

      基于上述模型,可以根據(jù)CPU速度、內(nèi)存容量和I?O帶寬計(jì)算出Reduce各節(jié)點(diǎn)的中間結(jié)果數(shù)據(jù)劃分并構(gòu)造路由表,在MapReduce的Partition階段根據(jù)路由表進(jìn)行分派,就能保障Reduce節(jié)點(diǎn)的負(fù)載均衡.由于上述算法需要預(yù)處理階段采樣,因此特別適用于循環(huán)或迭代進(jìn)行的Hadoop任務(wù).關(guān)于MapReduce負(fù)載均衡方法的詳細(xì)介紹可參見前期工作[15].

      2.3 HBase跨數(shù)據(jù)中心大表

      基于HDFS的HBase在無共享集群架構(gòu)上實(shí)現(xiàn)了面向海量半結(jié)構(gòu)化數(shù)據(jù)的高并發(fā)處理環(huán)境,已被廣泛接受并采用.由于地域和網(wǎng)絡(luò)條件限制,當(dāng)前很多政府、行業(yè)建設(shè)的數(shù)據(jù)中心采用2級(jí)架構(gòu),即在總部和分支機(jī)構(gòu)分別部署HBase集群,1級(jí)數(shù)據(jù)中心可以訪問2級(jí)數(shù)據(jù)中心的數(shù)據(jù),而1級(jí)數(shù)據(jù)中心間也可以實(shí)現(xiàn)互訪.例如,某省的交通卡口數(shù)據(jù)監(jiān)控系統(tǒng)采用省、市2級(jí)部署方式,傳統(tǒng)的處理方式要從全省范圍內(nèi)查找某車輛信息時(shí),需要輪詢各地的HBase確定是否存在該車的相關(guān)信息,然后根據(jù)在各個(gè)地市數(shù)據(jù)查詢的結(jié)果匯總反饋,計(jì)算量較大,無法滿足對(duì)響應(yīng)速度的要求.為了跨越多個(gè)物理數(shù)據(jù)中心建立分布式大表,突破單一數(shù)據(jù)中心由于時(shí)空矛盾無法建立超大集群的限制,需要滿足以下3個(gè)理論條件:

      1)數(shù)據(jù)組織方式.跨數(shù)據(jù)中心形成一個(gè)邏輯大表需要將數(shù)據(jù)按指定的分區(qū)分布至不同的數(shù)據(jù)中心HBase集群中,當(dāng)訪問存放在本地?cái)?shù)據(jù)中心的數(shù)據(jù)時(shí),無任何跨域數(shù)據(jù)交換.

      2)網(wǎng)絡(luò)條件.在廣域網(wǎng)環(huán)境下的遠(yuǎn)程數(shù)據(jù)中心訪問時(shí),要保障網(wǎng)絡(luò)帶寬足夠大,能夠支持跨域的大規(guī)模數(shù)據(jù)傳輸.

      3)異步復(fù)制.在網(wǎng)絡(luò)帶寬不能保證的情況下,由于涉及開銷較大的遠(yuǎn)程數(shù)據(jù)傳輸,對(duì)寫操作延遲比較嚴(yán)格的應(yīng)用,不適于跨數(shù)據(jù)中心的同步更新.根據(jù)CAP定律[16],可以通過犧牲一致性換取性能并容忍網(wǎng)絡(luò)異常,即采用異步復(fù)制方式實(shí)現(xiàn)最終一致性.

      針對(duì)上述3個(gè)問題,iSDA采用邏輯一體化、數(shù)據(jù)本地化和復(fù)制異步化技術(shù)實(shí)現(xiàn)HBase大表,如圖5所示:

      Fig.5 Structure of large table across domain.圖5 跨越大表組織結(jié)構(gòu)

      1)邏輯一體化.建立一個(gè)基于HBase的跨域虛擬大表,每個(gè)數(shù)據(jù)中心獨(dú)立運(yùn)行HBase,保留其高性能、可靠、可擴(kuò)展等特點(diǎn);多數(shù)據(jù)中心間基于虛擬大表分配模式設(shè)定頂層數(shù)據(jù)區(qū)域劃分,數(shù)據(jù)分配模式包括主鍵前綴、主鍵后綴、子字符串、正則表達(dá)式及自定義函數(shù).頂層數(shù)據(jù)劃分連同HBase的3級(jí)索引形成4級(jí)索引結(jié)構(gòu).由于頂層的索引規(guī)模較小并且不會(huì)經(jīng)常性變動(dòng),因此在各個(gè)中心采用Paxos協(xié)議[17]進(jìn)行同步,上層應(yīng)用無需修改即可使用HBase標(biāo)準(zhǔn)API透明地訪問虛擬大表,系統(tǒng)會(huì)自動(dòng)將讀寫操作按指定的邏輯分布至相應(yīng)的數(shù)據(jù)中心的HBase集群中執(zhí)行.

      2)數(shù)據(jù)本地化.指定區(qū)域位置進(jìn)行數(shù)據(jù)存取,將數(shù)據(jù)優(yōu)先導(dǎo)入本地?cái)?shù)據(jù)中心.訪問本地?cái)?shù)據(jù)時(shí),無任何跨數(shù)據(jù)中心數(shù)據(jù)交換,降低對(duì)廣域網(wǎng)帶寬要求.此外,基于HBase Coprocessor的分布式算法可通過在數(shù)據(jù)中心間分布并行實(shí)現(xiàn)高效全局?jǐn)?shù)據(jù)統(tǒng)計(jì)匯總.

      3)復(fù)制異步化.每個(gè)數(shù)據(jù)中心的HBase采用單獨(dú)的HDFS實(shí)例進(jìn)行數(shù)據(jù)存儲(chǔ),異地?cái)?shù)據(jù)中心之間進(jìn)行基于日志的數(shù)據(jù)備份.對(duì)于寫操作性能要求較高的應(yīng)用,可以將復(fù)制配置成異步方式,避免跨域數(shù)據(jù)中心間的同步操作.當(dāng)源中心故障時(shí)可從備份中心讀取數(shù)據(jù),實(shí)現(xiàn)跨數(shù)據(jù)中心高可靠性.

      3 驗(yàn)證和評(píng)價(jià)

      本節(jié)以電信、金融、環(huán)保等行業(yè)實(shí)際案例中的業(yè)務(wù)應(yīng)用、系統(tǒng)架構(gòu)和測試數(shù)據(jù)來驗(yàn)證iSDA體系結(jié)構(gòu)和關(guān)鍵技術(shù)的有效性,并通過與其他一體化方案進(jìn)行對(duì)比進(jìn)一步說明iSDA的軟硬件優(yōu)勢.

      3.1 可擴(kuò)展性

      驗(yàn)證項(xiàng)目1通過電信業(yè)務(wù)場景中的全庫掃描案例來驗(yàn)證iSDA的可擴(kuò)展性.全庫掃描基于HDFS Scan基準(zhǔn)測試實(shí)現(xiàn),測試結(jié)果與數(shù)據(jù)節(jié)點(diǎn)數(shù)目以及具體配置相關(guān).測試集群采用iSDA通用類型配置,2臺(tái)控制服務(wù)器每臺(tái)配置2顆6核Xeon E5-2650處理器、128GB內(nèi)存、萬兆網(wǎng)卡、內(nèi)置2塊2TB 7200RPM SATA盤;數(shù)據(jù)節(jié)點(diǎn)服務(wù)器每臺(tái)配置2顆6核Xeon E5-2650處理器、48GB內(nèi)存、萬兆網(wǎng)卡、內(nèi)置12塊7200RPM 2TB SATA盤;集群內(nèi)部采用2臺(tái)64端口萬兆交換機(jī).每塊硬盤數(shù)據(jù)量為500GB,單節(jié)點(diǎn)數(shù)據(jù)量約6TB,分別測試集群在不同節(jié)點(diǎn)規(guī)模下的掃描速度,測試結(jié)果如圖6所示:

      Fig.6 Scalability test results.圖6 可擴(kuò)展性測試結(jié)果

      Fig.7 Topology of project 2.圖7 驗(yàn)證項(xiàng)目2拓?fù)浣Y(jié)構(gòu)

      由測試結(jié)果可知,一方面,iSDA由于集群節(jié)點(diǎn)采用了多核CPU和多通道外存架構(gòu)設(shè)計(jì),通過配置和優(yōu)化HDFS對(duì)于多塊硬盤的并行讀寫機(jī)制,能夠提高單一節(jié)點(diǎn)的數(shù)據(jù)訪問速度,單一節(jié)點(diǎn)的數(shù)據(jù)吞吐量可達(dá)1 500MBps;另一方面,iSDA集群的數(shù)據(jù)吞吐量隨節(jié)點(diǎn)增加而增長,具有接近線性的擴(kuò)展能力,在128個(gè)節(jié)點(diǎn)規(guī)模下數(shù)據(jù)吞吐量接近120 000MBps,相當(dāng)于上千個(gè)Google高密度節(jié)點(diǎn)的處理能力[18].

      3.2 高效性

      在驗(yàn)證項(xiàng)目2中,某銀行針對(duì)數(shù)據(jù)快速增長及業(yè)務(wù)現(xiàn)狀,對(duì)iSDA進(jìn)行了非常詳細(xì)的測試與評(píng)估,其中包括10,20,40節(jié)點(diǎn)的應(yīng)用功能測試、技術(shù)功能測試和并發(fā)場景測試等.項(xiàng)目采用的拓?fù)浣Y(jié)構(gòu)如圖7所示,采用的通用型iSDA軟硬件配置如表3和表4所示,部分應(yīng)用案例說明如表5所示.在測試環(huán)境中,除iSDA集群外,WebLogic和LoadRunner服務(wù)器用來進(jìn)行OLTP測試,Shell客戶端用來進(jìn)行批處理和日志分析等測試,已有系統(tǒng)中的各類服務(wù)器主要用來進(jìn)行兼容性測試,下面分別介紹.

      Table 3 Hardware of Project 2表3 驗(yàn)證項(xiàng)目2硬件配置

      Table 4 Software of Project 2and Project 3表4 驗(yàn)證項(xiàng)目2,3軟件環(huán)境

      Table 5 Test Cases of Project 2表5 驗(yàn)證項(xiàng)目2測試案例

      第1類測試為批處理,測試從已歸檔的100TB數(shù)據(jù)中獲取信息以及加工計(jì)算的性能,10節(jié)點(diǎn)下的測試結(jié)果如圖8所示.由圖8可知,與原有生產(chǎn)系統(tǒng)相比,iSDA由于采用了分布式架構(gòu),在海量數(shù)據(jù)查詢(POC_QY_02,POC_QY_03)方面優(yōu)勢明顯,而在數(shù)據(jù)分析(POC_QY_01,POC_CNT_01)以及事務(wù)處理(POC_CNT_02)方面,iSDA由于兼顧了節(jié)點(diǎn)的性能縱向擴(kuò)展,因此表現(xiàn)不弱于傳統(tǒng)架構(gòu).

      Fig.8 Batch processing test results.圖8 批處理測試結(jié)果

      第2類測試為在線聯(lián)機(jī)事務(wù)處理OLTP,包括多表關(guān)聯(lián)、多維查詢以及數(shù)據(jù)更新、插入、查詢等案例,數(shù)據(jù)量達(dá)到30TB,約50億條.場景1是在20節(jié)點(diǎn)和40節(jié)點(diǎn)環(huán)境下分別進(jìn)行多案例混合并發(fā)測試,其中TC_OLTP_03用戶數(shù)占比40%(包括4個(gè)查詢條件組合,各占10%),TC_OLTP_06占20%,其他各占10%,并發(fā)用戶數(shù)為500,并發(fā)時(shí)間持續(xù)10min,考察處理成功率和TPS(transaction per second).在此基礎(chǔ)上,場景2同時(shí)啟動(dòng)2個(gè)HBase的裝載作業(yè),分別是通過Hive向HBase表的裝載和從HDFS文件到HBase表的裝載.以2個(gè)裝載作業(yè)作為背景,然后同時(shí)執(zhí)行場景1.OLTP場景測試結(jié)果如表6所示:

      Table 6 OLTP Test Results表6 OLTP測試結(jié)果

      測試結(jié)果表明,iSDA的OLTP并發(fā)查詢性能優(yōu)秀,成功率可達(dá)到99.9%以上,TPS可達(dá)到3 500 times?s以上,并且由于采用了分布式架構(gòu),在帶寬充足的情況下大規(guī)模數(shù)據(jù)的導(dǎo)入不會(huì)影響并發(fā)性能.而之所以擴(kuò)展到40節(jié)點(diǎn)后TPS基本不變,是因?yàn)闇y試環(huán)境采用LoadRunner+Web服務(wù)方式,單點(diǎn)的Web服務(wù)器成為系統(tǒng)瓶頸.

      第3類測試為日志分析,這一類應(yīng)用是iSDA中的MapReduce比較擅長的,解決思路是通過對(duì)數(shù)據(jù)集進(jìn)行切分,在Map階段進(jìn)行過濾、解析和分組路由,并通過Combine和中間結(jié)果壓縮減少數(shù)據(jù)傳輸量,在Reduce階段通過優(yōu)化算法進(jìn)行合并、統(tǒng)計(jì)、排序,測試結(jié)果表明iSDA能夠填補(bǔ)現(xiàn)有系統(tǒng)在日志分析上的空白.

      此外,驗(yàn)證項(xiàng)目2還進(jìn)行了109項(xiàng)技術(shù)功能測試,涉及系統(tǒng)的可擴(kuò)展性、可靠性、兼容性、易維護(hù)性、易開發(fā)性、開放性、擴(kuò)展性和安全性,最終iSDA通過108項(xiàng),僅不支持版本回退功能.

      上述驗(yàn)證項(xiàng)目表明,iSDA的應(yīng)用支持能力多樣,系統(tǒng)性能優(yōu)異,技術(shù)功能完善,完全能夠滿足金融行業(yè)大數(shù)據(jù)應(yīng)用的需求.

      3.3 跨域大表

      據(jù)初步統(tǒng)計(jì),目前某銀行應(yīng)用系統(tǒng)每年產(chǎn)生的歷史日志數(shù)據(jù)已經(jīng)超過1PB,如此大規(guī)模的數(shù)據(jù)如何實(shí)現(xiàn)跨地域的分布式存儲(chǔ)、處理和查詢是亟需解決的問題.測試項(xiàng)目3采用iSDA的跨集群HBase大表功能,在銀行日志管理系統(tǒng)中進(jìn)行了技術(shù)驗(yàn)證.測試方案的網(wǎng)絡(luò)拓?fù)淙鐖D9所示,集群配置如表7所示.2個(gè)iSDA集群間通過萬兆以太網(wǎng)連接網(wǎng)絡(luò),管理網(wǎng)絡(luò)為千兆以太網(wǎng),集群的軟件配置如表4所示.

      Fig .9 Topology of project3.圖9 驗(yàn)證項(xiàng)目3網(wǎng)絡(luò)拓?fù)?/p>

      Table 7 Hardware of Project 3表7 驗(yàn)證項(xiàng)目3硬件配置

      Table 8 Performance of HBase Big Table表8 HBase跨域大表性能

      測試項(xiàng)目3采用LoadRunner+Web+HBase的方式,分別對(duì)日志系統(tǒng)的高并發(fā)讀寫性能進(jìn)行了測試分析,數(shù)據(jù)量約100TB,134億條.在100和500并發(fā)場景下,本地集群和跨集群的按關(guān)鍵字查詢、按關(guān)鍵字刪除、新增數(shù)據(jù)在成功率均為100%,性能測試結(jié)果如表8所示.

      上述測試結(jié)果表明,iSDA可以實(shí)現(xiàn)跨集群的數(shù)據(jù)新增、刪除以及查詢功能,在萬兆網(wǎng)絡(luò)條件下性能與本地集群一樣優(yōu)異.上述方案的優(yōu)勢在于基于分布式架構(gòu)的HBase大表可以充分利用集群中所有的存儲(chǔ)資源,在高并發(fā)處理時(shí)調(diào)度所有的硬件資源進(jìn)行讀寫訪問,很容易就實(shí)現(xiàn)每秒數(shù)萬條數(shù)據(jù)的實(shí)時(shí)寫入、查詢和刪除,并且讀寫性能和已有的數(shù)據(jù)量基本沒有關(guān)系,在數(shù)據(jù)量很大(例如大于10TB)的情況下,仍然可以實(shí)現(xiàn)高效的寫入和查詢,讀寫延遲可以控制在毫秒級(jí).同時(shí),HBase大表有很好的水平擴(kuò)展性,當(dāng)服務(wù)器數(shù)量增加時(shí),讀寫吞吐量也會(huì)線性提高.此外,HBase大表的數(shù)據(jù)分布在多個(gè)數(shù)據(jù)中心,單個(gè)數(shù)據(jù)中心出現(xiàn)網(wǎng)絡(luò)等故障時(shí)不會(huì)影響其他數(shù)據(jù)中心的數(shù)據(jù)訪問,保證應(yīng)用系統(tǒng)的整體可用性.

      3.4 多樣性應(yīng)用

      驗(yàn)證項(xiàng)目4通過在環(huán)保領(lǐng)域的應(yīng)用示例介紹iSDA如何滿足行業(yè)大數(shù)據(jù)應(yīng)用的多樣性需求.

      根據(jù)定義6,環(huán)保行業(yè)流處理應(yīng)用場景的iSDA執(zhí)行過程如圖10(a)所示,可以實(shí)現(xiàn)污染源(污水、供熱)和大氣污染物(二氧化硫、氮氧化物、煙粉塵等)的實(shí)時(shí)監(jiān)測、異常報(bào)警,以及違規(guī)車輛(外埠、黃標(biāo)等)的實(shí)時(shí)監(jiān)控等應(yīng)用.

      根據(jù)定義4,環(huán)保行業(yè)交互處理應(yīng)用場景的iSDA執(zhí)行過程如圖10(b)所示,可以實(shí)現(xiàn)污染源、大氣污染物以及建筑工地(數(shù)量、揚(yáng)塵指標(biāo))的歷史曲線展示、多維度統(tǒng)計(jì)、對(duì)比分析等應(yīng)用.

      根據(jù)定義3,環(huán)保行業(yè)在線實(shí)時(shí)處理應(yīng)用場景的iSDA執(zhí)行過程如圖10(c)所示,可以實(shí)現(xiàn)基于地理位置的氣象信息查詢、大氣信息預(yù)警,以及區(qū)域、時(shí)間等多維度環(huán)境統(tǒng)計(jì)報(bào)表等應(yīng)用.

      根據(jù)定義5,環(huán)保行業(yè)交互處理應(yīng)用場景的iSDA執(zhí)行過程如圖10(d)所示,可以實(shí)現(xiàn)基于污染源、氣象、大氣歷史數(shù)據(jù)的趨勢預(yù)測,綜合污染源、氣象、大氣、工地、車輛數(shù)據(jù)的空氣質(zhì)量關(guān)聯(lián)分析和決策分析等應(yīng)用.

      Fig.10 Multi-type processing.圖10 多樣性處理過程

      上述應(yīng)用示例表明,基于混合型軟件架構(gòu)的iSDA能夠滿足行業(yè)大數(shù)據(jù)的在線實(shí)時(shí)處理、交互分析、離線批處理以及流處理等多樣性應(yīng)用需求,并且通過內(nèi)算計(jì)算引擎加速,能夠?qū)⒋髷?shù)據(jù)處理性能提高10倍以上,通過一體化管理平臺(tái),能夠保障系統(tǒng)的易用性、可靠性及可擴(kuò)展性.

      3.5 對(duì)比分析

      與傳統(tǒng)RDBS關(guān)系數(shù)據(jù)庫、MPP數(shù)據(jù)庫的一體化解決方案相比(如表9所示),iSDA在性能和可擴(kuò)展性方面優(yōu)勢明顯,但在管理工具、SQL接口支持程度、ETL?BI等上下游軟件工具兼容性方面尚有差距.

      與基于Cloudera,Hortonworks等Hadoop發(fā)行版的一體機(jī)相比(如表10所示),除了在可用性、安全性和可管理性上全面看齊這些主流大數(shù)據(jù)平臺(tái)之外,可擴(kuò)展性和可定制化設(shè)計(jì)使得iSDA在硬件特性上更具有優(yōu)勢,混合軟件棧和多樣性處理模型使得iSDA能夠應(yīng)對(duì)的應(yīng)用類型更為豐富,廣泛采用的內(nèi)存計(jì)算優(yōu)化使得iSDA處理性能大幅提升.

      Table 9 Comparison with Traditional Database Integration Solutions表9 與傳統(tǒng)數(shù)據(jù)庫一體化解決方案比較

      Table 10 Comparison with Hadoop Integration Solutions表10 與Hadoop 一體化解決方案比較

      Continued(Table 10)

      4 結(jié)束語

      本文針對(duì)當(dāng)前行業(yè)大數(shù)據(jù)應(yīng)用對(duì)處理平臺(tái)的需求,給出了大數(shù)據(jù)一體機(jī)可擴(kuò)展性和可定制性的理論基礎(chǔ),建立了面向?qū)崟r(shí)、交互、流式和批式等應(yīng)用類型的多樣性處理模型,并基于此設(shè)計(jì)和實(shí)現(xiàn)了云海大數(shù)據(jù)一體機(jī)iSDA.iSDA基于雙向可擴(kuò)展的體系結(jié)構(gòu),采用可定制化設(shè)計(jì)和混合軟件棧,覆蓋軟硬一體全環(huán)節(jié),滿足行業(yè)應(yīng)用的持續(xù)擴(kuò)展、個(gè)性化和一體化需求.在電信、金融和環(huán)保實(shí)際案例中的應(yīng)用和測試表明,iSDA體系結(jié)構(gòu)和關(guān)鍵技術(shù)是可行和有效性的.下一步的工作是基于iSDA建立完善的大數(shù)據(jù)解決方案,針對(duì)數(shù)據(jù)處理的各個(gè)環(huán)節(jié)提供全程技術(shù)支持與保障,幫助行業(yè)用戶明確業(yè)務(wù)需求,選擇合適的軟硬件架構(gòu),解決環(huán)境部署、應(yīng)用移植、二次開發(fā)、調(diào)優(yōu)上線、運(yùn)行維護(hù)等技術(shù)難題,幫助用戶跨過大數(shù)據(jù)應(yīng)用的門檻.

      [1]CCF Task Force on Big Data.2013White paper of China s big data technology and industrial development[EB?OL].2013[2014-08-01].http:??www.bigdataforum.org.cn? uploads?soft?131230?2013writepaper.pdf(in Chinese)(CCF大數(shù)據(jù)專家委員會(huì).2013中國大數(shù)據(jù)技術(shù)與產(chǎn)業(yè)發(fā)展白皮書[EB?OL].2013[2014-08-01].http:??www.bigdataforum.org.cn?uploads?soft?131230?2013writepaper.pdf)

      [2]Chinese Institute of Engineering Development Strategies.2014Report on the Development of China s Strategic Emerging Industries[M].Beijing:Science Press,2014:101 112(in Chinese)(中國工程科技發(fā)展戰(zhàn)略研究院.2014中國戰(zhàn)略性新興產(chǎn)業(yè)發(fā)展報(bào)告[M].北京:科學(xué)出版社,2014:101 112)

      [3]Ranger C,Raghuraman R,Penmetsa A,et al.Evaluating MapReduce for multi-core and multiprocessor systems[C]?? Proc of the 13th Int Conf on High-Performance Computer Architecture.Los Alamitos,CA:IEEE Computer Society,2007:13 24

      [4]International Data Corporation.2013 10ICT market forecast of the Asia Pacific region[EB?OL].2012[2014-08-01].http:??www.idc.com.cn?prodserv?detail.jsp?id=NTA3(in Chinese)(國際數(shù)據(jù)公司.2013年亞太區(qū)ICT市場十大預(yù)測[EB?OL].2012[2014-08-01].http:??www.idc.com.cn?prodserv? detail.jsp?id=NTA3)

      [5]O Reilly Radar Team.Big Data Now:Current Perspectives from O Reilly Radar 2013Edition[M].Sebastopol,CA:O Reilly Media,2013

      [6]Gustafson J L.Reevaluating Amdahl s law[J].Communications of the ACM,1988,31(5):532 533

      [7]Li Wubin,Zhao Zhuofeng,Qi Kaiyuan,et al.A consistencypreserving mechanism for Web services response caching[C]??Proc of the 20th Int Conf on Web Services.Los Alamitos,CA:IEEE Computer Society,2008:683 690

      [8]Inspur Electronic Information Industry Co Ltd,Department of System Software.The white paper of in-cloud big data appliance[R].Jinan:Inspur Electronic Information Industry Co Ltd,2013(in Chinese)(浪潮電子信息產(chǎn)業(yè)股份有限公司系統(tǒng)軟件部.云海大數(shù)據(jù)一體機(jī)技術(shù)白皮書[R].濟(jì)南:浪潮電子信息產(chǎn)業(yè)股份有限公司,2013)

      [9]Dean J,Ghemawat S.MapReduce:Simplified data processing on large clusters[J].Communications of the ACM,2008,51(1):107 113

      [10]Chang F,Dean J,Ghemawat S,et al.Bigtable:A distributed storage system for structured data[C]??Proc of the 7th Symp on Operating Systems Design and Implementation.Berkeley,CA:USENIX Association,2006:205 218

      [11]Zaharia M,Chowdhury N M,F(xiàn)ranklin M,et al.Spark:Cluster computing with working sets[C]??Proc of the 2nd USENIX Conf on Hot Topics in Cloud Computing.Berkeley,CA:USENIX Association,2010:1 10

      [12]Neumeyer L,Robbins L,Nair A,et al.S4:Distributed stream computing platform[C]??Proc of the 10th IEEE Int Conf on Data Mining Workshops.Los Alamitos,CA:IEEE Computer Society,2010:170 177

      [13]Wang Endong,Zhang Qing,Shen Bo,et al.MIC High Performance Computing Programming Guide[M].Beijing:China Water &Power Press,2012(in Chinese)(王恩東,張清,沈鉑,等.MIC高性能計(jì)算編程指南[M].北京:中國水利水電出版社,2012)

      [14]Wang Youwei,Zhou Jiang,Wang Weiping,et al.Clover:A distributed file system of expandable metadata service derived from HDFS[C]??Proc of the 2012Int Conf on Cluster Computing.Los Alamitos,CA:IEEE Computer Society,2012:126 134

      [15]Qi Kaiyuan,Han Yanbo,Zhao Zhuofeng,et al.Real-time data stream processing and key techniques oriented to largescale sensor data[J].Computer Integrated Manufacturing System,2013,19(3):641 653(in Chinese)(亓開元,韓燕波,趙卓峰,等.面向大規(guī)模感知數(shù)據(jù)的實(shí)時(shí)數(shù)據(jù)流處理方法及關(guān)鍵技術(shù)[J].計(jì)算機(jī)集成制造系統(tǒng),2013,19(3):641 653)

      [16]Gilbert S,Lynch N.Brewer s conjecture and the feasibility of consistent,available,partition-tolerant Web services[J].ACM SIGACT News,2002,33(2):51 59

      [17]Lamport L.Paxos made simple[J].ACM SIGACT News,2001,32(4):18 25

      [18]Melnik S,Gubarev A,Long J J,et al.Dremel:Interactive analysis of web-scale datasets[J].Communications of the ACM,2011,54(6):114 123

      Zhang Dong,born in 1974.Researcher.Member of China Computer Federation.His current research interests include computer architectures,big data and operation systems,etc.

      Qi Kaiyuan,born in 1984.PhD and engineer.Member of China Computer Federation.His current research interests include big data processing and cloud computing.

      Wu Nan,born in 1982.Senior engineer.His current research interests include operating systems and big data processing.

      Xin Guomao,born in 1981.Senior engineer.His current research interests include cloud computing,and big data processing systems and applications.

      Liu Zhengwei,born in 1977.Senior engineer.His current research interests include cloud operating systems and big data storage systems.

      Yan Bingheng,born in 1982.PhD and senior engineer.His current research interests include computer architectures and virtualization.

      Guo Feng,born in 1982.Engineer.His current research interests include cloud operating systems and information security.

      Architecture and Key Technologies of In-Cloud Smart Data Appliance

      Zhang Dong,Qi Kaiyuan,Wu Nan,Xin Guomao,Liu Zhengwei,Yan Bingheng,and Guo Feng
      (State Key Laboratory of High-End Server &Storage Technology,Jinan250101)(Inspur Electronic Information Industry Co.,Ltd.,Jinan250101)

      To make up for the gap between big data technologies and industry applications,this paper proposes the models of scalability,customizability and multi-type processing of big data appliance,based on which the in-cloud smart data appliance,i.e.iSDA,is designed and implemented.First,the iSDA is assembled by optimally developing the cooperative computing units,heterogeneous storage and high-speed switching network to take fully advantages of both scale-out and scale-up architectures.Second,iSDA is devised to satisfy diversity requirements of industry big data applications by virtue of hardware customization from light-weight to heavy-load styles,and as well as hybrid software stack including real-time,interaction,streaming and batch processing all accelerated by the in-memory computing engine.Furthermore,in the consideration of the HDFS metadata service bottleneck,MapReduce load skew and HBase cross-domain issue,this paper as well introduces the technologies of multiple metadata servers,load balance algorithm and cross-datacenter big table used in iSDA.The practical use cases in the telecommunication,finance and environmental protection industries show that the proposed architecture and key technologies are feasible and effective,and the comprehensive comparisons with traditional MPP databases and other mainstream Hadoop distributions are also given to detail the advantages of iSDA from both hardware and software aspects.Key words big data appliance;scalability;customizability;hybrid software stack;big data industrial application

      TP311.133.1;TP338.6

      2014-11-24;

      2015-02-28

      國家“八六三”高技術(shù)研究發(fā)展計(jì)劃基金項(xiàng)目(2015AA050203);“核高基”國家科技重大專項(xiàng)(2013ZX01039002)This work was supported by the National High Technology Research and Development Program of China(863Program)(2015AA050203)and the Core Electronic Devices,High-End Generic Chips and Basic Software of National Science and Technology Major Projects of China(2013ZX01039002).

      亓開元(qiky@inspur.com)

      關(guān)鍵詞 大數(shù)據(jù)一體機(jī);可擴(kuò)展性;可定制性;混合型軟件架構(gòu);大數(shù)據(jù)行業(yè)應(yīng)用

      猜你喜歡
      可擴(kuò)展性
      基于節(jié)點(diǎn)可信度的區(qū)塊鏈動(dòng)態(tài)分片模型
      如何構(gòu)建安全的SUN SOLARIS系統(tǒng)
      基于.Net平臺(tái)的信息化自動(dòng)測試系統(tǒng)設(shè)計(jì)
      一種具有可擴(kuò)展性的RFID標(biāo)簽輕量級(jí)組證明協(xié)議
      恩智浦推出全新i.MX 8X 處理器,為工業(yè)應(yīng)用帶來更高的安全性、可靠性和可擴(kuò)展性
      汽車零部件(2017年3期)2017-07-12 17:03:58
      電力監(jiān)控軟件的可擴(kuò)展性設(shè)計(jì)
      基于SSM框架的在線共享筆記應(yīng)用系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于微軟技術(shù)的高可擴(kuò)展性中小企業(yè)系統(tǒng)解決方案研究
      構(gòu)建高可擴(kuò)展性的物流裝備管理系統(tǒng)
      一種基于MapReduce的頻繁項(xiàng)集挖掘算法
      三都| 商水县| 高唐县| 屯门区| 高陵县| 平阴县| 大邑县| 辽阳市| 前郭尔| 鄄城县| 霸州市| 伊金霍洛旗| 裕民县| 七台河市| 鸡西市| 绥棱县| 潞城市| 沈阳市| 洪洞县| 威宁| 南陵县| 临泉县| 卢湾区| 阿拉善右旗| 黎川县| 通辽市| 漳浦县| 青河县| 深圳市| 安达市| 泊头市| 张掖市| 开鲁县| 伊宁县| 黔西县| 涞水县| 讷河市| 鄢陵县| 南汇区| 九台市| 诏安县|