陳斌
【摘要】 本文通過(guò)分析大數(shù)據(jù)發(fā)展現(xiàn)狀和主流大數(shù)據(jù)技術(shù)架構(gòu),研究了大數(shù)據(jù)在電信運(yùn)營(yíng)商大數(shù)據(jù)平臺(tái)部署策略
【關(guān)鍵詞】 大數(shù)據(jù) 電信運(yùn)營(yíng)商 4V Hadoop Spark 流計(jì)算
一、引言
大數(shù)據(jù)的應(yīng)用是在互聯(lián)網(wǎng)的高速發(fā)展中誕生的。谷歌提出了一套以分布式為特征的全新技術(shù)體系,即分布式文件系統(tǒng)(GFS,Google File System)、分布式并行計(jì)算(MapReduce)和分布式數(shù)據(jù)庫(kù)(BigTable)等技術(shù)。這些技術(shù)奠定了當(dāng)前大數(shù)據(jù)技術(shù)的基礎(chǔ),可以認(rèn)為是大數(shù)據(jù)技術(shù)的源頭。
二、大數(shù)據(jù)發(fā)展現(xiàn)狀
近年大數(shù)據(jù)的發(fā)展呈現(xiàn)以下兩個(gè)特征:1)互聯(lián)網(wǎng)公司引領(lǐng)大數(shù)據(jù)發(fā)展。互聯(lián)網(wǎng)公司在搜索、廣告領(lǐng)域積極采用大數(shù)據(jù)技術(shù)優(yōu)化既有業(yè)務(wù)。二是今年以來(lái)陸續(xù)推出一系列面向第三方的大數(shù)據(jù)服務(wù)。2)傳統(tǒng)企業(yè)大數(shù)據(jù)應(yīng)用仍處在探索期,發(fā)展?jié)u趨理性。傳統(tǒng)企業(yè)在大數(shù)據(jù)應(yīng)用的思路上也在糾偏,更加務(wù)實(shí)。一是更加注重更干凈、結(jié)構(gòu)化小的數(shù)據(jù)。二是更加注重企業(yè)自身沉淀下來(lái)的內(nèi)部數(shù)據(jù)的價(jià)值挖掘。三是更加注重根據(jù)業(yè)務(wù)需求把Hadoop 與傳統(tǒng)數(shù)據(jù)倉(cāng)庫(kù)結(jié)合起來(lái)用。
三、大數(shù)據(jù)關(guān)鍵技術(shù)
1)大數(shù)據(jù)存儲(chǔ)管理。傳統(tǒng)的單機(jī)文件系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)要求一個(gè)文件系統(tǒng)的數(shù)據(jù)必須存儲(chǔ)在一臺(tái)物理機(jī)上,在冗余性、可擴(kuò)展性和容錯(cuò)能力和并發(fā)能力上難以滿足大數(shù)據(jù)的需求。2)大數(shù)據(jù)計(jì)算能力。傳統(tǒng)的數(shù)據(jù)計(jì)算能力的提升依賴于擴(kuò)容單機(jī)的CPU性能、增加內(nèi)存、擴(kuò)展磁盤(pán)等方式,難以支撐平滑擴(kuò)容。以MapReduce為代表的分布式并行計(jì)算技術(shù)可以通過(guò)低成本的通用服務(wù)器搭建系統(tǒng)。通過(guò)添加服務(wù)器擴(kuò)展系統(tǒng)的總處理能力。3)大數(shù)據(jù)分析技術(shù)。大數(shù)據(jù)分析主要在兩個(gè)方面,一是對(duì)海量的結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)進(jìn)行高效率的深度分析,如從文本網(wǎng)頁(yè)中進(jìn)行自然語(yǔ)言分析;二是對(duì)非結(jié)構(gòu)化的語(yǔ)音、圖片和視頻進(jìn)行機(jī)器可以識(shí)別的分析提取有用的信息。
四、大數(shù)據(jù)的主流技術(shù)
1、Hadoop。Hadoop是基于Java語(yǔ)言開(kāi)發(fā),以分布式文件系統(tǒng)和Mapreduce為核心。其特點(diǎn)如下:1)可擴(kuò)展性:Hadoop運(yùn)行在基于X86結(jié)構(gòu)的普通PC服務(wù)器或刀片服務(wù)器上,硬件和軟件松耦合在一起,可以很方便的增加計(jì)算節(jié)點(diǎn)。2)可靠性:Hadoop能夠自動(dòng)保存數(shù)據(jù)的多個(gè)副本,并且能夠自動(dòng)將失敗的任務(wù)重新分配,確保能夠針對(duì)失敗的節(jié)點(diǎn)重新分布計(jì)算。3)低成本:Hadoop架構(gòu)在廉價(jià)的硬件服務(wù)器上,不需要昂貴的硬件作支撐。其軟件是開(kāi)源產(chǎn)品,不需要授權(quán)費(fèi)用。4)高效性:相比傳統(tǒng)并行計(jì)算結(jié)構(gòu),Hadoop的計(jì)算和存儲(chǔ)是一體的,實(shí)現(xiàn)任務(wù)之間無(wú)共享,I/O開(kāi)銷小。
2、Spark。Spark擁有MapReduce的優(yōu)點(diǎn),但不同于MapReduce的Job中間輸出,其結(jié)果可以保存在內(nèi)存中,從而不再需要讀寫(xiě)HDFS。其有以下特點(diǎn):1)速度快。Spark支持內(nèi)存計(jì)算,對(duì)于小數(shù)據(jù)集能達(dá)到亞秒級(jí)的延遲。2)易于使用。Spark支持Sscala、Java和Python編寫(xiě)程序。Spark提供了超過(guò)80個(gè)高級(jí)運(yùn)算符,以便于更容易的構(gòu)建并行應(yīng)用程序。3)與HDFS底層兼容。Spark能夠運(yùn)行在Hadoop 2.x的YARN集群管理器上,并且能夠讀取任何存在Hadoop數(shù)據(jù)。
2、流計(jì)算。流式數(shù)據(jù)是指將數(shù)據(jù)看作數(shù)據(jù)流的形式來(lái)處理。數(shù)據(jù)流是在時(shí)間分布和數(shù)量上無(wú)限的一系列動(dòng)態(tài)數(shù)據(jù)集合體;數(shù)據(jù)記錄是數(shù)據(jù)流的最小組成單元。流計(jì)算的技術(shù)特點(diǎn)如下:1)實(shí)時(shí)性。流數(shù)據(jù)是實(shí)時(shí)產(chǎn)生、實(shí)時(shí)計(jì)算,結(jié)果反饋往往也需要保證及時(shí)性。2)易失性。在流計(jì)算環(huán)境中,數(shù)據(jù)流往往是到達(dá)后立即被計(jì)算并使用,只有極少數(shù)的數(shù)據(jù)才會(huì)被持久化地保存下來(lái),大多數(shù)數(shù)據(jù)往往會(huì)被直接丟棄。3)突發(fā)性。在流計(jì)算中,數(shù)據(jù)的產(chǎn)生完全由數(shù)據(jù)源確定,由于不同的數(shù)據(jù)源在不同時(shí)空范圍內(nèi)的狀態(tài)不統(tǒng)一且發(fā)生動(dòng)態(tài)變化,導(dǎo)致數(shù)據(jù)流的速率呈現(xiàn)出了突發(fā)性的特征。
五、主流技術(shù)方案比較
目前大數(shù)據(jù)平臺(tái)建設(shè)最常見(jiàn)的是基于Hadoop平臺(tái)和MPP數(shù)據(jù)庫(kù)的兩種方案。Hadoop、MPP數(shù)據(jù)庫(kù)和傳統(tǒng)數(shù)據(jù)庫(kù)并非是互相取代的關(guān)系。因此,在很多大數(shù)據(jù)解決方案中,單一大數(shù)據(jù)技術(shù)無(wú)法滿足所有的要求,而是要根據(jù)實(shí)際場(chǎng)景采用不同的技術(shù)方案或采用混搭架構(gòu)進(jìn)行綜合處理。
六、電信運(yùn)營(yíng)商大數(shù)據(jù)部署建議
大數(shù)據(jù)平臺(tái)建設(shè)目前有兩種方式,建議采用第2種方式:1)以現(xiàn)有分析系統(tǒng)BI為基礎(chǔ),進(jìn)行擴(kuò)展,構(gòu)建統(tǒng)一開(kāi)放數(shù)據(jù)平臺(tái)。2)以統(tǒng)一數(shù)據(jù)管理為契機(jī),通過(guò)數(shù)據(jù)統(tǒng)一采集、存儲(chǔ)與處理入手,新建大數(shù)據(jù)平臺(tái)。方式2可迅速匯聚數(shù)據(jù),不影響現(xiàn)網(wǎng)各系統(tǒng)的運(yùn)行,后期可將經(jīng)分,性能管理等系統(tǒng)上移為數(shù)據(jù)集市,專注于專業(yè)分析。各數(shù)據(jù)源僅將數(shù)據(jù)送往大數(shù)據(jù)平臺(tái)。
大數(shù)據(jù)技術(shù)架構(gòu)建議按照“松耦合、標(biāo)準(zhǔn)化、分層開(kāi)放”的標(biāo)準(zhǔn)進(jìn)行方案選取。而在數(shù)據(jù)層面,運(yùn)營(yíng)商面臨數(shù)據(jù)規(guī)模大,數(shù)據(jù)處理復(fù)雜,數(shù)據(jù)結(jié)構(gòu)多樣化等多種挑戰(zhàn)。無(wú)論是傳統(tǒng)數(shù)據(jù)庫(kù)還是分布式數(shù)據(jù)庫(kù),均難以單獨(dú)滿足數(shù)據(jù)存儲(chǔ)和分析的需求。大數(shù)據(jù)平臺(tái)建議采用Hadoop作為大數(shù)據(jù)的主要存儲(chǔ)平臺(tái),各分析集市、應(yīng)用系統(tǒng)可根據(jù)數(shù)據(jù)分析的深度,實(shí)時(shí)性采取Hadoop,Spark或MPP混搭架構(gòu)。
參 考 文 獻(xiàn)
[1] Tom White.華東師范大學(xué)數(shù)據(jù)科學(xué)與工程學(xué)院譯.Hadoop權(quán)威指南(第3版)(修訂版).北京:清華大學(xué)出版社.2015.
[2] 工業(yè)和信息化部電信研究院.大數(shù)據(jù)白皮書(shū)(2014).2014.