文/趙蓉 徐柳 陳小凡
基于Hadoop的軍交運輸大數(shù)據(jù)聯(lián)機處理模型和算法思考
文/趙蓉 徐柳 陳小凡
本文分析了在物聯(lián)網(wǎng)關(guān)鍵技術(shù)發(fā)展的前提下,軍交運輸大數(shù)據(jù)的特點以及處理分析面臨的挑戰(zhàn)。期望建立HaMOlap一個基于Hadoop的大數(shù)據(jù)聯(lián)機處理(OLAP)模型和算法。此模型能夠?qū)崟r、快速地提取、過濾和分析處理軍交運輸海量數(shù)據(jù)信息,從而進行有效地預測,提供決策支持。
軍交運輸大數(shù)據(jù);Hadoop;OLAP
隨著信息技術(shù)以及互聯(lián)網(wǎng)關(guān)鍵技術(shù)的發(fā)展,以及這些技術(shù)在傳感器和科學領域的數(shù)據(jù)分析等廣泛應用,互聯(lián)網(wǎng)上的數(shù)據(jù)量呈爆炸性增長,每年大約翻倍增長。而目前世界上90%以上的數(shù)據(jù)都是最近幾年才產(chǎn)生的。此外,數(shù)據(jù)又并非單純指人們在互聯(lián)網(wǎng)上發(fā)布的信息。隨著“物聯(lián)網(wǎng)”的發(fā)展,全世界的工業(yè)設備、交通工具、電表等等各種設備上有著無數(shù)的數(shù)碼傳感器,隨時測量和傳遞著有關(guān)位置、運動、震動、溫度、濕度乃至空氣中化學物質(zhì)的變化,也產(chǎn)生了海量的數(shù)據(jù)信息。這些海量的數(shù)據(jù)信息利用新的處理模式而具有更強的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力的海量、高增長率和多樣化的信息資源才能稱之為“大數(shù)據(jù)”。在某種角度上可以說,是由于“物聯(lián)網(wǎng)”和“云計算”的快速崛起,促使了大數(shù)據(jù)的產(chǎn)生。而在這些生物信息學、地球物理學、天文學和氣象學科等領域大數(shù)據(jù)存儲以及工業(yè)中的網(wǎng)絡數(shù)據(jù)分析、點擊流量分析和市場數(shù)據(jù)分析等都存在巨大的挑戰(zhàn)。
毫無疑問,整個人類社會已經(jīng)逐漸步入一個“大數(shù)據(jù)”時代。這些年來,軍事交通運輸?shù)母母镌诜绞睫D(zhuǎn)變以及結(jié)構(gòu)調(diào)整上取得明顯的進展,但也只是初步的、階段性的成果。但是,粗放型的發(fā)展方式依然未得到根本解決,各種因素的制約越來越突出。因此從根本上來講,要依托科技創(chuàng)新特別是信息化智能化來加快轉(zhuǎn)變發(fā)展方式,從而推動軍事交通運輸?shù)慕Y(jié)構(gòu)調(diào)整轉(zhuǎn)型升級。在轉(zhuǎn)型中的軍事交通面臨著調(diào)整、提升發(fā)展結(jié)構(gòu)的難題,交通智能化的實現(xiàn),大數(shù)據(jù)將起到巨大的作用。因為無論是軍事交通運行狀態(tài)還是軍事交通運輸對象和運載工具,每時每刻都在產(chǎn)生著大量的數(shù)據(jù),以大數(shù)據(jù)的思路和角度來看,這些都是正待挖掘的寶藏,能為軍事交通決策帶來新的解題思路。
軍交運輸數(shù)據(jù)獲取的來源呈異構(gòu)的、多樣性的,而近幾年數(shù)據(jù)的增長率也逐漸增高。軍交運輸?shù)臄?shù)據(jù)有明顯的顆粒性,其數(shù)據(jù)通常帶有時間、位置、狀態(tài)屬性、環(huán)境和行為等信息。比如運輸?shù)奈镔Y屬性信息,對運輸工具的全面監(jiān)控所獲取的信息以及來自于其他軍、地各相關(guān)部門的信息等等。如果出現(xiàn)突發(fā)事件,比如大規(guī)模災害或者是恐怖襲擊等,數(shù)據(jù)的增長率還會呈“雪崩”式。大數(shù)據(jù)的出現(xiàn),可以更全面地實現(xiàn)智能交通;可以協(xié)助監(jiān)控中心輔助決策;可以對駕駛員進行評估,預測個體行為等。如何將軍事物流信息與國家信息有機融合,如何高效地、快速地提取、存儲、過濾和分析處理軍交運輸海量數(shù)據(jù)信息是一個非常有戰(zhàn)略意義的問題。
本文期望建立一個基于Hadoop的大數(shù)據(jù)聯(lián)機處理(OLAP)模型和算法。此模型能夠?qū)崟r、快速地提取、過濾和分析處理軍交運輸海量數(shù)據(jù)信息,從而進行有效地預測,提供決策支持。
OLAP(聯(lián)機分析處理)是一種解決快速多維分析查詢的方法,并且能夠為查詢結(jié)果提供決策支持和直觀視圖。OLAP是基于RDBMS(關(guān)系型數(shù)據(jù)庫管理系統(tǒng))以及ROLAP(關(guān)系型聯(lián)機分析處理系統(tǒng))實現(xiàn)的,然而在面向大數(shù)據(jù)環(huán)境下傳統(tǒng)的OLAP已經(jīng)日益凸顯出其不適合了。新型的大規(guī)模并行數(shù)據(jù)架構(gòu)和分析工具已經(jīng)超越了傳統(tǒng)的并行SQL數(shù)據(jù)倉庫和OLAP引擎,因此,一些數(shù)據(jù)庫(如SQL Server和MySQL)雖然能夠提供類似OLAP的操作,但其性能卻并不能夠令人滿意。
圖1 研究技術(shù)路線
通常,OLAP具有三種類型,諸如ROLAP(關(guān)系在線分析處理),MOLAP(多維在線分析處理)和HOLAP(混合在線分析處理)。
三種類型的OLAP之間的差異如下:
(1)MOLAP服務器通過使用多維抽象數(shù)組的存儲引擎直接支持數(shù)據(jù)的多維視圖,而在ROLAP中,多維模型及其操作必須映射進入關(guān)系和SQL查詢;
(2)在MOLAP中,它通常預先計算大數(shù)據(jù)立方體以加速查詢處理,而ROLAP則依賴于數(shù)據(jù)存儲技術(shù)來加速關(guān)系查詢處理;
(3)MOLAP存儲利用率低,特別是當數(shù)據(jù)集比較稀疏時;
(4)由于ROLAP更依賴數(shù)據(jù)庫來執(zhí)行計算,因此它在其可以使用的專用函數(shù)中具有更多的限制;
(5)HOLAP通過將數(shù)據(jù)存儲在MOLAP和關(guān)系存儲中來組合ROLAP和MOLAP。 ROLAP和MOLAP都有優(yōu)缺點。然而,在大數(shù)據(jù)環(huán)境中,MOLAP表現(xiàn)出的缺點與快速響應的優(yōu)點相比是可以忽視的,并且如果我們優(yōu)化MOLAP的實現(xiàn)方法,則實現(xiàn)所消耗的成本可以忽略不計。
本文期望建立一個基于Hadoop的大數(shù)據(jù)多維聯(lián)機處理(MOLAP)模型和算法。利用多維OLAP(MOLAP)的經(jīng)驗,基于HaMoLap 采用多維模型指定數(shù)據(jù)維度和測度從而進行數(shù)據(jù)的分析處理。簡化的多維模型和數(shù)據(jù)加載的算法使HaMoLap加載過程簡單而有效。在查詢過程中, HaMoLap可以處理高基數(shù),因為OLAP算法和MapReduce框架,我們不必將內(nèi)存中的多維數(shù)據(jù)庫實例化。
Hadoop是目前最為流行的大數(shù)據(jù)處理平臺。Hadoop最先是Doug Cutting 模仿GFS、MapReduce實現(xiàn)的一個云計算開源平臺。Hadoop 已經(jīng)發(fā)展成為包括文件系統(tǒng)(HDFS)、數(shù)據(jù)庫(HBase、Cassandra)、數(shù)據(jù)處理(MapReduce)等功能模塊在內(nèi)的完整生態(tài)系統(tǒng)(Ecosystem)。某種程度上可以說Hadoop已經(jīng)成為了大數(shù)據(jù)處理工具事實上的標準。對 Hadoop改進并將其應用于各種場景的大數(shù)據(jù)處理已經(jīng)成為新的研究熱點。主要的研究成果集中在對 Hadoop平臺性能的改進、高效的查詢處理、索引構(gòu)建和使用、在Hadoop之上構(gòu)建數(shù)據(jù)倉庫、Hadoop和數(shù)據(jù)庫系統(tǒng)的連接、數(shù)據(jù)挖掘、推薦系統(tǒng)等。但現(xiàn)在無論哪一種基于平臺的數(shù)據(jù)集的處理模型都在不斷地探索改進當中。
目前在大數(shù)據(jù)時代,缺乏有效的支持多維數(shù)據(jù)存儲模型,在OLAP中這個問題迫切需要解決。同時,Hadoop的云計算框架是最廣泛使用的大數(shù)據(jù)分析平臺,但基于Hadoop的 MOLAP工具仍是空白。本文提出了分布式MOLAP技術(shù)大數(shù)據(jù)環(huán)境,我們設計了HaMoLap系統(tǒng),正在實驗當中,希望證明此種方法能夠提供高效的大數(shù)據(jù)的存儲和分析。本研究具有一定的理論意義和實用價值。
在研究過程中,采用了以下的技術(shù)路線,如圖1:
分析Hadoop生態(tài)系統(tǒng)及其主要功能以及利用數(shù)據(jù)庫來存儲結(jié)構(gòu)化數(shù)據(jù),在此基礎上構(gòu)建一個數(shù)據(jù)倉庫,根據(jù)需要構(gòu)建數(shù)據(jù)立方體進行聯(lián)機分析處理,可以進行多個維度的向下挖掘(Drill-down)或上卷(Roll-up)操作。
在此基礎上,本模型構(gòu)建了Hadoop的IRA索引隨機存取算法(Index Random Access),構(gòu)建Hadoop的FSS全源掃描算法(Full Source Scan),分析這兩個算法在Hadoop下如何實現(xiàn)分區(qū)和二次索引。
借鑒MOLAP(多維聯(lián)機分析處理)的經(jīng)驗,利用簡化的多維模型映射維度和測度,維編碼和遍歷算法來實現(xiàn)卷起操作維度層次維值;分析采用結(jié)合分區(qū)和線性算法的方法來存儲數(shù)據(jù)和利用塊選擇策略來過濾數(shù)據(jù),從而優(yōu)化OLAP的性能。
部署算法、加載數(shù)據(jù),將本文中的模型與H i v e、HadoopDB、HBaseLattice等幾大數(shù)據(jù)集和OLAP應用性能比較,從而驗證模型算法。此模型及算法旨在建立一個可以針對具備明顯結(jié)構(gòu)化特征的軍交運輸大數(shù)據(jù)聯(lián)機處理模型,以供后期對數(shù)據(jù)的進一步挖掘分析做準備。目前驗證模型算法正在進行中。
本文介紹了設計、實現(xiàn)和評價HaMoLap大數(shù)據(jù)MOLAP系統(tǒng)。HaMoLap是基于Hadoop提出建立的模型和算法:
(1)特定的多維模型數(shù)據(jù)維度;
(2)利用維編碼和遍歷的算法實現(xiàn)卷起操作的層次維值;
(3)塊模型和分區(qū)策略簡化數(shù)據(jù)立方體;
(4)利用線性化 reverse-linearization算法存儲塊和數(shù)據(jù);
(5)利用分片及塊選擇算法優(yōu)化OLAP性能。與Hive,HadoopDB, HBaseLattice等幾大數(shù)據(jù)集和OLAP應用性能比較,從而驗證模型算法。
HaMoLap與其他MOLAP工具的區(qū)別可以列舉如下:
(1)HaMoLap采用簡化的多維模型來映射維度和度量,使數(shù)據(jù)加載過程比OLAP簡單有效。
(2)在OLAP中,HaMoLap采用文中提出的維數(shù)編碼和遍歷算法,實現(xiàn)對維度層次的匯總操作。
(3)HaMoLap不依賴于預計算和索引技術(shù),而是依靠分片和塊選擇來加速優(yōu)化OLAP。
(4)在OLAP中,HaMoLap不存儲大型的多維數(shù)組,而是直接計算。一般來說,HaMoLap是一種MOLAP工具,它采用簡化的維度,保持OLAP的簡單高效。
目前,對模型的算法驗證還在實驗當中,就當前的初步實驗結(jié)果,還是令人滿意的。
本研究資金支持來源與軍事交通學院學院基金項目:2014D29。
(作者單位:軍事交通學院軍事物流系)
1.Xu H F.Scheme of data acquisition based on industrial Ethernet. Microcomputer Information, 2008, 04: 113~115(in Chinese)
2.Wang L, Shang Z, Wang X W.The development and application of thedata acquisition system.Electrical Measurement & Instrumentation, 2004, (8): 4~8 (in Chinese)
3.Data acquisition and industrial communication.Maschinen Markt, 2002, 13: 20~24 (in Chinese)
4.Jiao M Y, Tan Q P.Research on Java rule engine technology. Computer & Information Technology, 2006, 03: 41~43 (in Chinese)
5.Zhang G X, Zhang X.How to write expert systems with Jess. Computer and Modernization, 2003, 01: 29~31(in Chinese)
6.Forgy L C.Rete: A fast Algorithm for the many pattern/many object pattern match problem.Artificial Intelligence, 1982, 19: 17~37
7.Tao R J.Finite automaton Introduction.Beijing: Science Press, 1986 (in Chinese)
8.Huang Z Q, Su Y.Application of FA in design of automatic control software.Journal of North China Electric Power University, 2002, 01:49~51(in Chinese)
9.Song, J., Li, T., Liu, X., et al., 2012.Comparing and analyzing the energy efficiency of cloud database and parallel database.In: 2nd International Conference on Computer Science, Engineering and Applications, ICCSEA 2012, vol.2, Springer Verlag, New Delhi, India, May 25~27, 2012, pp.989~997.
10.Song, J., Guo, C.P., Wang, Z., Zhang, Y.C., Yu, G., Pierson, J.M., 2014.Distributed MOLAP technique for Big Data analysis.
11.Ruan Jian Xue Bao/Journal of Software 25 (4), 731~752, http://dx.doi.org/10.13328/j.cnki.jos.004569.
12.Taleb, A., Eavis, T., Tabbara, H., 2013.Query optimization for the NOX OLAP algebra.In: Transactions on Large-Scale Dataand Knowledge-Centered Systems VIII.Springer, pp.53~88.
13.Thusoo, A., Sarma, J.S., Jain, N., et al., 2009.Hive: a warehousing solution over a map-reduce framework.Proc.VLDB Endow.2, 1626~1629.
14.Tian, X., 2008.Large-scale SMS messages mining based on map-reduce.In: IEEE International Symposium on Computational Intelligence and Design, Piscataway, NJ, USA, October 17~18, 2008, pp.7~12.
15.Wikipedia, 2014.Online Analytical Processing, accessed at http://en.wikipedia.org/wiki/OLAP
16.Wu, L., Sumbaly, R., Riccomini, C., et al., 2012.Avatara: OLAP for webscale analytics products.Proc.VLDB Endow.5, 1874~1877.
17.Wu, S., Ooi, B.C., Tan, K.-L., 2013.Online Aggregation, Advanced Query Processing.Springer, pp.187~210.
18.Xiaofeng, M., Xiang, C., 2013.Big data management: concepts, techniques and challenges.J.Comput.Res.Dev.50, 146~169.
19.Yu, C., Chun, C., Fei, G., et al., 2011.ES2: a cloud data storage system for supporting both OLTP and OLAP.In: 27th IEEE International Conference on Data Engineering (ICDE 2011), Piscataway, NJ, USA, 11~16 April, 2011, pp.291~302
20.吳永勝.云環(huán)境下的關(guān)聯(lián)規(guī)則挖掘算法研究[D].浙江工商大學, 2015.
21.趙輝.面向大規(guī)模交互式分析的MapReduce優(yōu)化技術(shù)研究[D].國防科學技術(shù)大學, 2013.