999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MTR與Impala結合的數據查詢優化研究

2016-10-18 11:20:20袁文翠舒昝趙建民
微型電腦應用 2016年6期
關鍵詞:效率優化模型

袁文翠,舒昝,趙建民

基于MTR與Impala結合的數據查詢優化研究

袁文翠,舒昝,趙建民

以大數據的查詢技術為中心,研究了當前一些主流的查詢方法以及在此基礎上的優化改進。MapReduce是一種編程模型,將存儲在HDFS中的文件分塊再整合以達到加速實現數據查詢的目的,在此方法的基礎上優化得出Map-Trim-Reduce編程模型,然后與Impala查詢引擎相結合,利用Map-Trim-Reduce處理復雜數據的長處彌補Impala的短處,提前處理Impala的預處理數據,達到提高大數據查詢效率的目的。

大數據;Map-Trim-Reduce;mpala

0 引言

隨著科技信息時代的推進,數據在現代社會生活中承擔著越來越重要的角色,面對著越來越多的數據,大數據概念應運而生。目前,利用傳統的數據查詢方法分析大數據已經顯得力不從心,所以如何提高大數據環境下的數據處理及查詢的效率,是目前新的研究方向。

通過查閱與本文研究相關的文獻我們了解到,Map/Reduce是一種分布式計算框架,它將文件分塊再整合以達到加速實現數據查詢的目的。其中Map為映射過程,Reduce為歸納過程。首先,將眾多文件分割成大小不等的若干數據塊,大小由用戶給定的參數控制,然后在啟動程序拷貝。在所有的拷貝程序中,主程序委派空閑的工作站程序執行Map或者Reduce任務。當所有的Map、Reduce任務都完成的時候主程序Master激活用戶程序,Map/Reduce返回用戶程序的調用點[1]。Impala是一個對大數據進行并行處理的查詢引擎,Impala支持多種方法與自身交互,主要通過JDBC、ODBC和Thrift接口實現互動式的查詢,因此可以使用與Hive相同的JDBC,ODBC驅動,兼容Hive的數據倉庫,提供實時的大量數據并行處理[2][3]。

1 Map-Trim-Reduce編程模型

Map-Trim-Reduce編程模型,是基于Map/Reduce之上,加以改進和優化,比它具有更好的查詢性能,并且可擴展性良好。在Map/Reduce框架中,如果數據量很大,從巨大的中間結果中抽取k個最佳結果便會給Reducer帶來負擔,導致性能的瓶頸,為了突破此瓶頸,提高Top-k查詢速度,引出了MTR(Map-Trim-Reduce)框架,將原有的兩個階段分為3個階段,即Map,Trim,Reduce階段。在Mapper后添加對應的Trimer,用來剪切掉不可能是結果的數據,從而使得查詢的中間結果能夠在Map之后就得以優化。

在Hadoop平臺中,Map-Trim-Reduce框架還擁有一個輔助接點Observer,其作用有3點:第一,接收Mapper發來的中間輸出結果;第二,根據中間結果和規則,計算出一個全局閾值T,類型與中間輸出結果的Value類型相同;第三,將T值傳給Trimer。

通過參考文獻得知具體的算法分析如下:設Map階段的時間開銷是TMap,Reduce階段的時間開銷為TReduce,輔助接點接受的中間結果并計算得出的闕值的時間為TComputer,Tim階段的時間開銷為TTim,則MR框架下的總時間開銷為TMap與TReduce之和,MTR框架下的總時間開銷為TMap,TCompute,TTim及TReduce之和,即:

MR:TMR=TMap + TReduce

MTR:TMTR=TMap + TComputer + TTrim + TReduce

設數據量為N,裕興的總時間都用T總表示,在進行Top-k查詢時的平均效率分別為:

E=(N/T總)*k

通過實驗可以得到TMTR<TMR,這充分說明MTR模型比MR模型整體的查詢時間少,具有時間上的優勢,所以我們應用MTR編程模型進行大數據的查詢。

Top-k查詢越來越廣泛的應用在分布式檢索系統中,在Hadoop平臺中,Map/Reduce模型可做到提高并行計算的能力,但為了提高Top-k查詢效率,在最短時間內排除無用的查詢結果數據,我們設計了MTR模型來進行優化,以此達到了在大數據環境下提高數據查詢效率的目的。

2 Impala的實現原理

Impala它的基本原理是將一個查詢根據數據所在位置分割成子查詢,各個節點直接從HDFS中讀取本地文件進行子查詢,并將所有節點的結果匯總,統一返回到接受查詢的節點上,由該節點進行最后的排序截取工作。在這個過程中Impala把SQL語句拆分成碎片分配到各個節點上達到高速查詢的目的。Impala最大的優點在于提供大量數據的并行處理,兼容Hive數據倉庫和大部分HQL語言,可以與Hive實現互訪,同時不必轉移Hive中的數據,所以基于Hive的程序只需很小的改動就可以遷移到Impala上,這為我們將Map-Trim-Reduce與Impala的結合提供了條件。Impala與Hive的關系如圖1所示。

圖1 Impala與Hive的關系

3 Map-Trim-Reduce與Impala結合的數據查詢優化

3.1Map-Trim-Reduce與Impala結合的原理

Map-Trim-Reduce與Impala各有優缺點,Map-Trim-

Reduce與Impala結合的方法進行編譯來處理數據查詢,相比于MapReduce與Impala結合更加高效,我們利用Map-Trim-Reduce的高靈活性和Impala的處理效率來進行復雜的大數據查詢。在應用中,Map-Trim-Reduce對輸入Impala的數據進行預處理,提前排除無用的結果和不可能的數據,然后在利用Impala進行相應的查詢。這里值得一提的是,在處理查詢同一個結果的作業時,由于Map任務預處理后的數據是持久化在HDFS上的,所以Impala可以多次對中間結果進行查詢,不需要在像MapReduce一樣多次執行前面的Mapper預處理,這極大的提高了數據處理的工作效率。

3.2Map-Trim-Reduce與Impala結合的數據處理實現方法。

在Impala上建立外部表通過Map-Trim-Reduce框架進行預處理來查詢數據。在Map-Trim-Reduce程序中,MapReduce框架直接從HDFS上讀取本地數據,通過Trim提高Top-K查詢效率,排除不可能的結果,再利用Imapla中HQL查詢本身包含的Join語句來處理Map-Trim-Reduce框架中多個數據集連接不直觀的限制問題,避免了編程中繁瑣的實現過程。

Map-Trim-Reduce與Impala結合的實現方法如圖2所示:

圖2 Map-Trim-Reduce與Impala結合工作圖

由上圖所示,Map-Trim-Reduce通過任務調度器將HDFS中的數據塊元數據讀取,按順序執行Map,Trim,Reduce階段,完成預處理任務后,交由Impala進行查詢操作。Impala的查詢與Map-Trim-Reduce框架是分離的,Map任務的中間結果可以存儲在HDFS上,以供Impala多次讀取并進行查詢已經由Map-Trim-Reduce優化過的中間結果,這樣在數據節點間的傳輸流量很少,且讀寫磁盤的次數也限制在Map和Impala的讀寫過程中,減少了Shuffle過程中不必要的I/O操作,節省了I/O磁盤的空間資源。多次利用中間結果對于迭代同一個中間結果的查詢效率也明顯高于Map-Trim-Reduce。

3.3Map-Trim-Reduce與Impala結合的實驗分析

用Map-Trim-Reduce和Map-Trim-Reduce與Impala結合各自實現域名統計排序,比較運行時間的平均值。參考文獻[4]的方法進行Map-Trim-Reduce調試,CDH文檔搭建和運行平臺參考文獻[5]實現。

首先,Map-Trim-Reduce分割域名。由Mapper分割成以下部分記錄:

進行域名統計排序。這一步可用Map-Trim-Reduce的Map結果自動按key排序功能實現。實現的偽代碼如下:

MapTrimReduce分割域名:

String url=cell[8].trim();

分別進行URL分割和host分割

String[] url_spilt=url.split(“/”);

String[] hostspilt=host.split(“\.”);

StringBuffer hostacc=new StringBuffer();

for(int i=hostspilt.length-1;i>0;i--)

{ hostacc.insert(0,hostspilt[i].trim());

Context.write(new Text(hostacc.toString)),new IntWritable(1));

Hostacc.insert(0,”.”);}hostacc.insert(0,hostspilt[0]);

Context.write(new Text(hostacc.toString()),new IntWritable(1));

If(url_spilt.length>1)

Context,write(new Text(url),new IntWritable(1));

下面是Map-Trim-Reduce與Impala結合實現的關鍵代碼。Mapper應用以上方法對輸入Impala數據進行預處理。接下來利用Impala帶limit的order by進行查詢:

Creat external table hostcount(host string,num int) row form

Delimited fields terminated by’\t’ location’/user/root/hostcount’

Select host,count(*)as nums from hostcount group by host order by

Nums desc limit 100;

Map-Trim-Reduce與Map-Trim-Reduce+Impala的實驗耗時結果由圖3所示:

圖3 實驗時間對比

可見,在執行效率方面后者遠遠比Map-Trim-Reduce程序提高了一倍。Map-Trim-Reduce與Impala結合的方法能夠有效的縮短任務的執行時間,提供高效的查詢并保持Map-Trim-Reduce編程的靈活性。

4 總結

隨著大數據時代的到來,傳統數據查詢方法的效率都遇到了瓶頸。為了更好的適應當前的環境,提高工作效率,我們研究發現Map-Trim-Reduce與Impala結合可以大大提高面對大數據處理的查詢效率。當然,由于條件有限,可以擴展和優化的地方還有很多,隨著時代的發展與科技的進步,在這方面的研究必定還會有突破性的進展。

[1] 陳勇.基于Hadoop平臺的通信數據分布式查詢算法的設計與實現:[D].北京:北京理工大學,2009

[2] 齊方方.海量數據存儲和準實時查詢系統設計與實現:[D].四川:西南石油大學,2015

[3] 郭超,劉波,林偉偉.基于Impala的大數據查詢分析計算性能研究:[J].計算機應用研究,2015,32(5):2

[4] 吳秀娟.基于NoSQL框架的數據查詢技術的應用研究.[D]南京:南京郵電大學,2014

[5] Cloudera Company.CDH5和Impala文檔[EB/OL]. http://www.cloudera.com/content/www/en-us/documentat ion/enterprise/latest/topics/impala.html

Research on Data Query Optimization Based on MTR and Impala

Yuan Wencui, Shu Zan, Zhao Jianmin
(College of Computer and Information Technology, Northeast Petroleum University, Daqing 163318, China)

This paper takes the large data query technology as the center, and researches some main current query methods and the optimization based on them. MapReduce is a programming model, which integrates the file blocks stored in the HDFS to achieve the purpose of accelerating the realization of data query. Based on this method, an improved Map-Trim-Reduce programming model is obtained, and then it is combined with the Impala query engine. Use Map-Trim-Reduce to deal with the advantages of complex data to make up for the shortcomings of Impala, and deal with the Impala preprocessing data, so as to improve the efficiency of large data query.

Big Data; Map-Trim-Reduce; Impala

TP312

A

1007-757X(2016)06-0029-03

2016.02.07)

中國石油科技創新基金研究項目(2013D-5006-0203);黑龍江省科技攻關項目(GZ09A120);黑龍江省教育廳科學技術研究項目(12521050)。

袁文翠(1970-),女,東北石油大學,計算機與信息技術學院,副教授,碩士,研究方向:大數據、數據挖掘,大慶,163318

舒 昝(1991-),男,東北石油大學,計算機與信息技術學院,碩士生,研究方向:大數據、數據挖據,,大慶,163318

趙建民(1973-),男,東北石油大學,計算機與信息技術學院,副教授,碩士研究生導師,研究方向:工作流,數據挖掘,大慶,163318

猜你喜歡
效率優化模型
一半模型
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
重要模型『一線三等角』
提升朗讀教學效率的幾點思考
甘肅教育(2020年14期)2020-09-11 07:57:42
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
跟蹤導練(一)2
主站蜘蛛池模板: 香蕉久久国产超碰青草| 国产微拍精品| 99久久精彩视频| 国产导航在线| 久久99国产综合精品1| 亚洲高清无在码在线无弹窗| 亚洲日韩国产精品综合在线观看| 亚洲第一视频区| 国产精品美乳| 2021国产精品自拍| 免费高清毛片| 亚洲第一香蕉视频| 亚洲精品视频网| 国产福利在线观看精品| 免费一级全黄少妇性色生活片| 国产特级毛片aaaaaaa高清| 男女精品视频| 91欧美亚洲国产五月天| 性视频一区| 亚洲a级毛片| 亚洲天堂久久久| 成年人国产网站| 国模私拍一区二区三区| 九色在线视频导航91| 亚洲免费毛片| 日本成人福利视频| 99在线免费播放| 欧美色图久久| 国产精品精品视频| 精品视频在线观看你懂的一区| 久久综合色天堂av| 狠狠做深爱婷婷久久一区| 国产激爽爽爽大片在线观看| 狠狠色香婷婷久久亚洲精品| 国产超碰在线观看| 人人爽人人爽人人片| 亚洲日韩国产精品综合在线观看| 国产簧片免费在线播放| 欧美三级视频网站| 国产丝袜啪啪| 欧美综合区自拍亚洲综合绿色 | 亚洲激情99| 国产新AV天堂| 香蕉视频在线观看www| 成人噜噜噜视频在线观看| 香蕉视频在线观看www| 久久亚洲精少妇毛片午夜无码 | 免费观看亚洲人成网站| 在线视频亚洲欧美| 国产精品天干天干在线观看 | 欧美精品啪啪| 欧美一区福利| 波多野结衣亚洲一区| 91丝袜美腿高跟国产极品老师| 色综合国产| 亚洲中文在线视频| 色网站免费在线观看| 国产在线精彩视频二区| 香蕉精品在线| 视频一本大道香蕉久在线播放| 日韩国产一区二区三区无码| 91免费观看视频| 伊人久久福利中文字幕| 亚洲三级视频在线观看| av在线5g无码天天| 中文毛片无遮挡播放免费| 97久久精品人人| 中文字幕 欧美日韩| 亚洲欧美成人影院| 黄色网址免费在线| 国产亚洲精品97AA片在线播放| 一本久道热中字伊人| 免费啪啪网址| 国模视频一区二区| 无码高清专区| 91在线视频福利| 精品视频一区在线观看| 中国毛片网| 欧美色香蕉| 一本综合久久| 日韩无码白| 麻豆国产原创视频在线播放|