[發明專利]數據的索引方法以及裝置有效
| 申請號: | 201710041318.8 | 申請日: | 2017-01-20 |
| 公開(公告)號: | CN108334514B | 公開(公告)日: | 2020-11-03 |
| 發明(設計)人: | 肖智鵬;張磊;李學文 | 申請(專利權)人: | 北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司 |
| 主分類號: | G06F16/13 | 分類號: | G06F16/13;G06F16/178;G06F16/16;G06F12/02;G06Q30/02 |
| 代理公司: | 中國貿促會專利商標事務所有限公司 11038 | 代理人: | 許蓓 |
| 地址: | 100195 北京市海淀區杏石口路6*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據 索引 方法 以及 裝置 | ||
1.一種數據的索引方法,其特征在于,包括:
索引線程實時獲取增量數據,所述增量數據包括增加的數據或刪除的數據;
所述索引線程根據所述增量數據包含的關鍵詞獲取對應的key,根據對應的鍵key獲取倒排索引中所述key對應的原倒排拉鏈;
所述索引線程根據所述增量數據以及所述原倒排拉鏈中的數據生成臨時倒排拉鏈;
所述索引線程利用所述臨時倒排拉鏈替換所述原倒排拉鏈來更新所述倒排索引,為原倒排拉鏈的內存空間添加延遲回收標識并打上第二時間戳,所述索引線程每隔預設時間從時間隊列中獲取最小的第一時間戳,并將所述最小的第一時間戳與帶有延遲回收標識的內存空間的第二時間戳進行比對;其中,與所述索引線程并行執行的檢索線程在接收用戶的檢索請求后,在時間隊列中生成第一時間戳,并在所述檢索請求完成檢索后,刪除對應的第一時間戳;
如果所述帶有延遲回收標識的內存空間的第二時間戳小于所述最小的第一時間戳,所述索引線程則將所述帶有延遲回收標識的內存空間回收;
所述索引線程利用更新后的倒排索引提供檢索服務。
2.根據權利要求1所述的方法,其特征在于,
所述根據所述增量數據以及所述原倒排拉鏈中的數據生成臨時倒排拉鏈包括:
當所述增量數據為增加的數據時,復制所述原倒排拉鏈,并在所述復制的原倒排拉鏈中添加所述增加的數據,以生成臨時倒排拉鏈;
或者,
當所述增量數據為刪除的數據時,復制所述原倒排拉鏈,并在所述復制的原倒排拉鏈中刪除所述刪除的數據,以生成臨時倒排拉鏈。
3.根據權利要求1所述的方法,其特征在于,還包括:
如果所述原倒排拉鏈的帶有延遲回收標識的內存空間的第二時間戳大于或等于所述最小的第一時間戳,則不回收所述帶有延遲回收標識的內存空間,使得正在使用所述原倒排拉鏈進行檢索的所述檢索線程,在所述原倒排拉鏈被替換后,仍然到所述原倒排拉鏈的帶有延遲回收標識的內存空間中讀取數據進行檢索。
4.根據權利要求1-3任一項所述的方法,其特征在于,還包括:
周期性的將更新后的倒排索引文件發送至云存儲系統更新已存儲的倒排索引文件;
在內存中實時將更新后的倒排索引文件進行備份。
5.根據權利要求1-3任一項所述的方法,其特征在于,還包括:
從云存儲系統中獲取已存儲的全量數據的文件;
根據所述全量數據生成倒排索引文件;
將所述倒排索引文件發送至所述云存儲系統進行存儲;
啟動時從所述云存儲系統獲取所述倒排索引文件保存至內存中。
6.一種數據的索引裝置,其特征在于,包括:
增量數據獲取模塊,用于實時獲取增量數據,所述增量數據包括增加的數據或刪除的數據;
原倒排拉鏈獲取模塊,用于根據所述增量數據對應的鍵key獲取倒排索引中所述key對應的原倒排拉鏈;
臨時倒排拉鏈生成模塊,用于根據所述增量數據以及所述原倒排拉鏈中的數據生成臨時倒排拉鏈;
倒排索引更新模塊,用于利用所述臨時倒排拉鏈替換所述原倒排拉鏈來更新所述倒排索引,利用更新后的倒排索引提供檢索服務;
延遲回收模塊包括:檢索線程執行單元,時間隊列單元,索引線程執行單元;
索引線程執行單元用于在在所述倒排索引更新模塊利用所述臨時倒排拉鏈替換所述原倒排拉鏈時,為所述原倒排拉鏈的內存空間添加延遲回收標識的同時為所述原倒排拉鏈的內存空間打上第二時間戳,每隔預設時間從時間隊列中獲取最小的第一時間戳,并將所述最小的第一時間戳與帶有延遲回收標識的內存空間的第二時間戳進行比對,如果所述帶有延遲回收標識的內存空間的第二時間戳小于所述最小的第一時間戳,則將所述帶有延遲回收標識的內存空間回收;
檢索線程執行單元用于接收用戶的檢索請求,查找對應的倒排拉鏈進行檢索;
時間隊列單元用于在檢索線程執行單元接收用戶的檢索請求后,在時間隊列中生成第一時間戳,并在所述檢索請求完成檢索后,刪除對應的第一時間戳;
其中,所述索引線程執行單元與所述檢索線程執行單元并行執行。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司,未經北京京東尚科信息技術有限公司;北京京東世紀貿易有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710041318.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種SaaS架構的服裝生產管理系統
- 下一篇:信息推送方法和裝置
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





