[發明專利]一種實時搜索的方法有效
| 申請號: | 201210217946.4 | 申請日: | 2012-06-27 |
| 公開(公告)號: | CN102737133A | 公開(公告)日: | 2012-10-17 |
| 發明(設計)人: | 龔偉堅;孫海濤;崔金峰 | 申請(專利權)人: | 北京城市網鄰信息技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京漢昊知識產權代理事務所(普通合伙) 11370 | 代理人: | 朱海波 |
| 地址: | 100012 北京市朝*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 搜索 方法 | ||
技術領域
本發明涉及搜索技術,尤其涉及一種實時搜索的方法。
背景技術
互聯網的飛速發展,給搜索引擎提出了新的難題,由于網絡信息的爆炸性增長,大規模的web搜索引擎平均每秒需要處理上萬次搜索請求,每個搜索的處理需要涉及到海量的索引,因此,索引處理已經成為搜索引擎的主要的性能瓶頸。
現有的搜索方案中,對于實時搜索,雖然可以一邊提供查詢的功能,一邊提供修改的數據排序字段,例如一張員工數據表中,存儲了員工的編號、姓名、工作日期共三個字段的信息,而索引是按照“編號”的排序字段進行建立的,則用戶需要查詢以“工作日期”為排序字段的前十名員工的信息,則可以一邊返回查詢的數據給用戶,一邊修改數據的排序字段,以便于下次較快地返回以“工作日期”為排序字段的所有員工的信息,但是,由于沒有適用緩存,針對每一次新的搜索請求,都需要從索引中檢索數據,并對索引中的數據進行重新排序,由此,延長了數據搜索的時間,降低了搜索系統的性能。
發明內容
根據對大量用戶的搜索習慣和規律進行調查發現,在一段時間內大量用戶會對一些當前熱門關鍵詞進行搜索,而搜索過程中生成的索引和搜索結果在預定時間內是保持不變。如果能夠充分利用先前已經形成的索引和搜索結果可以減少為相同的搜索請求重復生成搜索結果的服務器時間和負荷。為此本發明的目的是提供一種實時搜索的方法,該方法包括以下步驟:
將數據文檔按照時間順序生成多段索引;
從各索引段中提取部分數據,予以緩存,其中,根據各段的生成時間確定提取該段進行緩存的數據量;
搜索數據時,先從緩存中搜索各索引段的文檔,緩存中存在目標數據時,則返回目標數據;否則,從其他存儲單元中搜索數據;
將從緩存所搜索的目標數據和/或從存儲單元中所搜索的目標數據予以合并,返回合并的數據。
與現有技術相比,本發明具有以下優點:
1)通過采用緩存的方案,提高了實時搜索的效率;
2)針對不同時間段的數據,采用不同的緩存方案,提高了實時搜索的靈活性。
附圖說明
通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發明的其它特征、目的和優點將會變得更明顯:
圖1為根據本發明一個優選實施例的實時搜索方法的流程圖;
圖2為根據本發明的一個優選實施例的數據搜索的方法流程圖;
具體實施方式
下面結合附圖對本發明作進一步詳細描述。
根據本發明,提供了一種實時搜索的方法。下文中,將對本發明提供的實時搜索的方法進行詳細說明。該方法包括以下步驟:
步驟S101,將數據文檔按照時間順序生成多段索引。
具體地,索引的建立和數據搜索的方法可以參照現有技術,例如包括以下步驟:
a)在內存中預設存儲單元的大小和個數,初始化相應的內存空間,記錄包括數據類型和數據內容在內的數據信息,如文本數據及內容;
b)初始化索引,在所述索引中存儲對應數據信息的各存儲單元的地址信息;
c)收到搜索請求,通過索引進行數據搜索;
d)判斷是否搜索得到所需數據,是,則將搜索結果返回;否,則從本地或遠程磁盤中搜索并讀取所需數據。
本技術方案中,根據時間順序建立多段索引,如建立三段索引,第一段索引中所包含的數據包括一天以內被搜索或更新的數據;第二段索引中所映射的數據包括一天之前三個月以內被搜索或更新的數據;第三段索引中所映射的數據包括前三個月之前被搜索或更新的數據,也就是不同段的索引,所包含的是不同時間段的數據。所述索引段中包括搜索請求和相應的搜索結果。
當然,本領域的技術人員應該知曉,索引中由于可以只包含數據中的關鍵字值和記錄號,如索引中包含一張員工表中的“工號”值和排序號,因此,索引比數據本身的內容要小得多,并且,建立索引后,索引中的內容會隨著數據的增減或修改而更新。
一個完整的索引由多個段組成,每個段是一份可搜索的最小單元,它由多個文檔生成,每個文檔在段中具有唯一的標識,各個文檔可以分別為不同的數據對象類型,包括:文本數據對象、圖像數據對象、音頻數據對象、視頻數據對象、可執行程序數據對象等等,并且,每個文檔包含一個全局的、唯一的鍵值,即主鍵,例如文檔的標識號。在每個索引段中,文檔按照主鍵進行排序。
步驟S102,從各索引段中提取部分數據,予以緩存,其中,各段所提取的數據量根據段的生成時間予以確定。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京城市網鄰信息技術有限公司,未經北京城市網鄰信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210217946.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:檢測惡意網頁的方法及裝置
- 下一篇:一種相關度計算方法和裝置





