[發明專利]一種搜索引擎的擴容方法及搜索服務系統有效
| 申請號: | 201310178009.7 | 申請日: | 2013-05-14 |
| 公開(公告)號: | CN104156367B | 公開(公告)日: | 2017-12-01 |
| 發明(設計)人: | 柳明 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京安信方達知識產權代理有限公司11262 | 代理人: | 解婷婷,栗若木 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 搜索引擎 擴容 方法 搜索 服務 系統 | ||
技術領域
本發明涉及搜索領域,尤其涉及一種搜索引擎的擴容方法及搜索服務系統。
背景技術
對于搜索引擎而言,在線上已運行的搜索服務可能因為規模變化,導致以下2個問題:
(1)承載某Shard(搜索服務索引中的列索引)的若干臺機器已經不再適用當前的查詢請求量;
(2)單索引規模變大導致搜索性能下降,需要將單索引進一步切分。
要解決上述2個問題就需要提供一種擴容的方案來解決,而這種擴容的實現方案不能影響正常的線上應用,也即是說整個擴容期間對業務方使用搜索服務來說是透明的。
對于數據庫,現有技術提供了一種基于一致性Hash的擴容方案。基于一致性Hash的擴容方案在確實能解決數據庫數據熱點和擴容方面的問題,遇到熱點數據,只需要單獨給這些數據更多的計算和存儲資源。遇到擴容問題,只需要將老節點的數據移動到新節點即可。在數據庫應用中采用一致性Hash的擴容較成熟,能有效解決熱點問題、解決擴容問題。
但是該擴容方案需要遷移數據為代價,而對于將搜索引擎的數據進行遷移幾乎是不可能的,因為搜索引擎的數據都是以倒排表的存儲結構,并沒有任何功能接口可以將索引中的數據部分倒騰出來然后遷移到一個新的機器節點上,并以新的索引結構存儲下來;換句話說是索引并沒有通過某種規則變化從而可以進行切分遷移的功能。所以基于一致性Hash的擴容方案在對于搜索引擎的擴容方面并不適合。
申請內容
本申請要解決的技術問題是如何平滑地、對業務方透明地對搜索服務在線擴容。
為了解決上述問題,本申請提供了一種搜索引擎的擴容方法,包括:
為用于擴容的檢索節點創建擴容任務;
用于擴容的檢索節點領取到擴容任務后,在分布式文件系統上復制最新時間點的全量索引,然后消費所述分布式文件系統中從所述最新時間點開始、到當前時間點為止的所有增量數據;所述全量索引是對全量數據所做的索引;所述全量數據是以全量周期為間隔導入到所述分布式文件系統上的源數據;所述增量數據是以固定時間間隔定時導入到所述分布式文件系統中、以時間快照方式存儲的源數據。
進一步地,所述為用于擴容的檢索節點創建擴容任務的步驟包括:
當請求量增加,導致當前檢索節點無法承載時,創建增加各列索引的副本的擴容任務;所述用于擴容的檢索節點為用于承載新增副本的檢索節點,個數為列索引的個數與所增加的副本個數的乘積;
當索引規模變大,導致單次請求平均響應變慢時,創建增加列索引的個數的擴容任務;所述用于擴容的檢索節點為用于承載新增列索引的檢索節點,個數為增加的列索引個數與各列索引副本個數的乘積。
進一步地,所述的方法還包括:
對于全量索引中的各索引行,分別將各索引行的唯一鍵對于虛擬組的總個數取模,得到各索引行的取模結果;分別將各索引行分入組號等于該索引行的取模結果的虛擬組中;
分別將每個虛擬組的組號對于列索引的總個數取模,得到各虛擬組的取模結果;分別將各虛擬組對應于分片號等于該虛擬組取模結果的列索引;
所述檢索節點在分布式文件系統上復制最新時間點的全量索引的步驟包括:
檢索節點在分布式文件系統上復制本檢索節點所承載的列索引對應的虛擬組中最新時間點的各索引行。
進一步地,所述的方法還包括:
客戶端節點周期性從分布式文件系統導入全量數據;
每次導入后,承載列索引的各檢索節點中具有控制角色的檢索節點消費導入的全量數據,生成全量索引并將該全量索引回流到分布式文件系統;將回流到分布式文件系統上的全量索引復制到本地作為新的全量索引,將索引路徑指向所述新的全量索引。
進一步地,所述的方法還包括:
客戶端節點啟動后連接分布式服務框架系統,判斷是否已生成本身所承載的搜索服務的路徑;
如果該路徑沒生成,則客戶端節點生成該路徑并將自身IP以該路徑的數據注冊;如果該路徑已生成,則判斷該路徑下的數據是否和自身IP一致,如果一致則該客戶端節點獲得執行增量、全量數據導入分布式文件系統的權限;如果不一致則監視該路徑;
如果獲得執行增量、全量數據導入分布式文件系統的權限的客戶端節點在預定時間長度內沒有任何心跳檢查,則所述分布式服務框架系統刪除所述路徑;所有監視了該路徑的客戶端節點將觸發一次監視者事件;所述監視者事件是指重新生成所述路徑并將自身IP以該路徑的數據注冊。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310178009.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:自適應推送日歷
- 下一篇:個性化導航頁面生成方法及裝置





