[發明專利]基于代碼文件的搜索系統及方法在審
| 申請號: | 202010138219.3 | 申請日: | 2020-03-03 |
| 公開(公告)號: | CN113342919A | 公開(公告)日: | 2021-09-03 |
| 發明(設計)人: | 張娜;黃威;蔡學文 | 申請(專利權)人: | 北京奇虎科技有限公司 |
| 主分類號: | G06F16/31 | 分類號: | G06F16/31;G06F16/33;G06F8/71 |
| 代理公司: | 深圳市世紀恒程知識產權代理事務所 44287 | 代理人: | 胡海國 |
| 地址: | 100088 北京市西城區新*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 代碼 文件 搜索 系統 方法 | ||
1.一種基于代碼文件的搜索系統,包括:代碼數據庫、代碼索引裝置、后臺更新裝置、以及搜索服務端;其中,
所述后臺更新裝置與所述代碼數據庫以及所述代碼索引裝置分別相連,用于更新所述代碼數據庫中存儲的代碼文件,并根據代碼文件的更新結果通知所述代碼索引裝置適應性更新代碼索引文件;
所述搜索服務端與所述代碼數據庫以及所述代碼索引裝置分別相連,用于根據接收到的代碼搜索請求,向所述代碼索引裝置發送代碼索引請求,并根據接收到的代碼索引結果從所述代碼數據庫中查詢與所述代碼搜索請求相對應的代碼搜索結果。
2.根據權利要求1所述的系統,其中,所述后臺更新裝置具體用于:
針對更新后的各個代碼文件,提取該代碼文件的關鍵字信息;
將各個代碼文件的關鍵字信息以及各個代碼文件在所述代碼數據庫中的存儲位置發送給所述代碼索引裝置,以供所述代碼索引裝置適應性更新代碼索引文件。
3.根據權利要求2所述的系統,其中,所述代碼文件的關鍵字信息通過文本相似度算法確定;其中,所述文本相似度算法包括:BM25算法和/或TFIDF算法;并且,所述代碼索引文件為分布式倒排索引文件。
4.根據權利要求3所述的系統,其中,所述代碼文件的關鍵字信息包括:代碼漏洞信息、和/或代碼特征詞信息。
5.根據權利要求1-4任一所述的系統,其中,所述代碼索引裝置具體用于:針對預設的索引服務端執行實時配置處理以及分布式配置處理,通過配置后的索引服務端建立所述代碼索引文件。
6.根據權利要求5所述的系統,其中,所述索引服務端具有第一端口以及第二端口;
其中,所述第一端口用于提供索引搜索功能,所述第二端口用于提供索引入庫功能。
7.根據權利要求1-6任一所述的系統,其中,所述后臺更新裝置具體用于:獲取并解析與代碼數據源相對應的代碼提交日志,根據解析結果確定代碼文件增量列表;針對所述代碼文件增量列表中包含的代碼文件執行預處理,根據預處理后得到的各個代碼文件更新所述代碼數據庫。
8.一種基于權利要求1-14任一所述的搜索系統的搜索方法,包括:
更新代碼數據庫中存儲的代碼文件,并根據代碼文件的更新結果通知代碼索引裝置適應性更新代碼索引文件;
根據接收到的代碼搜索請求,向代碼索引裝置發送代碼索引請求,并根據接收到的代碼索引結果從所述代碼數據庫中查詢與所述代碼搜索請求相對應的代碼搜索結果。
9.一種電子設備,包括:處理器、存儲器、通信接口和通信總線,所述處理器、所述存儲器和所述通信接口通過所述通信總線完成相互間的通信;
所述存儲器用于存放至少一可執行指令,所述可執行指令使所述處理器執行如權利要求8所述的基于代碼文件的搜索方法對應的操作。
10.一種計算機存儲介質,所述存儲介質中存儲有至少一可執行指令,所述可執行指令使處理器執行如權利要求8所述的基于代碼文件的搜索方法對應的操作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇虎科技有限公司,未經北京奇虎科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010138219.3/1.html,轉載請聲明來源鉆瓜專利網。





