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

基于Elasticsearch的HBase海量數據二級索引方案

2020-03-30 03:19:04郭雪峰
電腦知識與技術 2020年1期

郭雪峰

摘要:針對HBase不提供二級索引、自帶Coprocessor(協作器)不穩定及海量數據檢索速度較慢等問題,設計了一種新的基于Elasticsearch的HBase二級索引方案ELHBase(ElasticsearchIndexing HBase)。該方案借助Flume、Kafka、HBase及Elastic-search搭建了一套數據采集、高速解析和錄入大數據處理框架,使用Flume自定義Sink采集數據同時生成相應ID存入到Kafka,通過解析技術分別把數據存儲到HBase,相應ID作為索引存儲到ElasticSearch。該方案在不利用Coprocessor的基礎上增加了直接查詢ElasticSearch的接口,利用ElasticSearch提供的高效、靈活、多樣的檢索功能實現對HBase海量數據的快速檢索,協同解決了HBase數據索引性能不高、協作器不穩定、ElasticSearch不適合大量數據存儲等問題。最后,分別與SI-HBase、hindex進行了二級索引性能對比實驗,證明了該方案在寫入性能上較SIHBase更快、更穩定,查詢速度上要遠快于hindex。

關鍵詞:海量數據;二級索引;ELHBase;自定義Sink;快速檢索

中圖分類號:TP31 文獻標識碼:A

文章編號:1009-3044(2020)01-0005-03

隨著社會的發展和科技的進步,網絡已成為人們分享和獲取信息的通用工具,伴隨著網絡流量數據的不斷交互,各類應用系統產生的日志數據越來越多,大數據時代到來。大數據被百度百科定義為:大數據是指無法用傳統軟件工具進行捕捉、處理及管理的海量數據集合,其含義是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產。而如何安全保證海量日志數據能被快速存儲、查詢及可擴展性是當前研究的熱點和難點。

隨互聯通信技術不斷改良和升級,大數據技術可以大致概括為四部分內容:數據采集、數據處理、數據存儲和數據查詢,每部分內容包括不同的組件去實現各自的功能。傳統的關系數據庫是采用二維表格數據模型不能夠有效地處理多維數據,不能有效處理互聯網應用中半結構化和非結構化的海量數據,且支撐容量非常有限,在其達到一定規模時,很容易發生死鎖等并發問題,導致其讀寫性能下降嚴重。因此,HBase數據庫在大數據領域的應用應運而生。

Hbase是一個面向列存儲的分布式存儲系統,不同于傳統數據庫,它的優點在于可以實現高性能的并發讀寫操作,同時Hbase還會自動對數據進行透明的切分,這樣就使得存儲本身具有了水平伸縮性。同樣HBase也存在缺點嗍,它不能支持條件查詢,只支持按照rowkey來查詢,暫時不能支持Master server的故障切換,當Master宕機后,整個存儲系統就會掛掉。

為解決快速檢索的功能,張榆等為了解決在海量空間文本中快速檢索的問題,在HBase的基礎上設計了一種空間文本索引方案SK-HBase,該方案自建索引以達到快速檢索HBase中的空間文本數據。Cheng Pengsen等針對存儲空間不足問題,在HBase的基礎上構建倒排索引表,并在此基礎上進一步建立壓縮和解壓算法。卓海藝針對HBase查詢速度慢問題,利用HBase自帶的協作器開發出索引自動生成組件及更新組件,同時參考1THBase方案構造和維護二級索引表。華為公司設計了二級索引方案hin-dexN,該方案實現了針對不同的數據表使用HBase自帶協作器建立索引,它提供了一種自動生成索引的方法,當進行數據操作時會自動實現索引的維護,具有便捷化的索引管理功能。王文賢等針對華為hindex方案難以滿足海量數據高速檢索問題,設計了基于Solr的HBase二級索引方案SIHBase(SolrIndexing HBase)。該方法使用HBase的協作器實現在Solr中自動為HBase建立和維護二級索引,提高了數據檢索速度,但co-processor不穩定問題仍在。HBase官方和開源社區對其二級索引問題,仍在不斷地探索中。

針對HBase不提供二級索引、自帶Coprocessor(協作器)不穩定及海量數據檢索速度較慢等問題,文章設計了基于Elastic-search的HBase二級索引方案ELHBase(Elasticsearch IndexingHBasel。該方案利用Flume、Kafka、HBase及Elasticsearch搭建了一套數據采集、高速解析和錄入大數據處理框架,該方案在不利用Coprocessor的基礎上增加了直接查詢ElasticSearch的接口,利用ElasticSearch提供的高效、靈活、多樣的檢索功能實現對HBase海量數據的快速檢索,協同解決了HBase數據索引性能不高、Coprocessor不穩定、ElasticSearch不適合大量數據存儲等問題。

1二級索引方案設計

首先,對HBase二級索引方案的基本原理進行簡單介紹,然后,分析了華為針對該問題提出的hindex二級索引方案與針對檢索速度問題提出的基于Solr的HBase二級索引方案SIH-Base,前者雖然解決了HBase在檢索非主鍵字段時遇到的問題,但難以滿足對檢索的快速響應,后者雖然提升了檢索速度,但協作器存在不穩定問題。最后,本文為解決以上問題提出了基于Elasticsearch的HBase二級索引方案ELHBase(Elastic-search Indexing HBase)。

1.1設計原理

由于HBase里面只有rowkey作為一級索引,因此如果要對數據庫里的非mwkey字段進行數據檢索和查詢,往往要通過MapReduce/Spark等分布式計算框架進行,硬件資源消耗和時間延遲都會比較高。

為了HBase的數據查詢更高效、適應更多的場景,諸如使用非rowkey字段檢索也能做到秒級響應,或者支持各個字段進行模糊查詢和多字段組合查詢等,因此需要在HBase上面構建二級索引,以滿足現實中更復雜多變的業務需求。二級索引是對于目標記錄的某個或某些列而設立的“鍵一值”數據結構,以列的值為鍵,以記錄的rowkey為值,假如按照這些列進行查詢時,就可以檢索出對應的“鍵一值”進而達到快速檢索記錄的目的。

1.2 hindex方案介紹

hindex架構在ClientExt中設定索引細節,在Balancer中收集信息,在Coprocessor中管理二級索引數據。hindex二級索引方案的框架如圖1所示。

在創建表的時候,在同一個region server上創建索引表,且一一對應。在主表中插入某條數據后,用Coprocessor將索引列寫到索引表中去,當一個查詢到來的時候,通過Coprocessor鉤子,先從索引表中查詢范圍rowkey,然后再從主表相關rowkey中掃描獲取最終數據。

1.3SIHBase方案介紹

本方案從HBase的客戶端考慮,加入了具有高速檢索能力的Solr,按照數據與索引分開存儲的思想,實現海量數據的高速檢索功能。其整體架構如下圖2所示。

Client Ext客戶端主要針對Solr中的索引查詢功能進行了擴展。當表中數據出現增、刪、改的情況下,通過Solr IndexingCopmcessor可以實時更新Solr中的索引,并且當出現宕機和修復數據時能使得Solr索引數據和HBase表中數據保持一致。Solr主要存放和管理索引數據,利用Solr可以達到高效檢索的目的。

但當實時建立索引時,Solr會產生io阻塞,查詢性能較差,伴隨著數據量的不斷增加,Solr的搜索效率會變得更低,而Elasticsearch卻無明顯變化,完全支持Apache Lucene的接近實時的搜索。

1.4基于Elastiesearch的HBase二級索引方案ELHBase

本文不同于以往的思路,利用Flume、Kafka、HBase及Elas-ticsearch搭建了一套數據采集、高速解析和錄入大數據處理框架,其整體架構如圖3所示。

本方案利用Flume采集數據,通過自定義sink的方式,在獲取消息的同時生成相應ID一塊存入到Kafka的Topic中,其中ID部分是由英文字母和數字隨機生成,共有31個字符。然后通過自定義sink解析Topic中的數據分別把消息存儲到HBase,相應ID作為索引(rowkey)存儲到ElasticSearch,保證數據與索引的一致性。ElasticSearch索引速度快,擴展方便,性能優異,但在功能上不適合作為數據庫使用,因此本方案ElasticSearch中只存放ID。用戶可以通過ElasticSearch進行多條件的復雜查詢,獲取到滿足條件的rowkey集合后,進而在HBase中以row-key快速查詢獲取數據。

該方案在不利用Coprocessor的基礎上增加了直接查詢ElasticSearch的接口,利用ElasticSearch提供的高效、靈活、多樣的檢索功能實現對HBase海量數據的快速檢索,協同解決了HBase數據索引性能不高、協作器不穩定、ElasticSearch不適合大量數據存儲等問題。

2EIHBase二級索引性能分析

本章針對EIHBase方案的性能進行了對比分析,共使用三臺物理服務器進行測試,三臺服務器的操作系統為CentOS 6,7,CPU為Intel(R)Xeon(R)E5-2630 v3@2.4GHz(32核),內存為32GB。

集群中節點信息為:一臺作為master節點,兩臺作為slave節點。軟件版本信息見下表1。

測試中使用的測試數據是利用shell腳本生成的由英文字母與阿拉伯數字組成的66位字符串,共計10億條記錄。本方案分別與二級索引方案hindex以及SIHBase方案進行數據寫入性能和數據檢索性能對比實驗。測試結果如下表2所示:

如上表2所示是三個二級索引方案的檢索性能對比實驗結果,由此可知,在海量數據查詢中,本文提出的EIHBase方案較華為提出的hindex方案在查詢速度方面具有明顯優勢,在寫入性能上較SIHBase更快、更穩定。因此,本方案能夠基本滿足對HBase快速檢索的需求。

3結束語

本文詳細分析了華為針對該問題提出的hindex二級索引方案與針對檢索速度問題提出的基于Solr的HBase二級索引方案SIHBase,但這些技術本身各有優缺點,且目前對于HBase的二級索引和全文檢索問題的研究仍未明確統一,只能夠滿足部分場景需求。因此,針對上述問題提出一種新的基于Elastic-search的HBase二級索引方案ELHBase,并進行了性能分析,證明了該方案的可行性。

主站蜘蛛池模板: 国产第四页| 草草影院国产第一页| 精品久久久久无码| 亚洲无线一二三四区男男| 超清无码一区二区三区| 亚洲国内精品自在自线官| 欧美日韩午夜| 2020亚洲精品无码| a级毛片一区二区免费视频| 91久久国产成人免费观看| 日韩高清在线观看不卡一区二区| 久久99精品久久久久纯品| 国内精品小视频在线| 欧美成一级| 亚洲区一区| 成人国产精品2021| 丁香六月激情婷婷| 国产偷倩视频| 女人18毛片久久| 国产免费精彩视频| 51国产偷自视频区视频手机观看| 日韩国产精品无码一区二区三区| 欧美高清三区| 亚洲嫩模喷白浆| 亚洲精品中文字幕无乱码| av尤物免费在线观看| 香蕉视频在线精品| 亚洲男人天堂久久| 无码内射中文字幕岛国片| 欧美成人区| 色偷偷一区| 偷拍久久网| 免费一级无码在线网站| 亚洲VA中文字幕| 尤物视频一区| 国产精品太粉嫩高中在线观看| 欧美亚洲一区二区三区导航| 免费人欧美成又黄又爽的视频 | 欧美国产在线看| 又粗又硬又大又爽免费视频播放| 欧美自拍另类欧美综合图区| 亚洲第一中文字幕| 国产精品亚洲va在线观看| 成人小视频网| 日韩成人免费网站| 国产精品欧美在线观看| 亚洲欧美在线综合图区| 欧美综合区自拍亚洲综合天堂| 亚洲欧洲日产无码AV| 高清欧美性猛交XXXX黑人猛交| 免费观看男人免费桶女人视频| 国产小视频a在线观看| 青青草国产免费国产| 三上悠亚一区二区| 高清乱码精品福利在线视频| 亚洲欧美日韩久久精品| 亚洲精品无码抽插日韩| 久久亚洲国产最新网站| 欧美一区二区自偷自拍视频| 国产精品部在线观看| 91激情视频| 久久精品女人天堂aaa| 亚洲精品无码久久毛片波多野吉| 亚洲精品国产日韩无码AV永久免费网 | 又粗又大又爽又紧免费视频| 99在线视频精品| 亚洲欧洲免费视频| 国产一区免费在线观看| 国产麻豆福利av在线播放| 亚洲第一成人在线| 蜜臀av性久久久久蜜臀aⅴ麻豆| 2021天堂在线亚洲精品专区| 欧美精品一区二区三区中文字幕| 国产在线一二三区| 永久成人无码激情视频免费| 国产美女一级毛片| 国产新AV天堂| 五月婷婷亚洲综合| 久久综合丝袜长腿丝袜| 国产av一码二码三码无码| 日韩国产无码一区| 国产又爽又黄无遮挡免费观看|