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

基于大數據的列存儲數據庫技術研究

2020-07-27 16:31:51邱宏
中阿科技論壇(中英阿文) 2020年5期
關鍵詞:大數據數據庫

摘要:隨著物聯網及云計算技術的興起,以及移動互聯網技術的不斷發展,以社交網絡、電商等為代表的新型應用在日常生活中使用越來越廣,與此同時它們的數據規模也急劇增加。列存儲數據庫在管理海量數據、從規模龐大的數據中獲取有用信息方面有突出的優勢。在處理海量數據時列存儲數據庫的性能要明顯優于傳統的行存儲數據庫,因此研究基于大數據的列存儲數據庫技術有重要意義。

關鍵詞:列存儲,大數據,數據庫,并行查詢

中圖分類號:TP311.13?????????文獻標識碼:A

收稿日期:2020-04-29

作者簡介:邱宏(1979-)男,講師,碩士,研究方向:網絡安全與執法。

1 前言

隨著移動互聯網技術及計算機技術的發展,對海量數據進行處理的場景變得越來越常見。傳統的數據庫是行存儲的,在處理海量數據時存在先天性不足。為了解決大數據時代面臨的海量數據處理挑戰,列存儲數據庫技術應運而生。

和傳統的行存儲數據庫相比,列存儲數據庫處理海量數據時的優勢主要包括[1]:(1)存儲數據前采用壓縮算法先壓縮數據,對于存在大量重復的數據可以有效提升存儲利用率。(2)可以直接訪問壓縮數據,提高了數據查詢性能。(3)查詢時可以只讀取查詢相關列,節省數據緩存的同時能夠提升查詢性能。

2 大數據理論基礎

Hadoop生態的MapReduce并行編程技術是大數據的基礎,主要目的是解決在分布式集群環境下的海量數據處理問題。和傳統的并行編程技術相比,MapReduce并行編程模型能夠隔離上層應用程序和底層通信,在面向數據挖掘、云計算等大數據應用時應用更加廣泛。

MapReduce在處理海量數據任務時,將大數據集分成多個獨立的子任務,并且并行執行這些子任務,每個并行執行的獨立任務稱為Map任務。實際執行時,Map任務是分配到不同的機器上并行執行的,執行完成后會調用Reduce任務對各機器執行的Map任務的中間結果進行匯總。

需要注意的是,MapReduce是一種并行計算模型,Map任務及Reduce任務并不是固定不變的,而是用戶根據自己的需要自行實現的,只要按照固定的輸入、輸出格式實現即可。Map任務及Reduce任務的輸入及輸出格式如表1所示:

在采用MapReduce并行計算模型時,分布式集群的Master節點將數據劃分成多個子集,并把整個計算任務分為Map任務和Reduce任務,然后把各個任務分配到集群中空閑的worker節點。典型的MapReduce任務過程過程包括[2]:(1)劃分數據集。用戶提交作業請求,Master節點將輸入數據分成多個子數據塊,并轉化為鍵值對,方便后續處理。(2)Map階段。各worker節點處理子任務對應的數據塊,并調用自定義的Map函數處理數據塊中的鍵值對,得到的結果是另外一組鍵值對。 (3)shuffle及排序階段。

集群所以節點計算任務得到的鍵值對可能有不同的鍵值,為了提高計算消息,可以將相同鍵的數據交給同一個Reduc處理,這樣就需要對Map 階段產生的所有鍵值對進行交換和排序,以便將相同key的鍵值對存放在同一數據塊中。(4)Reduce階段。調用Reduce函數對Map階段得到的所有中間數據進行處理。(5)輸出階段。將輸出結果輸出到指定位置。

MapReduce模型的處理流程如圖1所示:

3 列存儲數據庫的自適應索引技術

索引的合理使用可以有效降低查詢讀取的數據量,從而能夠顯著提升數據庫的查詢性能。影響索引性能的重要指標包括初始化成本、查詢執行時間以及收斂速度。初始化成本指的是第一個查詢語句需要的時間;收斂速度說明經過多少查詢語句后索引的性能趨于穩定;查詢語句的執行時間包括單個查詢語句的執行時間和累積執行時間。

數據分割索引算法對數據庫的列進行索引時使用的是快速排序算法,并用查詢語句的邊界值充當列的劃分點。在數據庫的列第一次被查詢的時候,數據分割索引算法會構造此列對應的索引列,然后據此查詢數據的邊界值,以對索引列中的數據進行重組。在第一個查詢語句執行完畢后,索引列會被劃分成多個子集,子集間整體上是有序排列的,但各個子集內部局部是無序的。后續有查詢需求時,只需要根據數據的邊界范圍即可訪問索引的不同部分,而不需要訪問整個索引列,這樣可以大大降低查詢數據的數據量,提高查詢性能。

自適應合并索引算法對數據庫的列進行索引時使用的是合并排序算法。第一個查詢語句執行后會將數據列劃分成若干數據塊,在對數據塊排序后再從數據塊中查找數據,每個數據塊自身是排好序的,因此查找數據時采用二分法。后續的查詢語句會將滿足需求的數據合并后轉移到結果集,然后對結果集進行排序;等數據塊中的所有數據都被轉移到結果集后,索引就建立成功。

數據分割索引算法和自適應合并索引算法在執行第一個查詢語句時構建索引列的過程是不同的[3]:數據分割索引算法構建索引列是通過復制完成的,而在后續的查詢語句中重組數據塊借助的是兩個邊界值;自適應合并索引算法在執行第一個查詢語句時是把數據列分成了多個數據塊,并對每個數據塊進行排序,后續的查詢語句是借助二分法。

4 列存儲數據庫的并行查詢技術

從海量數據中查詢數據時,由于數據量非常大的原因,如果查詢過程采用傳統的串行化操作,那么勢必會影響查詢的效率,并行化查詢是提高數據庫查詢性能的重要手段。

并行數據庫查詢的實現方式主要包括[4]:(1)并行查詢操作。將原來的一個查詢語句并行化為多個并行查詢。(2)多查詢間的并行。對于相互間不影響的查詢操作,盡量一起操作,進行并行查詢。(3)用戶間的并行。不同用戶間的查詢操作,允許同時進行。

作為查詢語句的基本組成部分,查詢操作自身的并行對提高查詢效率的影響很明顯,選擇、連接以及聚集等查詢操作都可以并行。對于基于掃描的查詢操作,在掃描數據文件時就并行操作;對于基于排序的查詢操作,先對數據進行排序,然后選擇和查詢操作相關的并行處理方式;對于基于索引的查詢操作,想建立索引,然后通過索引并行執行相關操作。

查詢語句的并行執行具體實現方式是根據操作間的并行程度實現的,根據查詢操作間的依賴關系,可以把查詢語句的并行執行方式分為查詢操作間的獨立并行執行及查詢操作間的流水線并行執行。查詢操作間的獨立并行執行指的是查詢操作時完全相互獨立的,各個查詢操作間沒有任何關系,也不存在先后順序;這樣的查詢操作可以分別分配一定數目的處理單元,實現完全并行。查詢操作間的流水線并行執行指的是各個查詢操作間存在某種先后順序關系,這樣的話可以為存在先后關系的查詢操作分配同樣的處理單元,在前序查詢操作執行一部分后,即可將前序操作的結果傳遞給后序查詢操作處理,而不用等前序查詢操作完全執行完畢。

采取MapReduce模型實現列存儲數據庫中并行查詢操作的流程如圖2所示:

其中Map階段Amap函數會對各個數據塊進行處理,處理結果會在Reduce階段被Areduce函數使用,對應的結果子集在匯總后被輸出為最終的結果集。

5總結

本文對基于大數據的列存儲數據庫技術進行研究。首先,介紹了列存儲數據庫技術的理論基礎——MapReduce并行計算模型;然后在此基礎上分析了列存儲數據庫的自適應索引技術和并行查詢技術。最終采取MapReduce模型實現了列存儲數據庫的并行查詢操作。

參考文獻:

[1]王振璽,樂嘉錦,王梅,等.列存儲數據區級壓縮模式與壓縮策略選擇方法[J].計算機學報,2019(8):1524-1530.

[2]王梅,楊思簫,樂嘉錦.列存儲數據庫中壓縮位圖索引技術[J].計算機工程,2018(10):26-29.

[3]鄧亞丹.面向共享Cache多核處理器的數據庫查詢執行優化技術研究[D].長沙:國防科學技術大學,2019.

[4]鄭黎輝.數據庫并行查詢優化的設計與實現[J].長春:吉林大學,2018.

Abstract:?With the rise of Internet of things and cloud computing technology, as well as the continuous development of mobile Internet technology, new applications such as social networks, e-commerce, etc. are used more and more widely in?daily life, at the same time, their data scale has increased dramatically. Column storage database has outstanding advantages in managing massive data and obtaining useful information from large-scale data. When dealing with massive data, the performance of column storage database is obviously better than that of traditional row storage database, so it is of great significance to study the technology of column storage database based on big data.

Key words:?Column storage, Big data, Database, Parallel query

猜你喜歡
大數據數據庫
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
大數據環境下基于移動客戶端的傳統媒體轉型思路
新聞世界(2016年10期)2016-10-11 20:13:53
基于大數據背景下的智慧城市建設研究
科技視界(2016年20期)2016-09-29 10:53:22
數據+輿情:南方報業創新轉型提高服務能力的探索
中國記者(2016年6期)2016-08-26 12:36:20
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
數據庫
財經(2010年20期)2010-10-19 01:48:32
主站蜘蛛池模板: 国产午夜无码专区喷水| 欧美精品v欧洲精品| 国产成人精品在线| 黄色污网站在线观看| 国产在线观看成人91| 免费又黄又爽又猛大片午夜| 怡红院美国分院一区二区| 日韩中文精品亚洲第三区| 91视频免费观看网站| 1769国产精品视频免费观看| 免费观看国产小粉嫩喷水| jijzzizz老师出水喷水喷出| 91亚洲精选| 亚洲大尺码专区影院| 欧美一区二区三区不卡免费| 91免费国产在线观看尤物| 日本不卡视频在线| 中文天堂在线视频| 亚洲午夜综合网| 亚洲人成日本在线观看| 欧美天天干| 午夜福利在线观看成人| 日韩在线播放欧美字幕| 青青久在线视频免费观看| 三上悠亚一区二区| 中日韩一区二区三区中文免费视频 | 精品国产aⅴ一区二区三区| 久久大香香蕉国产免费网站| 久久久久无码国产精品不卡| 精品福利国产| 久草中文网| 亚洲精品欧美重口| 亚亚洲乱码一二三四区| 亚洲精品第一页不卡| 在线欧美日韩国产| 国产精品99久久久久久董美香| 亚洲男人天堂2018| 性欧美在线| 中文字幕无码制服中字| 国产97视频在线| 午夜无码一区二区三区| 日韩无码黄色| 亚洲第一天堂无码专区| 97国产一区二区精品久久呦| 亚洲中文字幕在线一区播放| 亚洲第一区在线| 亚洲大学生视频在线播放| 日韩AV手机在线观看蜜芽| 亚洲一区二区成人| 中国毛片网| 日本在线视频免费| 性视频久久| 亚洲精品成人福利在线电影| 在线国产91| 国产精品私拍在线爆乳| 成人福利视频网| 免费va国产在线观看| 欧美啪啪一区| 成·人免费午夜无码视频在线观看| 人人艹人人爽| 亚洲天堂网视频| 欧美日韩一区二区在线播放| 一本大道无码日韩精品影视| 精品一区二区三区无码视频无码| 国产成人综合久久| 91日本在线观看亚洲精品| 中文字幕伦视频| 国产精品久久久久婷婷五月| 免费AV在线播放观看18禁强制| 日韩 欧美 小说 综合网 另类| 手机在线看片不卡中文字幕| 国产一区二区三区在线观看视频| 在线日韩一区二区| 亚洲国产综合精品中文第一| 国产在线自乱拍播放| 国产福利不卡视频| 日本高清在线看免费观看| 91 九色视频丝袜| 国产精品白浆无码流出在线看| 91久久国产综合精品女同我| 亚洲国产日韩一区| 国产91精品久久|