[發明專利]HBase二級索引表的查詢方法和裝置有效
| 申請號: | 201410483879.X | 申請日: | 2014-09-19 |
| 公開(公告)號: | CN104217011B | 公開(公告)日: | 2017-08-25 |
| 發明(設計)人: | 劉璧怡;郭美思;吳楠 | 申請(專利權)人: | 浪潮(北京)電子信息產業有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京安信方達知識產權代理有限公司11262 | 代理人: | 王丹,李丹 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | hbase 二級 索引 查詢 方法 裝置 | ||
技術領域
本發明涉及數據處理技術領域,尤其涉及一種HBase二級索引表的查詢方法和裝置。
背景技術
在數據高速發展的時代,分布式體系成為了很重要的角色。在大數據發展的背景下,分布式集群,分布式數據庫,分布式文件系統都成為受人們關注的焦點。在這個動力趨勢下,Hadoop集群成為較成熟的分布式系統。分布式數據庫HBase在Hadoop生態系統中正在不斷完善,HBase不同于傳統的數據庫,它是一個適用于非結構化數據存儲的數據庫,具有高擴展性、列存儲、可伸縮、能實時讀寫大數據的特點,因此被很多大公司使用,HBase依據有很好的易用性及鍵值的靈活處理得到廣泛的歡迎。
在HBase表的查詢中,HBase主要是通過Rowkey進行查詢,同時還可以在需要的時候利用filter進行過濾出特定的列的信息來滿足用戶的需求,但是HBase并沒有提供根據列族中某列的屬性值快速查詢出符合條件記錄的功能。
發明內容
為了解決上述技術問題,本發明提供了一種HBase二級索引表的查詢方法和裝置,能夠實現快速查詢HBase表中某列屬性值中的所有記錄信息,從而提高查詢效率。
為了達到本發明目的,本發明提供了一種HBase二級索引表的查詢方法,包括:判斷HBase源表是否有對應的二級索引表,通過二級索引表查詢HBase表的列中屬性值;如果沒有,根據HBase源表中的列族信息、列信息、列屬性值及HBase源表中對應的Rowkey,創建與HBase源表對應的二級索引表,并同步HBase源表的數據到對應的二級索引表中;如果有,同步HBase源表的插入數據操作或刪除數據操作到對應的二級索引表中。
進一步地,通過所述二級索引表查詢HBase表的列中屬性值,包括:通過二級索引表查詢HBase表的列中屬性值的全部記錄。
進一步地,根據HBase源表中的列族信息、列信息、列屬性值及HBase源表中對應的Rowkey,創建與HBase源表對應的二級索引表,并同步HBase源表的數據到對應的二級索引表中,包括:根據HBase源表中的列族信息、列信息、列屬性值及HBase源表中對應的Rowkey,利用revertrow函數和Map函數創建HBase源表對應的二級索引表的Rowkey和屬性值,并同步HBase源表的數據到對應的二級索引表的Rowkey和屬性值中。
進一步地,根據HBase源表中的列族信息、列信息、列屬性值及HBase源表中對應的Rowkey,創建與HBase源表對應的二級索引表,并同步HBase源表的數據到對應的二級索引表中,包括:利用revertrow函數,根據HBase源表中的列族信息、列信息、列屬性值及HBase源表中對應的Rowkey,設置二級索引表的Rowkey;利用Map函數,根據ImmutableBytesWritable key參數和Result value參數,提取HBase源表中的Rowkey及value值,遍歷每個KeyValue獲取相應二級索引表中的Rowkey,并根據HBase源表的Rowkey和列屬性值設置二級索引表的屬性值;在Map函數中調用revertrow函數,將revertrow函數的返回值Rowkey保存,并根據返回值Rowkey新建Put對象,為新建的Put對象添加相應的屬性值;用ImmutableBytesWritable對象封裝,用Context.write存儲結果。
進一步地,同步HBase源表的插入數據操作或刪除數據操作到對應的二級索引表中,包括:在Put函數或Delete函數中增加HBase源表對應的二級索引表的名稱的參數;在對HBase源表進行插入數據操作或刪除數據操作時,提取插入或刪除數據的Rowkey及value值,根據提取的Rowkey及Value值設置二級索引表的Rowkey及Value值;根據HBase源表對應的二級索引表的名稱的參數,將設置的二級索引表的Rowkey及Value值進行插入操作或者刪除操作。
一種HBase二級索引表的查詢裝置,包括:判斷模塊,用于判斷HBase源表是否有對應的二級索引表,通過所述二級索引表查詢HBase表的列中屬性值;創建模塊,用于根據HBase源表中的列族信息、列信息、列屬性值及HBase源表中對應的Rowkey,創建與HBase源表對應的二級索引表;同步模塊,用于同步HBase源表的數據到對應的二級索引表中;同步HBase源表的插入數據操作或刪除數據操作到對應的二級索引表中。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮(北京)電子信息產業有限公司,未經浪潮(北京)電子信息產業有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410483879.X/2.html,轉載請聲明來源鉆瓜專利網。





