[發明專利]一種基于列存儲的多核并行數據查詢優化方法有效
| 申請號: | 201310306838.9 | 申請日: | 2013-07-19 |
| 公開(公告)號: | CN103324765A | 公開(公告)日: | 2013-09-25 |
| 發明(設計)人: | 劉慧;劉志鏡;袁通;王韋樺;邱龍濱;強波;曹志高;王梓;趙宏偉;李雨楠;姚勇;屈鑒銘;張璐萱;張慧澤;徐曾 | 申請(專利權)人: | 西安電子科技大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F9/46 |
| 代理公司: | 北京科億知識產權代理事務所(普通合伙) 11350 | 代理人: | 湯東鳳 |
| 地址: | 710071 陜西省*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 存儲 多核 并行 數據 查詢 優化 方法 | ||
技術領域
本發明涉及計算機領域中的大數據并行計算、列存儲相關架構數據存儲查詢領域,具體涉及一種基于列存儲的多核并行數據查詢優化方法,其中采用映射-化簡并行編程模型實現多核環境下數據庫查詢任務的局部并行化。
背景技術
數據查詢是指將經過選擇、整理和評價的數據存入數據庫中,并從數據庫中查詢出能滿足用戶需求的準確數據的過程和技術,是數據庫系統的核心問題之一。隨著互聯網技術的發展,數據正在以令人難以想象的速度增長。面對這些大數據,如何對數據查詢進行優化,提高數據庫的查詢效率,是數據庫領域的一個重要研究方向。
國內外學者在此方面做了很多的研究,這些研究主要可以分為兩類:分布式并行數據庫查詢優化技術和列存儲數據庫查詢優化技術。
分布式并行數據庫查詢優化技術通過任務的分布式并行執行縮短響應時間,提高查詢效率。該方法根據執行方式的不同又可細分為兩類:一階段并行查詢優化方法和兩階段并行查詢優化方法;一階段方法可直接產生最優的并行執行計劃,目前提出的一階段方法大多數都是近似的或啟發式的;在兩階段并行查詢優化方法中,第一階段使用傳統的基于代價的查詢優化方法產生高效率的順序查詢執行計劃,第二階段并行化第一階段產生的查詢執行計劃,在一定的條件下,第一階段產生的順序查詢執行計劃也能保證并行化后有很好的性能。
列存儲數據庫查詢優化技術通過改變數據庫的物理存儲層來實現查詢效率的提高。它與傳統的行存儲數據庫的區別在于列存儲數據庫中的表格是以列為單位進行存儲的。這樣一來,在執行查詢計劃時,只需讀取與查詢相關的列,不需要把數據庫的整條記錄的數據都加載到內存中,從而大大減少了磁盤和網絡I/O的負載。同時,由于同列的數據不僅具有相同的數據結構,而且數據的重復性機率也將更大,因此這一存儲結構更適合于對數據進行壓縮。壓縮態數據在減少存儲成本的同時,也為查詢效率的提高提供了極大的優勢。這一優勢主要體現在:壓縮態數據可包含更多的信息量,在每次讀取數據時,可獲得更多的數據,而每次讀取操作獲取更多的數據則意味著更快的查詢處理速度,更短的響應時間。
然而這些研究還存在著一定的問題:分布式并行數據查詢優化技術利用分布式系統架構,提高了并行查詢的效率,但是該架構的缺點也造成此方法容易受個別壞節點的影響,從而影響最后的輸出結果;列存儲數據查詢優化技術通過改變數據的物理存儲層使得查詢效率得以提高,但是在查詢優化階段,并未過多的考慮查詢任務的并行執行,以使得計算機硬件資源得到充分利用。因此,如何利用列存儲本身的特性最大化查詢任務的并行執行,成為目前急需解決的任務。
發明內容
鑒于現有技術的不足,本發明的目的是克服上述兩種查詢方法的缺陷,采用多核處理器,利用列存儲技術和基于映射-化簡模型的單CPU多核處理器并行技術,動態地將查詢涉及的數據列加載到內存,并使用MR模型將查詢操作分配到處理器的多個核上并行運行,縮短了大數據查詢結果的返回時間,提高了數據查詢的效率。
需要說明的是,映射-化簡模型(MapReduce)是由Dean?et.al.提出的一種編程模型,可用于大規模數據集(大于1TB)的并行運算,并成功地應用于Google的各種應用中。它提供了簡單的編程接口使得程序能自動地以并行的方式運行在大量的機器中,而不需要考慮并行、容錯、優化和負載均衡等問題。該模型以鍵值(Key/value)對的方式處理數據,并將計算任務分成了映射和化簡兩個階段。通過在運行時動態地對節點進行任務分配,分階段的處理方式以及定期創建檢查點和重做失敗的任務,MR框架能夠很好的應對任務失敗和節點出錯,具有很強的容錯能力,本發明即采用MR模型將查詢操作分配到多個核上并行運行并用鍵值對存儲計算結果。
盡管MR模型的優點眾多且功能強大,但現階段仍主要應用于大規模集群下。隨著微型和小型計算機CPU主頻的提高及多核、多處理器、多線程技術的不斷發展,單個計算機的計算能力已經不容小視。將微型或小型計算機上單個處理器上的多個核或者多個處理器看成一個集群,通過內存共享的方式來模擬作為集群間通信的媒介網絡的方法,同樣可以將MR模型運用于微型或小型計算機上解決大數據計算問題,這就是本發明使用的基于映射化簡的單CPU多核并行技術。
通過映射化簡框架實現多核處理器環境下的列存儲數據庫中的數據查詢的局部并行執行,以達到數據查詢優化的目的。
為了實現上述目的,本發明采用的技術方案如下:
一種基于列存儲的多核并行數據查詢優化方法,所述方法包括以下步驟:
(1)讀取用戶輸入的查詢語句;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安電子科技大學,未經西安電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310306838.9/2.html,轉載請聲明來源鉆瓜專利網。





