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
主站蜘蛛池模板: 91精品国产自产91精品资源| 日韩国产 在线| 免费xxxxx在线观看网站| 久久久久人妻精品一区三寸蜜桃| 97久久超碰极品视觉盛宴| 欧美亚洲中文精品三区| 婷婷午夜影院| 国产资源站| 国产主播在线观看| 在线观看av永久| 亚洲二区视频| 婷婷亚洲视频| 国产丰满大乳无码免费播放| 日韩无码视频网站| 91极品美女高潮叫床在线观看| 国产sm重味一区二区三区| 国产精品永久不卡免费视频| 国产又大又粗又猛又爽的视频| 色精品视频| 国产本道久久一区二区三区| 国产精品视频999| 在线中文字幕日韩| 亚洲中文字幕久久无码精品A| 思思热在线视频精品| 2021国产精品自拍| 女人18一级毛片免费观看| 日韩欧美亚洲国产成人综合| 国产三级视频网站| 日韩欧美中文亚洲高清在线| 色婷婷综合激情视频免费看| 欧美a√在线| 欧美激情视频二区三区| 91福利一区二区三区| 日本不卡在线播放| 国产成人一区| 真人免费一级毛片一区二区| 亚洲精品自在线拍| 日本成人在线不卡视频| 国产精欧美一区二区三区| 国产系列在线| 国产毛片基地| 亚洲人成在线精品| 欧美日韩国产成人在线观看| 久久公开视频| 久久精品国产91久久综合麻豆自制| 国产精品精品视频| 欧美成人二区| 一边摸一边做爽的视频17国产 | 午夜精品区| 国产精品冒白浆免费视频| 狠狠操夜夜爽| 欧美成人第一页| 久爱午夜精品免费视频| 国产成人精品免费视频大全五级| 国产呦视频免费视频在线观看| 久久久久亚洲精品成人网| 亚洲一区无码在线| 欧美天堂久久| 成人午夜免费观看| 欧美日韩第三页| 色有码无码视频| 欧美日韩午夜视频在线观看| 亚洲视频欧美不卡| 伊人久久福利中文字幕 | 四虎成人在线视频| 国产杨幂丝袜av在线播放| 午夜福利在线观看入口| 国产福利在线免费观看| 亚洲婷婷丁香| 色综合综合网| www.精品国产| 国产尤物视频在线| 午夜毛片免费看| 亚洲色精品国产一区二区三区| 精品一区二区三区波多野结衣| 日韩二区三区无| 三区在线视频| 亚洲Av综合日韩精品久久久| 伊人久久影视| 蝌蚪国产精品视频第一页| 亚洲成a人片| 精品少妇三级亚洲|