[發明專利]索引的更新方法、裝置、電子設備以及存儲介質在審
| 申請號: | 202011265612.5 | 申請日: | 2020-11-12 |
| 公開(公告)號: | CN112256715A | 公開(公告)日: | 2021-01-22 |
| 發明(設計)人: | 徐霽;劉磊;郭偉鵬 | 申請(專利權)人: | 微醫云(杭州)控股有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F16/22;G06F16/21 |
| 代理公司: | 北京超凡宏宇專利代理事務所(特殊普通合伙) 11463 | 代理人: | 鐘揚飛 |
| 地址: | 311200 浙江省杭州市蕭山區*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 索引 更新 方法 裝置 電子設備 以及 存儲 介質 | ||
本申請提供一種索引的更新方法、裝置、電子設備以及存儲介質,該方法包括:監控數據庫存儲的數據是否發生更新;若發生更新,構建數據庫對應的索引文檔;計算索引文檔的信息摘要值,并生成索引文檔的版本號;將索引文檔的信息摘要值與本地歷史索引的信息摘要值進行比對,將索引文檔的版本號與本地歷史索引的版本號進行比對;若索引文檔的信息摘要值與本地歷史索引的信息摘要值不同,且索引文檔的版本號大于等于本地歷史索引的版本號,利用索引文檔更新本地歷史索引。該方法解決了搜索引擎索引重復更新的問題。
技術領域
本發明涉及搜索引擎索引領域,具體而言,涉及一種索引的更新方法、裝置、電子設備以及存儲介質。
背景技術
搜索引擎能夠提供的數據不是獨立存在的,一般需要依賴外部數據庫,搜索引擎將外部數據庫的數據建立索引后存儲在本地以便加速查詢,外部數據庫相當于一臺計算機,而搜索引擎服務部署于另一臺計算機,搜索引擎服務需要監控數據庫中的數據發生變化從而更新本地索引,然后用戶通過搜索引擎服務就可以查詢到最新的數據。
但是現有技術為避免數據丟失,會重復讀取一批數據,但是這些數據對于搜索引擎來說是重復更新。并且索引更新必須是按照時間順序進行,如果中間順序變更會導致新索引被老索引覆蓋。比如增量監控為5秒,前一個5秒的索引還沒提交,下一個5秒的索引更新已經完成,當前一個5秒索引提交時導致索引被覆蓋為前一個5秒的索引,這種情況會一直持續到下次數據更新。
發明內容
本申請實施例提供了一種搜索引擎索引的更新方法,該方法解決了索引重復更新的問題。
本申請實施例提供了一種搜索引擎索引的更新方法,該方法包括:
監控數據庫存儲的數據是否發生更新;
若發生更新,構建所述數據庫對應的索引文檔;
計算所述索引文檔的信息摘要值,并生成所述索引文檔的版本號;
將所述索引文檔的信息摘要值與本地歷史索引的信息摘要值進行比對,將所述索引文檔的版本號與本地歷史索引的版本號進行比對;
若所述索引文檔的信息摘要值與本地歷史索引的信息摘要值不同,且所述索引文檔的版本號大于等于本地歷史索引的版本號,利用所述索引文檔更新所述本地歷史索引。
在一實施例中,所述數據庫的數據字段包含修改時間;所述監控數據庫存儲的數據是否發生更新,包括:
每隔預設時間段查詢是否存在所述修改時間在所述預設時間段內的數據字段,若存在,確定所述數據庫的數據發生更新。
在一實施例中,還包括:
對于所述修改時間在指定時間間隔之前的數據字段,不參與數據庫是否更新的判斷;所述指定時間間隔大于所述預設時間段。
在一實施例中,所述監控數據庫存儲的數據是否發生更新,包括:
監聽消息隊列中的數據庫更新日志,在所述消息隊列存入新的數據庫更新日志時,確定所述數據庫的數據發生更新。
在一實施例中,所述監控數據庫存儲的數據是否發生更新,包括:
刪除所述消息隊列中創建時間在指定時間間隔之前的數據庫更新日志。
在一實施例中,所述若發生更新,構建所述數據庫對應的索引文檔,包括:
將所述數據庫中預設的感興趣字段構建索引文檔。
在一實施例中,生成所述索引文檔的版本號,包括:
根據所述數據庫中所述預設的感興趣字段所在數據表的修改時間,生成所述索引文檔的版本號。
本申請實施例還提供了一種搜索引擎索引的更新裝置,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微醫云(杭州)控股有限公司,未經微醫云(杭州)控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011265612.5/2.html,轉載請聲明來源鉆瓜專利網。





