程龍軍
(國營第七八五廠,山西 太原 030024)
文獻(xiàn)[1,2]概述了數(shù)據(jù)挖掘在軍用指揮控制系統(tǒng)中的應(yīng)用;鄭向陽[3]將數(shù)據(jù)倉庫運(yùn)用于消防信息化建設(shè);薛超等[4]進(jìn)一步結(jié)合數(shù)據(jù)挖掘及OLAP,倡導(dǎo)建立基于數(shù)據(jù)倉庫的作戰(zhàn)指揮決策支持系統(tǒng)。但大數(shù)據(jù)分析呈現(xiàn)出數(shù)據(jù)量更大、查詢分析更加復(fù)雜等特點(diǎn)[5],而傳統(tǒng)的數(shù)據(jù)倉庫應(yīng)用中,ETL過程復(fù)雜、耗時(shí),無法滿足即席分析的需求,且面向主題構(gòu)建的數(shù)據(jù)倉庫靈活性不佳。因此,以計(jì)算為中心向以數(shù)據(jù)處理為中心的思維轉(zhuǎn)變成為必然[6]。
本文針對(duì)大數(shù)據(jù)的物理特征,提出基于Hadoop 的指揮決策系統(tǒng)模型,旨在通過構(gòu)建面向多源異構(gòu)數(shù)據(jù)的大數(shù)據(jù)分析架構(gòu),結(jié)合數(shù)據(jù)挖掘技術(shù),以解決RDBMS 在大數(shù)據(jù)分析擴(kuò)展性方面的瓶頸,最終實(shí)現(xiàn)通過較低成本投入而達(dá)到較高效的深度分析的目的。
大數(shù)據(jù)是指“無法用現(xiàn)有的軟件工具提取、存儲(chǔ)、搜索、共享、分析和處理的海量的、復(fù)雜的數(shù)據(jù)集合?!睒I(yè)界通常用4 個(gè)V 來概括大數(shù)據(jù)的特征[6],即:
大數(shù)據(jù)所顯現(xiàn)出的最直接特性即為該集合數(shù)據(jù)量的巨大。理論上,這種規(guī)模性也在一定程度上使得大數(shù)據(jù)具有特殊的領(lǐng)域性,即某1GB 的數(shù)據(jù)集也許在Web 挖掘中不算大規(guī)模數(shù)據(jù),而在科學(xué)計(jì)算中卻可謂貨真價(jià)實(shí)的Big Data。
相較以文本為主的關(guān)系數(shù)據(jù),結(jié)構(gòu)化、半結(jié)構(gòu)化以及非結(jié)構(gòu)化數(shù)據(jù)共同構(gòu)成了大數(shù)據(jù)集合,且半結(jié)構(gòu)化及非結(jié)構(gòu)化數(shù)據(jù)占有相對(duì)較大的比重。大量的多源異構(gòu)甚至非結(jié)構(gòu)化數(shù)據(jù)增加了深度分析的復(fù)雜度,使得并行數(shù)據(jù)庫技術(shù)難以突破擴(kuò)展性這一瓶頸。
區(qū)別于傳統(tǒng)的數(shù)據(jù)挖掘,大數(shù)據(jù)體量及增量的爆炸式增長要求數(shù)據(jù)產(chǎn)生后可以及時(shí)的被分析、消費(fèi)并呈現(xiàn),即數(shù)據(jù)的實(shí)時(shí)性需求決定了即席分析與決策的必要性。
大數(shù)據(jù)的根本意義在于發(fā)掘數(shù)據(jù)內(nèi)部具有指導(dǎo)性價(jià)值的模式或知識(shí)。而相對(duì)于海量的多源異構(gòu)數(shù)據(jù),大數(shù)據(jù)價(jià)值表現(xiàn)出一定的稀缺性及不確定性。因此,如何高效、準(zhǔn)確的進(jìn)行大數(shù)據(jù)的挖掘成為了亟待解決的問題。
所謂云計(jì)算,即圍繞低成本、高可靠、高可用、規(guī)??缮炜s等研究目標(biāo)[7],向用戶提供按需的、透明的服務(wù)的虛擬化分布式自治性計(jì)算架構(gòu)[8-10],其體系架構(gòu)如圖1 示。
圖1 云計(jì)算體系架構(gòu)
為應(yīng)對(duì)數(shù)據(jù)洪流,云計(jì)算提供了支持大數(shù)據(jù)存儲(chǔ)、管理以及數(shù)據(jù)分析等的解決方案[6],具體表現(xiàn)為:
1)數(shù)據(jù)存儲(chǔ)
為保證海量數(shù)據(jù)的高可用、高可靠和經(jīng)濟(jì)性,并考慮到存儲(chǔ)系統(tǒng)的I/O 性能,云計(jì)算環(huán)境中采用分布式存儲(chǔ)的方式來存儲(chǔ)數(shù)據(jù)。采用數(shù)據(jù)分塊及冗余存儲(chǔ),通過增加副本拷貝開銷以保證存儲(chǔ)數(shù)據(jù)的可靠性;構(gòu)建廉價(jià)服務(wù)器集群,達(dá)到較高的經(jīng)濟(jì)性;利用容錯(cuò)技術(shù)解決存儲(chǔ)節(jié)點(diǎn)時(shí)效,實(shí)現(xiàn)系統(tǒng)的高可用性。
具有代表性的數(shù)據(jù)存儲(chǔ)實(shí)現(xiàn)為Ghemawat 等人為Google設(shè)計(jì)的GFS(Google File System)[11]其執(zhí)行流程如圖2。
圖2 GFS 執(zhí)行流程圖
如圖2 示,GFS 中共包含三種節(jié)點(diǎn):總控服務(wù)器節(jié)點(diǎn)(GFS Master),數(shù)據(jù)塊服務(wù)器節(jié)點(diǎn)(GFS Chunkserver)以及客戶端節(jié)點(diǎn)(GFS Client)。其中,在GFS 中,文件被劃分為大小一定的數(shù)據(jù)塊,由Master 節(jié)點(diǎn)創(chuàng)建并分配其全局句柄(Chunk handle),并由Chunkserver 節(jié)點(diǎn)以副本的形式冗余存儲(chǔ)于各計(jì)算節(jié)點(diǎn),統(tǒng)一由元數(shù)據(jù)管理節(jié)點(diǎn)管理。當(dāng)Client 節(jié)點(diǎn)請(qǐng)求訪問數(shù)據(jù)時(shí),由Master 節(jié)點(diǎn)獲取其句柄Chunk 并返回與之映射的Chunkserver,最終完成數(shù)據(jù)的存取。
2)數(shù)據(jù)管理
云系統(tǒng)的數(shù)據(jù)管理往往采用數(shù)據(jù)庫領(lǐng)域中列存儲(chǔ)的數(shù)據(jù)管理模式。將表按列劃分后存儲(chǔ)。以BigTable 為例,其以行、列、記錄板及時(shí)間戳為基本元素,采用“根表-元數(shù)據(jù)表-用戶表”三級(jí)存儲(chǔ)模式來存儲(chǔ)位置信息,利用主服務(wù)器、記錄板服務(wù)器及客戶端等組件的相互調(diào)用來實(shí)現(xiàn)數(shù)據(jù)管理。
3)數(shù)據(jù)分析
海量數(shù)據(jù)的存儲(chǔ)與管理是數(shù)據(jù)分析的基礎(chǔ),而云計(jì)算最終要實(shí)現(xiàn)的是大數(shù)據(jù)分析。為此,云計(jì)算需提供簡單有效的編程模型以服務(wù)于大數(shù)據(jù)的處理與分析,并支持規(guī)模擴(kuò)展且向下透明。
在現(xiàn)有云計(jì)算研究中,Map-Reduce 被廣泛應(yīng)用。其執(zhí)行過程如圖3 示。
圖3 Map-Reduce 執(zhí)行流程圖
在大數(shù)據(jù)分析與處理過程中,Map 實(shí)現(xiàn)對(duì)各分塊數(shù)據(jù)的處理并產(chǎn)生中間結(jié)果,Reduce 完成對(duì)中間結(jié)果的歸約。即Map-Reduce 極大的簡化了分布式編程,將程序開發(fā)者從繁雜的并行程序設(shè)計(jì)及高可靠性與可擴(kuò)展性解決方案的構(gòu)建中解放出來,為其專注于應(yīng)用本身的開發(fā)提供了可能。
針對(duì)指揮決策系統(tǒng)所表現(xiàn)出的大數(shù)據(jù)特性,本文結(jié)合云計(jì)算及數(shù)據(jù)挖掘技術(shù),利用Hadoop 平臺(tái),期望搭建面向指揮作戰(zhàn)的大數(shù)據(jù)分析生態(tài)系統(tǒng),其模型架構(gòu)如圖4 示。
圖4 基于Hadoop 的指揮決策系統(tǒng)模型架構(gòu)圖
由圖4 知,海量的多源異構(gòu)數(shù)據(jù)經(jīng)過抽取與轉(zhuǎn)換操作,作為資源存儲(chǔ)到分布式計(jì)算平臺(tái);通過構(gòu)建關(guān)聯(lián)分析、聚類、分類、偏差檢測、序列及回歸等挖掘模型,將數(shù)據(jù)處理進(jìn)一步抽象為MapReduce 編程模型;當(dāng)請(qǐng)求地形分析、氣候分析、兵力火力分析及風(fēng)險(xiǎn)預(yù)測等業(yè)務(wù)時(shí),調(diào)用MapReduce 層之上的Hive、Datameer 及Pig 等高級(jí)數(shù)據(jù)處理服務(wù),以期提供面向大數(shù)據(jù)的深層分析。
借鑒Facebook 的數(shù)據(jù)分析案例,系統(tǒng)包含用于生產(chǎn)的核心Hive 與備份Hive,分別提供系統(tǒng)數(shù)據(jù)的分析與即席查詢功能,從而隔離不同業(yè)務(wù)之間的交互對(duì)核心Hive 的性能影響,以保證系統(tǒng)數(shù)據(jù)分析的性能。
在數(shù)據(jù)爆炸的今天,人們?nèi)蕴幱跀?shù)據(jù)匱乏的窘境。尤其在作戰(zhàn)指揮中,決策者無時(shí)無刻不面臨著來自各種途徑的海量情報(bào)信息,且這些數(shù)據(jù)卻是常規(guī)的手工或腦力活動(dòng)所不能解決的,而常規(guī)的數(shù)據(jù)處理方式也無法高效、準(zhǔn)確的進(jìn)行數(shù)據(jù)流的處理與分析。本文構(gòu)建的基于Hadoop 的指揮決策系統(tǒng)模型,旨在應(yīng)對(duì)多源異構(gòu)大數(shù)據(jù)的即席分析需求,通過云計(jì)算及數(shù)據(jù)挖掘技術(shù),輔助決策者完成對(duì)參戰(zhàn)人員的協(xié)同管理,最終實(shí)現(xiàn)信息優(yōu)勢(shì)向決策優(yōu)勢(shì)的轉(zhuǎn)變。
[1]鄭海濤,錢樸慧.指揮控制系統(tǒng)中的數(shù)據(jù)挖掘[J].火力與指揮控制,2004(z1):59-61.
[2]唐曉萍.數(shù)據(jù)挖掘技術(shù)及其在指揮控制系統(tǒng)中的應(yīng)用[J].火力與指揮控制,2002,27(2):35-38.
[3]鄭向陽.數(shù)據(jù)倉庫與消防信息化建設(shè)[J].科技信息,2010(22):10191-10192.
[4]薛超,朱慶生,劉昌志,等.基于數(shù)據(jù)倉庫的作戰(zhàn)指揮決策支持系統(tǒng)研究[J].價(jià)值工程,2011,30(11):186-187.
[5]王珊,王會(huì)舉,覃雄派,等.架構(gòu)大數(shù)據(jù):挑戰(zhàn),現(xiàn)狀與展望[J].計(jì)算機(jī)學(xué)報(bào),2011,34(10):1741-1752.
[6]孟小峰,慈祥.大數(shù)據(jù)管理:概念,技術(shù)與挑戰(zhàn)[J].計(jì)算機(jī)研究與發(fā)展,2013,50(1):146-169.
[7]羅軍舟,金嘉暉,宋愛波.云計(jì)算-體系架構(gòu)與關(guān)鍵技術(shù)[J].通信學(xué)報(bào),2011,32(7):3-21.
[8]陳康,鄭緯民.云計(jì)算:系統(tǒng)實(shí)例與研究現(xiàn)狀[J].軟件學(xué)報(bào),2009,20(5):1337-1348.
[9]李喬,鄭嘯.云計(jì)算研究現(xiàn)狀綜述[J].計(jì)算機(jī)科學(xué),2011,38(4):32-37.
[10]張建勛,古志民,鄭超.云計(jì)算研究進(jìn)展綜述[J].計(jì)算機(jī)應(yīng)用研究,2010,27(2):429-433.
[11]GHEMAWAT S,GOBIOFF H,LEUNG S.The Google file system[A].SOSP'03[C].Bolton Landing,NY,USA:ACM,2003:29-43.