[發明專利]一種基于HBase的更新增量索引的方法有效
| 申請號: | 201410025773.5 | 申請日: | 2014-01-20 |
| 公開(公告)號: | CN103778219A | 公開(公告)日: | 2014-05-07 |
| 發明(設計)人: | 鄭慶華;賀歡;李冰;董博;李慶喻 | 申請(專利權)人: | 西安交通大學;上海網達軟件股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 西安通大專利代理有限責任公司 61200 | 代理人: | 朱海臨 |
| 地址: | 710049 陜*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 hbase 更新 增量 索引 方法 | ||
技術領域
本發明涉及一種在HBase(一個分布式的、面向列的開源數據庫,支持百萬列上億行數據的存儲)基礎上對增量索引內容進行更新的方法,主要解決目前對增量索引的更新效率低的問題。
背景技術
隨著互聯網技術的發展,信息系統的中存儲的文本數量日益龐大,為了從中查找所需信息,必須構建索引。當需要索引的數據量極大時,單個計算機提供的存儲容量無法滿足索引的存儲需求,所以必須使用分布式的計算與存儲環境滿足需求。一種解決方法是采用基于HBase的倒排索引技術實現對不斷增加的數據構建增量索引,另外,隨著時間的積累,部分被索引的數據會發生變化,需要將增量索引系統中的索引數據相應的進行更新。因此,如何有效的對不斷變化的內容更新其增量索引,滿足用戶在檢索時對索引內容及時性的需求,成了亟待解決的難題。
針對如何有效地構建數據索引以及存儲和檢索,以下專利和論文提供了不同的技術方案:
文獻1.一種全文檢索系統的索引在線更新方法(200610112800.8);
文獻2.Antonopoulos?P,Konstantinou?I,Tsoumakos?D,et?al.Efficient?Updates?for?Web-Scale?Indexes?over?the?Cloud[C]:IEEE,2012:135-142.;
文獻1將索引庫按照文檔變更的頻繁程度劃分為主索引庫與輔助索引庫兩部分,其中主索引庫由占絕大多數的很少改變的文檔組成,輔助索引庫由經常改變的少數文檔組成。在更新索引時,不直接對主索引庫進行更新,而是將索引的新增、刪除與更新操作保存在輔助索引庫中,當輔助索引庫的文件大小或數量超過預先設置的閾值時,批量的將輔助索引庫中的所有索引操作合并到主索引庫中,或者按照系統的繁忙程度,在系統空閑時進行合并操作。采用這種方式,可以避免索引更新操作對主索引庫大量讀寫造成的性能下降,保證索引服務持續可用。
文獻2通過分析索引更新的操作的細節,發現更新索引時,其操作具有明顯的局部性,不用將一個文檔的所有術語都進行更新,只需要對發生變化的術語進行更新即可,避免了不必要的索引刪除與新增操作。而發現變化的術語更新的步驟可以通過對比待更新文檔的新舊前置表實現,不需要對文檔原文進行遍歷對比。采用這種方式,可以將索引更新的細節操作數量顯著降低,提高索引更新的效率。
以上文獻所述方法主要存在以下問題:文獻1沒有考慮待更新文檔數據持續增加時,輔助索引庫占用的存儲空間將會顯著提升,占用大量額外的存儲空間,當索引數據的規模極大時,輔助索引庫受限于單機的內存容量,無法保存更多索引更新;當總索引數量超過一定程度時,合并索引的效率會發生顯著下降,不適應當前海量數據資源的索引更新;索引的更新過程的一段時期內,同時存在兩個不同的索引版本,如輔助索引庫發生異常,則會丟失索引更新。文獻2在實現索引更新時,需要保存待索引文檔的前置表,而保存前置表需要占用和索引同樣大小的存儲空間,造成存儲浪費;而從索引中重新生成前置表,則需要掃描整個索引庫,十分耗費時間。
發明內容
本發明的目的在于提出一種新的可提高更新效率的索引更新方法,以解決背景技術的方法中不適合處理海量數據索引、額外占用大量存儲空間以及整體更新速度慢的問題,。
為了達到以上目的,本發明是采取如下技術方案予以實現的:
一種基于HBase的更新增量索引的方法,其特征在于,包括下述步驟:
(1)從HBase索引庫中獲取待更新文檔D的歷史內容C0
待更新文檔D的歷史內容在HBase索引庫中已經存在,包括其內容文本與內容文本的索引,通過待更新文檔D的標識符,從HBase索引庫中讀取其歷史內容;
(2)解析待更新文檔D的歷史內容C0,獲取C0的前置表FT0;
(3)解析待更新文檔D的當前內容C1,獲取C1的前置表FT1;
(4)遍歷C1的前置表FT1,對FT1中每個術語t,結合FT0進行判斷,修改前置表FT1和FT0的內容,具體方法如下:
判斷FT0中是否存在術語t,分別進行如下處理:
a、如果不存在,則繼續判斷FT1的下一個術語;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安交通大學;上海網達軟件股份有限公司,未經西安交通大學;上海網達軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410025773.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:管孔式布料裝置
- 下一篇:一種鋁電解槽石墨陽極鋼爪抗腐蝕高溫涂料





