[發明專利]一種基于單字索引系統的檢索方法和裝置有效
| 申請號: | 201110147520.1 | 申請日: | 2011-06-02 |
| 公開(公告)號: | CN102810096A | 公開(公告)日: | 2012-12-05 |
| 發明(設計)人: | 楊棟 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 逯長明;王寶筠 |
| 地址: | 英屬開曼群島大開曼*** | 國省代碼: | 開曼群島;KY |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 單字 索引 系統 檢索 方法 裝置 | ||
技術領域
本發明涉及搜索引擎技術,特別涉及一種基于單字索引系統的檢索方法和裝置。
背景技術
隨著網絡的迅速普及,信息海量增加。搜索引擎技術的出現使得人們能方便快捷地在這些海量信息中找到自己所需要的各種信息。
單字索引系統作為檢索目標信息的一種解決方案已得到廣泛應用。單字索引系統包含眾多預先建立的索引表(如附圖1所示),每個索引表主要包含三列數據:一列是索引字符,這些字符絕大部分為單字形式,也有少部分字符是自然語言的詞組、成語,甚至短句,檢索語句根據索引字符查詢索引表;第二列是與索引字符對應的包含該索引字符的文檔的數目;第三列是與索引字符對應的包含該索引字符的所有文檔的地址,這些文檔稱為索引文檔。用戶檢索時只需輸入檢索語句,單字索引系統從檢索語句中提取出檢索字符,并根據該檢索字符對應的索引字符查詢索引表獲取包含該索引字符的索引文檔集,然后返回給用戶完成檢索。附圖2所示為現有技術中單字索引系統進行檢索的一個實例圖。該實例進行檢索的步驟包括:接收用戶輸入的檢索語句,然后將該語句拆分為多個詞組,再通過每個詞組中單字對應的索引字符從預先創建的索引表中找到包含該單字的索引文檔集,對這些文檔集進行交集運算,從而得到包含該詞組的文檔集,接下來對各個詞組的文檔集進行同樣的交集運算,進而得到包含這些詞組的最后檢索結果。該檢索方法在獲取詞組的文檔集時對詞組中每個單字的索引文檔進行交集運算,通常,每個單字對應的索引文檔數量巨大,因此交集運算的運算對象的數量也頗為巨大,為得到檢索結果,索引系統必須完成所有的交集運算,這勢必大大增加檢索時間,降低了單字索引系統的檢索性能。
發明內容
有鑒于此,本發明提供一種基于單字索引系統的檢索方法和裝置,該方法和裝置在獲取每個檢索單元的檢索結果時,改變了檢索結果的獲取方式,不再對檢索單元的所有索引文檔集進行交集運算,以減少交集運算的運算對象的數量,縮短檢索時間,提高單字索引系統的檢索性能。
本發明提供的基于單字索引系統的檢索方法包括:
接收檢索語句;
提取所述檢索語句的字符序列,并將該字符序列進行拆分得到檢索單元,所述檢索單元包括至少一個檢索字符;
根據所述檢索單元的檢索字符查詢索引表獲得各檢索字符對應的索引文檔集;以所述索引文檔集為處理對象,進行包括選擇操作在內的處理,并將處理結果作為該檢索單元的檢索結果;
對所述各檢索單元的檢索結果進行交集運算并返回結果文檔集;
用所述各檢索單元掃描所述結果文檔集以判斷所述結果文檔集的文檔是否包含所述各檢索單元,如果是,則返回該文檔。
本發明還提供了一種基于單字索引系統的檢索裝置,該裝置包括:
檢索語句接收模塊、字符序列提取與拆分模塊、索引文檔集獲取模塊、索引文檔集處理模塊、交集運算模塊和判斷模塊,其中:
所述檢索語句接收模塊,用于接收檢索語句;
所述字符序列提取與拆分模塊,用于提取所述檢索語句的字符序列,并將該字符序列進行拆分得到檢索單元,所述檢索單元包括至少一個檢索字符;
所述索引文檔集獲取模塊,用于根據所述檢索單元的檢索字符查詢索引表獲得各檢索字符對應的索引文檔集;
所述索引文檔集處理模塊,用于以所述索引文檔集為處理對象,進行包括選擇操作在內的處理,并將處理結果作為該檢索單元的檢索結果;
所述交集運算模塊,用于對所述各檢索單元的檢索結果進行交集運算并返回結果文檔集;
所述判斷模塊,用所述各檢索單元掃描所述結果文檔集以判斷所述結果文檔集的文檔是否包含所述各檢索單元,如果是,則返回該文檔。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110147520.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:數據安全操作方法及通信終端
- 下一篇:一種多功能手表





