[發明專利]數據集合連接方法、裝置及數據庫系統在審
| 申請號: | 201410523412.3 | 申請日: | 2014-09-30 |
| 公開(公告)號: | CN104298736A | 公開(公告)日: | 2015-01-21 |
| 發明(設計)人: | 陸春義 | 申請(專利權)人: | 華為軟件技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司 11138 | 代理人: | 鞠永善 |
| 地址: | 210012 江蘇省南京*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據 集合 連接 方法 裝置 數據庫 系統 | ||
技術領域
本發明涉及數據庫技術領域,特別涉及一種數據集合連接方法、裝置及數據庫系統。
背景技術
隨著現代企業的發展壯大,企業所積累的信息數據也隨之劇增。然而,企業所積累的信息數據往往是多樣化的,是比較零散的,它們可能來自于不同的職能部門,存儲著企業不同維度的業務信息。企業要想從大量零散的數據中提取有價值的信息,則必須要對這些數據信息進行關聯、整合和分析,從而形成一份比較全面的、有價值的數據集合。為了便于對這些海量數據進行有效的管理,數據倉庫管理系統逐漸得到廣泛的應用。在數據倉庫管理系統的建設中常使用抽取、轉換、裝載(英文:Extract、Transform、Load;簡稱:ETL)工具來對數據進行集成。在使用ETL工具對數據進行集成時,通常會頻繁使用到數據集合的連接技術,即從多個分散數據集合中進行數據抽取、連接處理,分別從不同的數據集合中選取有用的字段信息,最終組合形成一份比較完整的數據集合,以供用戶進行綜合決策分析。
現有技術中,一種比較常用的數據集合連接方法是基于關系數據庫表的關聯查詢方式實現數據集合連接。例如,在圖1所示的關系數據庫管理系統中對A和B兩個原始表進行關聯查詢,其關聯條件是要求A表中field_1值等于B表中field_1值,然后分別從A表和B表中選取一些字段作為輸出字段,所得的輸出字段的集合即為需要的數據集合。該方法雖然易于實現和使用,但其不足之處在于,在對海量數據庫表進行關聯查詢時,其查詢性能將會非常慢,很難滿足用戶的需求。另一種比較常用的技術方案是基于內存來實現數據集合連接。同樣以數據集合A和B為例,如圖2所示,首先把A和B兩個數據集合加載到內存中,然后根據數據集合連接條件,即A數據集field_1字段等于B數據集合的field_1字段,分別從A數據集合和B數據集合中選取一些字段作為輸出字段,最后的輸出結果集即為需要的數據集合。該方法雖然可以獲得較高的數據集合連接性能,但是對服務器硬件配置要求非常高,尤其是對內存消耗非常大,通常情況下,該方法對于海量數據集合的連接場景是不能適用的。
綜上所述,在對海量數據集合進行連接處理時,尤其是在數據倉庫管理系統的數據集成過程中,現有數據集合的連接方法常存在數據連接性能較低、服務器硬件配置無法滿足要求的問題。
發明內容
為了解決現有數據集合的連接方法常存在的數據連接性能低、硬件配置要求高問題,本發明實施例提供了一種數據集合連接方法、裝置及數據庫系統。所述技術方案如下:
第一方面,提供一種數據集合連接裝置,所述裝置包括:
分割單元,用于將多個數據集合中的每個數據集合分割為多個數據子集;
連接單元,用于將第一數據集合中的數據子集中的數據記錄與第二數據集合中的數據子集中的數據記錄逐條匹配,將相匹配的數據記錄進行連接,直至所述第一數據集合中的所有數據子集與所述第二數據集合中的數據子集實現數據記錄連接,對于所述多個數據集合中每兩個數據集合,將其中一個作為第一數據集合,將另一個作為第二數據集合;
輸出單元,用于輸出連接后的數據記錄。
在第一方面的第一種可能實現方式中,所述分割單元還用于:
對于所述數據集合中的每個數據集合,根據所述數據集合中數據記錄的標識信息將所述數據記錄分配至對應的數據子集,所述數據集合包括預設數量的數據子集。
結合第一方面的第一種可能實現方式,在第二種可能實現方式中,所述數據記錄的標識信息包括:數據記錄的哈希值;
所述分割單元包括:
第一讀取模塊,用于從數據集合中順序讀取數據記錄;
處理模塊,用于根據當前數據記錄的關鍵字段生成對應的哈希值;
計算模塊,用于對所述當前數據記錄的哈希值按照預設的數據子集數量取模,得到所述當前數據記錄對應的數據子集序號;
分配模塊,用于將所述當前數據記錄以及所述當前數據記錄的哈希值分配至對應的數據子集。
結合第一方面的第二種可能實現方式,在第三種可能實現方式中,所述處理模塊還用于:
以當前數據記錄的關鍵字段作為輸入參數,通過算法生成一個與所述當前數據記錄唯一對應的整型哈希值。
結合第一方面的第二種可能實現方式,在第四種可能實現方式中,所述分割單元還包括:
計數模塊,用于當數據子集內的數據記錄達到預設條數時,將所述預設條數的數據記錄作為所述數據子集的子塊并按照哈希值排序;
寫入模塊,用于將所述子塊寫入本地磁盤;
數據清除模塊,用于清空內存中的所述數據子集的數據。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為軟件技術有限公司,未經華為軟件技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410523412.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:治療便秘的中藥膏
- 下一篇:一種鼬獾專用配方顆粒飼料
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





