TWI740029B - 分散式搜索及索引更新方法、系統、伺服器及電腦設備 - Google Patents
分散式搜索及索引更新方法、系統、伺服器及電腦設備 Download PDFInfo
- Publication number
- TWI740029B TWI740029B TW107111376A TW107111376A TWI740029B TW I740029 B TWI740029 B TW I740029B TW 107111376 A TW107111376 A TW 107111376A TW 107111376 A TW107111376 A TW 107111376A TW I740029 B TWI740029 B TW I740029B
- Authority
- TW
- Taiwan
- Prior art keywords
- server
- query
- index
- engine
- servers
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004891 communication Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 4
- 238000012512 characterization method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000012423 maintenance Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本發明實施例公開了一種分散式搜索及索引更新方法、系統、伺服器及電腦設備。根據所述方法的一個示例,多個代理伺服器中的至少一個代理伺服器在接收到查詢伺服器轉發的來自終端設備的查詢請求後,可根據所述查詢請求對應的屬性資訊查詢配置管理伺服器,以獲得所述屬性資訊對應的機器資訊,並向所述機器資訊對應的至少兩個引擎伺服器發送所述查詢請求。並且,所述至少一個代理伺服器在獲得所述至少兩個引擎伺服器各自回應於所述查詢請求而返回的第一查詢結果後,可將至少兩個所述第一查詢結果按照預設規則合併為第二查詢結果,並將所述第二查詢結果發送至所述查詢伺服器,以由所述查詢伺服器將所述第二查詢結果返回給所述終端設備。
Description
本發明涉及分散式搜索及索引更新方法、系統、伺服器及電腦設備。
隨著移動互聯網的發展,人們可以方便地通過移動設備訪問網路,獲取網路服務,由此而興起了一批線上到線下(O2O,Online-to-Offline)本地生活化服務。但隨著業務的爆發性增長,搜尋引擎需要查詢的資料量越來越大,單機記憶體已存儲不下這些資料,使得系統穩定性越來越低,而且查詢請求的延時也越來越大,使得用戶體驗也越來越差。
可將搜索、索引和索引維護程式放在一台伺服器上,或者將索引拆分到多台機器上並由引擎這塊負責管理索引。然而,當搜索併發量大的情況下,可能無法進行即時擴展。並且,隨著業務量越來越多,需要的索引數也越來越多,運維成本也越來越大,並影響線上穩定性。
可採用主(master)從(slave)結構的分散式搜索系統。然而,由於主要伺服器需要選舉,當主要伺服器出現異常無法工作時,需要重新選舉主要伺服器,這就可能導致在重新選取主要伺服器的時間內搜索服務不可用,從而影響了線上穩定性。
為解決現有存在的技術問題,本發明實施例提供一種分散式搜索及索引更新方法、系統、伺服器及電腦設備。
根據本發明的第一方面,提供了一種分散式搜索方法,包括:多個代理伺服器中的至少一個第一代理伺服器在接收到來自查詢伺服器的查詢請求時,獲得所述查詢請求對應的屬性資訊;所述第一代理伺服器基於所述屬性資訊查詢配置管理伺服器,以獲得所述屬性資訊對應的機器資訊; 所述第一代理伺服器向所述機器資訊對應的至少兩個引擎伺服器發送所述查詢請求;所述第一代理伺服器獲得所述至少兩個引擎伺服器根據所述查詢請求而返回的第一查詢結果;所述第一代理伺服器將至少兩個所述第一查詢結果按照預設規則合併為第二查詢結果;以及所述第一代理伺服器將所述第二查詢結果發送至所述查詢伺服器。
根據本發明的第二方面,提供了一種索引更新方法,包括:主控伺服器從配置管理伺服器獲得拆分規則;所述主控伺服器發送所述拆分規則至索引創建伺服器,以使所述索引創建伺服器根據所述拆分規則將待創建的索引資料進行拆分;所述主控伺服器獲得表徵所述拆分的結果的索引配置資訊;所述主控伺服器基於所述索引配置資訊獲取索引資料;所述主控伺服器將所述索引資料存儲至多個引擎伺服器中對應的至少兩個引擎伺服器中。
根據本發明的協力廠商面,提供了一種代理伺服器,包括:通訊單元,用於接收來自查詢伺服器的查詢請求;處理單元,用於獲得所述查詢請求對應的屬性資訊,基於所述屬性資訊查詢配置管理伺服器以獲得所述屬性資訊對應的機器資訊,並確定所述機器資訊對應的至少兩個引擎伺服器。其中,所述通訊單元還用於向所述至少兩個引擎伺服器發送所述查詢請求,以獲得所述至少兩個引擎伺服器根據所述查詢請求而返回的第一查詢結果。所述處理單元還用於將至少兩個所述第一查詢結果按照預設規則進行合併,得到第二查詢結果。所述通訊單元還用於將所述第二查詢結果發送至所述查詢伺服器。
根據本發明的第四方面,提供了一種主控伺服器,包括:主控模組,用於從配置管理伺服器獲得拆分規則;通知模組,用於發送所述拆分規則至索引創建伺服器,以使所述索引創建伺服器根據所述拆分規則將待創建的索引資料進行拆分,並獲得表徵所述拆分的結果的索引配置資訊。其中,所述主控模組還用於基於所述索引配置資訊獲取索引資料,並將所述索引資料存儲至多個引擎伺服器中對應的至少兩個引擎伺服器中。
根據本發明的第五方面,提供了一種分散式搜索系統,包括:配置管理伺服器,用於管理配置資訊和機器資訊,所述配置資訊包括拆分規則,所述機器資訊表徵所述多個引擎伺服器的資訊;查詢伺服器,用於獲得終端設備的查詢請求;多個代理伺服器;以及多個引擎伺服器,所述多個引擎伺服器中的每個引擎伺服器用於存儲滿足所述拆分規則的索引資料。其中,所述多個 代理伺服器中的至少一個第一代理伺服器接收到來自所述查詢伺服器的所述查詢請求後,通過基於所述查詢請求的屬性資訊查詢所述配置管理伺服器,確定所述多個引擎伺服器中的至少兩個第一引擎伺服器,並向所述至少兩個第一引擎伺服器發送所述查詢請求。所述至少兩個第一引擎伺服器各自回應於收到所述查詢請求回復第一查詢結果。所述至少一個第一代理伺服器將至少兩個所述第一查詢結果合併為第二查詢結果,並發送至所述查詢伺服器,以由所述查詢伺服器將所述第二查詢結果返回至所述終端設備。
根據本發明的第六方面,提供了一種電腦設備,包括記憶體、處理器及存儲在記憶體上並可在處理器上運行的電腦程式,其特徵在於,所述處理器執行所述程式時實現上述分散式搜索方法的步驟。
根據本發明的第七方面,提供了一種電腦設備,包括記憶體、處理器及存儲在記憶體上並可在處理器上運行的電腦程式,其特徵在於,所述處理器執行所述程式時實現上述索引更新方法的步驟。
採用本發明實施例的技術方案,通過多個代理伺服器聯結查詢伺服器和引擎伺服器的分散式架構,查詢伺服器的查詢請求可被發送至多個代理服務中的至少一個代理伺服器,由至少一個代理伺服器從相應的至少兩個引擎伺服器中獲得查詢結果。由於多個代理伺服器相互之間具有並行關係,一個代理伺服器無法工作還可通過其他代理伺服器工作,可有效避免主設備無法工作時因需要重新選擇主設備而導致的短時間內搜索服務不可用。另外,由於通過主控伺服器聯結配置管理伺服器、索引創建伺服器和引擎伺服器進行索引資料的更新維護,代理伺服器無需承擔索引的更新維護,可大大降低了代理伺服器的負擔。
210、61‧‧‧主控模組
220、62‧‧‧通知模組
230、63‧‧‧用戶端模組
240‧‧‧配置管理伺服器
250‧‧‧索引創建伺服器
260‧‧‧引擎伺服器
410‧‧‧查詢伺服器
420‧‧‧代理伺服器
421‧‧‧第一代理伺服器
51‧‧‧通訊單元
52‧‧‧處理單元
71‧‧‧處理器
72‧‧‧記憶體
73‧‧‧外部通信介面
74‧‧‧匯流排
21、22、23、24、25、26、41、42、43、44、45、46、47、101、102、103、104、301、302、303、304、305‧‧‧步驟
第1圖為本發明一實施例的索引更新方法的流程示意圖。
第2圖為本發明一實施例中的分散式搜索方法的應用架構以及資料交互示意圖。
第3圖為本發明另一實施例的分散式搜索方法的流程示意圖。
第4圖為本發明另一實施例中的分散式搜索方法的應用架構以及資料交互示意圖。
第5圖為本發明一實施例的代理伺服器的組成結構示意圖。
第6圖為本發明一實施例的主控伺服器的組成結構示意圖。
第7圖為本發明實施例的電腦設備的組成結構示意圖。
下面結合附圖及具體實施例對本發明作進一步詳細的說明。
第1圖為本發明一實施例的索引更新方法的流程示意圖。如第1圖所示,所述方法可包括:
步驟101:主控伺服器將從配置管理伺服器獲得的拆分規則發送至索引創建伺服器,以使索引創建伺服器根據所述拆分規則將待創建的索引資料拆分為多個索引配置資訊。
步驟102:所述主控伺服器從所述索引創建伺服器獲得索引配置資訊。
步驟103:所述主控伺服器基於所述索引配置資訊獲取索引資料。
步驟104,所述主控伺服器將所述索引資料存儲至多個引擎伺服器中對應的第一引擎伺服器中,以更新所述第一引擎伺服器中存儲的索引資料。
本實施例的索引更新方法可應用於主控伺服器中,所述主控服務器具體可以是伺服器或伺服器集群。在一實施例中,所述主控伺服器可包括主控模組210、通知模組220和多個用戶端模組230,具體可參照第2圖所示。所述主控模組210可負責統一調度,並與配置管理伺服器240通信。所述通知模組220可負責通知索引創建伺服器250。所述通知模組220的數量可以是一個或多個。例如,多個通知模組220可基於業務類型的不同進行區分,以分別用於通知屬於相應業務類型的索引創建的相關資訊。所述用戶端模組230的數量可與引擎伺服器260的數量相同,且每個用戶端模組230對應一個引擎伺服器260,所述用戶端模組230可用於根據主控模組210的指示拉取索引資料,將拉取的索引資料存儲至對應的引擎伺服器260中。所述主控模組210、每個通知模組220可通過獨立的伺服器實現。所述用戶端模組230可位於對應的引擎伺服器260中,並通過對應的引擎伺服器260實現相應功能。在實際應用中,所述主控模組210可配置備用主控模組。每個通知模組220也可配置對應的備用通知模組。每個用戶端模組230也可配置對應的備用用戶端模組。這樣,主模組 出現異常無法工作時,可通過相應的備用模組繼續執行相應的功能。
配置管理伺服器240用於管理配置資訊和機器資訊。所述機器資訊可表徵所述多個引擎伺服器260的資訊。其中,引擎伺服器260的資訊可包括引擎伺服器的IP位址和埠等資訊。作為一種示例,所述機器資訊可通過包含有上述引擎伺服器260的資訊的機器清單表示。所述配置資訊可至少包括業務標識、機器配置資訊以及配置的規則資訊等等。其中,所述機器配置資訊可具體包括機器清單,也即包括引擎伺服器260的IP位址和埠等資訊。所述規則資訊包括在搜索過程中所需要的任何操作規則,至少包括索引創建時所需要的拆分規則、索引創建規則、通知模組執行哪一種或幾種業務類型的索引創建的通知資訊的配置規則、用戶端模組執行拉取哪一種或幾種業務類型對應的索引資料的配置規則等等,當然不限於上述幾種規則。
主控伺服器從配置管理伺服器240中獲得配置資訊中的拆分規則,將所述拆分規則發送至索引創建伺服器250,可具體包括:主控模組210從配置管理伺服器240獲得拆分規則,當然也包括索引創建規則;主控模組210發送所述拆分規則和所述索引創建規則至所述通知模組220;所述通知模組220發送所述拆分規則和所述索引創建規則至索引創建伺服器250。其中,所述通知模組220的數量可依據業務類型的不同配置有多個,則所述主控模組210可依據待創建的索引資料的業務類型,從所述配置管理伺服器240中獲得與所述業務類型相匹配的拆分規則和索引創建規則,並將所述拆分規則和所述索引創建規則發送至與所述業務類型相匹配的通知模組220。所述通知模組220再將所述拆分規則和所述索引創建規則發送至所述索引創建伺服器250。
所述索引創建伺服器250依據所述索引創建規則創建索引,進一步依據所述拆分規則將創建的索引資料進行拆分。其中,所述拆分規則中可包括拆分參數,所述拆分參數具體可包括拆分數量,所述拆分數量用於表徵索引資料的拆分數量。例如,所述拆分數量為N時,表徵將索引資料拆分為N份索引子資料。N可為大於等於2的正整數,以表示創建的索引資料會分佈存儲在至少兩個引擎伺服器260中。例如,search_online_dis_1和search_online_dis_2是一份完整的索引資料,可依據拆分規則將其水準拆分為兩個索引資料。所述兩個索引資料可分別存儲在一引擎伺服器中。
進一步地,所述索引創建伺服器250可基於創建完成、且拆分後 的索引資料生成索引配置資訊。所述索引配置資訊可包括多個,或者所述索引配置資訊可包括多個索引配置子資訊。多個所述索引配置資訊或所述多個索引配置子資訊可表徵索引資料的拆分結果,以及包括拆分後的每個索引子資料對應的引擎伺服器260。每個索引配置資訊或者每個索引配置子資訊用於表示相應的引擎伺服器260對應獲取並存儲哪些索引資料。則所述通知模組220可獲得索引配置資訊,並將所述索引配置資訊發送至所述主控模組210,以由所述主控模組210進一步指示相應的用戶端模組230進行索引資料的拉取。
所述主控伺服器基於所述索引配置資訊獲取索引資料,將所述索引資料存儲至至少兩個引擎伺服器中,可具體包括:所述主控模組210基於所述索引配置資訊指示第一用戶端模組230獲取索引資料;所述第一用戶端模組230為所述索引配置資訊中包括的拆分結果對應的任一用戶端模組;所述第一用戶端模組230將獲取的所述索引資料存儲至與所述第一用戶端模組230對應的引擎伺服器260中。具體的,所述主控模組210可依據任一索引配置資訊或者任一索引配置子資訊所包括的索引資料對應的引擎伺服器260,來指示所述引擎伺服器260對應的第一用戶端模組230。這樣,所述第一用戶端模組230可基於所述主控模組210的指示拉取相應的索引資料,並將拉取的索引資料存儲至所述第一用戶端模組230對應的引擎伺服器260中。
可以理解,本實施例的分散式搜索方法為索引資料的拉取更新過程,其具體可以作為離線的資料處理過程。參照第2圖所示,結合各伺服器和各模組的資料處理過程可如下:
步驟21:主控模組210從配置管理伺服器240獲得拆分規則和索引創建規則。作為一種實施方式,所述主控模組210可根據待創建的索引資料的業務類型獲得與所述業務類型相匹配的拆分規則和索引創建規則。
步驟22:所述主控模組210將所述拆分規則和索引創建規則發送至通知模組220。
步驟23:所述通知模組220將所述拆分規則和索引創建規則發送至索引創建伺服器250。
所述索引創建伺服器250可依據索引創建規則創建索引資料,以及依據拆分規則將索引資料拆分為N個索引子資料。並且,所述索引創建伺服器250可基於創建完成、且拆分後的索引資料生成多個索引配置資訊或者多個 索引配置子資訊。每個所述索引配置資訊或每個所述索引配置子資訊可表徵索引資料的拆分結果,並包括拆分後的每個索引子資料對應的引擎伺服器260,從而可表示相應的引擎伺服器260對應獲取並存儲哪些索引資料。
步驟24:索引創建伺服器250將索引配置資訊發送至所述通知模組220。
步驟25:所述通知模組220將所述索引配置資訊發送至所述主控模組210。其中,所述通知模組220的數量可以為多個。多個通知模組220可依據業務類型進行功能配置,即不同的通知模組執行相應業務類型的通知功能。這樣,主控模組210可依據業務類型獲得拆分規則和索引創建規則,並將獲得的拆分規則和索引創建規則發送至與業務類型相匹配的通知模組220。相應的,所述索引創建伺服器250可將索引配置資訊發送至與業務類型相匹配的通知模組220。可以理解的是,多個通知模組可並行工作。
步驟26:主控模組210依據索引配置資訊指示用戶端模組230。作為一種實施方式,所述主控模組210可依據多個索引配置資訊中的任一索引配置資訊或者任一索引配置子資訊所包括的索引資料對應的引擎伺服器260指示所述引擎伺服器260對應的用戶端模組230。這樣,所述用戶端模組230可基於所述主控模組210的指示拉取相應的索引資料,並將拉取的索引資料存儲至所述用戶端模組230對應的引擎伺服器260中。
採用本發明實施例的技術方案,引擎伺服器260只需要載入對應的索引資料即可,索引資料的更新功能主要通過主控伺服器(具體可以是主控伺服器中的用戶端模組)實現,可大大降低伺服器的負擔。索引資料分佈存儲在多個引擎伺服器260中,在搜索過程中可大大降低了引擎伺服器260的記憶體使用,從而可有效提升了搜索的效率,減少了搜索的回應時間,提升了用戶的操作體驗。
本發明實施例還提供了一種分佈搜索方法。第3圖為本發明另一實施例的分散式搜索方法的流程示意圖。如第3圖所示,所述方法可包括:
步驟301:多個代理伺服器中的第一代理伺服器接收到查詢伺服器的查詢請求,獲得所述查詢請求對應的屬性資訊。
步驟302:所述第一代理伺服器基於所述屬性資訊查詢配置管理伺 服器,以獲得所述屬性資訊對應的機器資訊。
步驟303:所述第一代理伺服器向所述機器資訊對應的至少兩個引擎伺服器發送所述查詢請求,以獲得所述至少兩個引擎伺服器各自根據所述查詢請求而返回的第一查詢結果。
步驟304:所述第一代理伺服器將至少兩個所述第一查詢結果按照預設規則合併為第二查詢結果。
步驟305:所述第一代理伺服器將所述第二查詢結果發送至所述查詢伺服器。
本實施例的分散式搜索方法可應用於多個代理伺服器,並且所述多個代理伺服器中的每個代理伺服器可具有相同的功能。第4圖為本發明實施例的分散式搜索方法的應用架構以及資料交互示意圖。如第4圖所示[vivien1],在本實施例中以代理伺服器的數量為兩個為例進行說明。
查詢伺服器410接收到來自用戶的終端設備的查詢請求後,可按照預設規則將所述查詢請求發送至多個代理伺服器420中的至少一個第一代理伺服器421。其中,所述預設規則可以是輪詢規則或者隨機規則等等。在實際應用中,可預先對多個代理伺服器420進行編號,所述輪詢規則可以是基於所述多個代理伺服器420的編號順序依次選擇一個或多個代理伺服器作為待發送查詢請求的第一代理伺服器。例如,以將查詢請求發送至一個代理伺服器為例,查詢伺服器410接收到第一查詢請求時,可發送所述第一查詢請求至編號為1的代理伺服器420;查詢伺服器410接收到第二查詢請求時,可發送所述第二查詢請求至編號為2的代理伺服器420,以此類推。所述第一查詢請求和所述第二查詢請求可根據資料接收時間確定。而所述隨機規則可以是將接收到的查詢請求按照預設隨機演算法發送至相對應的至少一個代理伺服器420。
所述第一代理伺服器421獲得所述查詢請求對應的屬性資訊,所述屬性資訊可以為所述查詢請求對應的業務類型,從而可基於所述業務類型向配置管理伺服器240請求機器資訊。所述配置管理伺服器240的具體介紹可參見以上,在此不再贅述。此外,基於以上描述可知,在對引擎伺服器260中的索引資料進行更新存儲時,可基於拆分規則對索引資料進行拆分。因此,屬於同一業務類型的索引資料可能存儲在至少兩個引擎伺服器260中。
基於此,本實施例中,第一代理伺服器查詢配置管理伺服器240,以獲得所述屬性資訊對應的機器資訊。其中,所述機器資訊中可包括至少兩個引擎伺服器260的標識,所述至少兩個引擎伺服器260的標識可表明所述查詢請求中對應的索引資料存儲在所述至少兩個引擎伺服器中。在具體實現過程中,所述機器資訊可通過一機器清單實現。因此,所述第一代理伺服器421可根據所述機器資訊向對應的至少兩個引擎伺服器260發送所述查詢請求,以獲得所述查詢請求中包括的關鍵字或關鍵字、關聯關鍵字或關聯關鍵字對應的索引資料。
作為一種實施方式,所述第一代理伺服器421獲得所述至少兩個引擎伺服器260返回的第一查詢結果,可包括:所述第一代理伺服器421獲得滿足預先配置的截斷參數的第一查詢結果。
具體的,所述截斷參數表示任一引擎伺服器260返回的查詢結果中的索引資料的數量。例如,若一引擎伺服器260獲得的查詢結果包括1000個索引資料,而所述截斷參數為600,則該引擎伺服器260返回所述1000個索引資料中的前600個索引資料。這樣可大大降低搜索時延以及提升每秒查詢率(QPS,Query Per Second)。其中,所述截斷參數可由配置管理伺服器240進行配置,由主控伺服器中的主控模組210獲得該截斷參數,並發送至各引擎伺服器260中進行配置。
本實施例中,所述第一代理伺服器421獲得至少兩個引擎伺服器260返回的第一查詢結果,將獲得的至少兩個第一查詢結果按照預設規則進行合併以及排序以生成第二查詢結果,並將所述第二查詢結果發送至所述查詢伺服器410,由所述查詢伺服器410發送至終端設備以輸出顯示給使用者。
可以理解為,本實施例的分散式搜索方法為搜索查詢過程,其具體可以作為線上的資料處理過程。參照第4圖所示,結合各伺服器的資料處理過程如下:
步驟41:查詢伺服器410獲得終端設備的查詢請求。
步驟42:查詢伺服器410將查詢請求發送至多個代理伺服器420中的至少一個第一代理伺服器421。其中,所述第一代理伺服器421可以是多個代理伺服器420中與查詢請求的業務類型對應的代理伺服器,也可以是基於預設規則(例如輪詢規則或者隨機規則等)確定的代理伺服器。
其中,所述查詢伺服器410可對接收到的所述查詢請求進行分析,一方面,獲得所述查詢請求中的關鍵字或關鍵字,另一方面,獲得所述關鍵字或關鍵字具有關聯關係的關聯關鍵字或關聯關鍵字,也即對所述查詢請求進行意圖識別。例如,所述查詢請求中包括的關鍵字或關鍵字為一餐廳名字,則對所述關鍵字或關鍵字進行意圖識別可獲得關聯關鍵字或關聯關鍵字為訂餐或外賣等等。再例如,所述查詢請求中包括的關鍵字或關鍵字為字串,通過意圖識別確定該字串為一中文詞語的拼音,則對應的關聯關鍵字或關聯關鍵字可以為該中文詞語等等。查詢伺服器410可進一步基於意圖識別後獲得的至少一個關鍵字生成至少一個查詢請求,並將所述至少一個查詢請求分別發送至對應的至少一個第一代理伺服器421。
步驟43:第一代理伺服器421基於所述查詢請求的屬性資訊(例如業務類型)向配置管理伺服器240請求機器列表,從而獲得所述查詢請求對應的索引資料所在的引擎伺服器260的資訊。
步驟44:所述第一代理伺服器421基於獲得的機器列表相對應的至少兩個引擎伺服器260發送查詢請求。
步驟45:所述至少兩個引擎伺服器260基於所述查詢請求中的內容載入索引資料,並向所述第一代理伺服器421返回查詢結果。其中,所述引擎伺服器260可基於預先配置的截斷參數控制查詢結果中的索引資料的數量,從而減少查詢延時以及提升QPS。
步驟46:所述第一代理伺服器421將獲得的至少兩個查詢結果按照預設規則進行合併以及排序以生成最終查詢結果,將所述最終查詢結果發送至所述查詢伺服器410。
步驟47:所述查詢伺服器410將所述最終查詢結果發送至終端設備,以供終端設備輸出顯示給使用者。
通過利用多個代理伺服器420聯結查詢伺服器410和引擎伺服器260的架構,查詢伺服器410的查詢請求可發送至對應的至少一個代理伺服器420,由至少一個代理伺服器420從相應的至少兩個引擎伺服器260中獲得查詢結果。其中,多個代理伺服器420可具有相同的功能,多個代理伺服器420相互之間可具有並行關係。這樣,一個代理伺服器420無法工作還可通過其他代理伺服器420工作,可有效避免了主設備無法工作時因需要重新選擇主設備而 導致短時間內搜索服務不可用的問題。並且,由於代理伺服器420無需承擔索引的更新維護,大大降低了代理伺服器420的負擔。
本發明實施例還提供了一種分佈搜索系統,所述分佈搜索系統具體可參照第4圖和第2圖所示,所述系統可包括配置管理伺服器240、查詢伺服器410、多個代理伺服器420和多個引擎伺服器260。
其中,所述配置管理伺服器240可用於管理配置資訊和機器資訊。所述配置資訊可包括拆分規則。所述機器資訊可表徵所述多個引擎伺服器的資訊。
所述代理伺服器420可用於在接收到所述查詢伺服器410發送的查詢請求時獲得所述查詢請求對應的屬性資訊,並基於所述屬性資訊查詢所述配置管理伺服器240,以獲得所述屬性資訊對應的機器資訊,從而可向所述機器資訊對應的至少兩個引擎伺服器260發送所述查詢請求。並且,在獲得所述至少兩個引擎伺服器260返回的第一查詢結果後,代理伺服器420可將至少兩個第一查詢結果按照預設規則合併為第二查詢結果,並將所述第二查詢結果發送至所述查詢伺服器410。
所述查詢伺服器410可用於在獲得終端設備的查詢請求時將所述查詢請求發送至所述代理伺服器420,並在收到所述第二查詢結果時將所述第二查詢結果發送至所述終端設備。
所述多個引擎伺服器260中的每個引擎伺服器可用於存儲滿足所述拆分規則的索引資料,並在收到所述查詢請求時回復所述第一查詢結果。
本實施例中,所述系統還可包括主控伺服器和索引創建伺服器250。其中,所述主控伺服器可用於從所述配置管理伺服器240獲得拆分規則,並發送所述拆分規則至索引創建伺服器250。此外,主控伺服器還可用於獲得所述索引創建伺服器250發送的表徵拆分結果的索引配置資訊,基於所述索引配置資訊獲取索引資料,並將所述索引資料存儲至多個引擎伺服器260中對應的至少兩個第一引擎伺服器中。所述索引創建伺服器250可用於基於所述拆分規則將待創建的索引資料進行拆分,並將表徵拆分結果的索引配置資訊發送至所述主控伺服器。
作為一種實施方式,所述代理伺服器420可獲得滿足預先配置的 截斷參數的查詢結果。
本發明實施例的分佈搜索系統,通過多個代理伺服器聯結主控伺服器、配置管理伺服器、索引創建伺服器、查詢伺服器和引擎伺服器的分佈搜索架構,將查詢功能以及索引更新維護功能分別通過代理伺服器以及主控伺服器實現,可大大提升了分散式搜索系統的可擴展性以及系統的穩定性。在實際應用中,通過線上以單個索引統計,前50%時間查詢延時減少50%,前90%時間查詢延時減少54.5%,前99%時間查詢延時減少46%,提高了用戶體驗。
本發明實施例還提供了一種代理伺服器。如第5圖為本發明實施例的代理伺服器的組成結構示意圖,如第5圖所示,所述代理伺服器可包括通訊單元51和處理單元52。
其中,所述通訊單元51可用於接收來自查詢伺服器的查詢請求,並將所述查詢請求發送至所述處理單元52。通訊單元51還可用于向所述處理單元52確定的至少兩個引擎伺服器發送所述查詢請求,獲得所述至少兩個引擎伺服器返回的第一查詢結果,並將所述處理單元52合併的第二查詢結果發送至所述查詢伺服器。
所述處理單元52可用於獲得所述查詢請求對應的屬性資訊,並基於獲得的屬性資訊查詢配置管理伺服器,以獲得所述屬性資訊對應的所述至少兩個引擎伺服器。所述處理單元52還可將至少兩個由所述通訊單元51獲得的所述第一查詢結果按照預設規則合併得到第二查詢結果。
作為一種實施方式,所述通訊單元51可獲得滿足預先配置的截斷參數的查詢結果。
所述代理伺服器中的處理單元52可由所述代理伺服器中的中央處理器(CPU,Central Processing Unit)、數位訊號處理器(DSP,Digital Signal Processor)、微控制單元(MCU,Microcontroller Unit)或可程式設計閘陣列(FPGA,Field-Programmable Gate Array)實現。所述代理伺服器中的通訊單元51可通過通信模組(包含:基礎通信套件、作業系統、通信模組、標準化介面和協定等)及收發天線實現。
本發明實施例還提供了一種主控伺服器。第6圖為本發明實施例的主控伺服器的組成結構示意圖,如第6圖所示,所述主控伺服器可包括主控 模組61和通知模組62。
其中,所述主控模組61可用於從配置管理伺服器獲得拆分規則,並發送所述拆分規則至所述通知模組62。所述主控模組61還可基於所述通知模組62發送的索引配置資訊獲取索引資料,並將所述索引資料存儲至多個引擎伺服器中對應的至少兩個引擎伺服器中。
所述通知模組62可用於發送所述拆分規則至索引創建伺服器,以使所述索引創建伺服器根據所述拆分規則將待創建的索引資料進行拆分。此外,通知模組62還可獲得表徵拆分結果的索引配置資訊,並發送所述索引配置資訊至所述主控模組61。
本實施例中,所述主控伺服器還可包括多個用戶端模組63。所述多個用戶端模組63可與多個引擎伺服器一一對應。其中,所述主控模組61可基於所述通知模組62發送的索引配置資訊,指示所述索引配置資訊中包括的拆分結果對應的用戶端模組63獲取索引資料。在實際應用中,所述主控模組61可包括:第一通信子模組,用以與所述配置管理伺服器通信,以從所述配置管理伺服器獲得所述拆分規則;第二通信子模組,用以與所述通知模組62通信,以向所述通知模組62發送所述拆分規則並從所述通知模組62獲取所述索引配置資訊;以及第三通信子模組,用以與用戶端模組63通信,以指示所述用戶端模組63基於所述索引配置資訊獲取所述索引資料。
所述通知模組62可用於發送所述拆分規則至索引創建伺服器,並在獲得表徵拆分結果的索引配置資訊後發送所述索引配置資訊至所述主控模組61。在實際應用中,所述通知模組62可包括:第一通信模組,用以與所述主控模組61通信,以從所述主控模組61獲得所述拆分規則並向所述主控模組61發送所述索引配置資訊;以及,第二通信模組,用以與所述索引創建伺服器通信,以向所述索引創建伺服器發送所述拆分規則並從所述索引創建伺服器獲得所述索引配置資訊。
所述用戶端模組63可基於所述主控模組61的指示獲取索引資料,並將所述索引資料存儲至對應的引擎伺服器中。在實際應用中,所述用戶端模組63可包括:第一通信子模組,用以與所述主控模組61,以接受所述主控模組61的指示;處理模組,用於回應於所述主控模組61的指示基於所述索引配置資訊獲取索引資料;以及,第二通信子模組,用以與所述引擎伺服器通信, 以將所述索引資料存儲至對應的引擎伺服器中。
本實施例中,所述主控伺服器可以是伺服器集群。所述主控模組61主要負責統一調度。所述通知模組62主要負責與索引創建伺服器通信。所述通知模組62的數量可以是至少一個。至少一個通知模組62可基於業務類型的不同進行區分,例如每個通知模組62用於通知屬於相應業務類型的索引創建的相關資訊。所述用戶端模組63的數量可與引擎伺服器的數量相同,且每個用戶端模組63對應一個引擎伺服器。所述用戶端模組63可用於根據主控模組61的指示拉取索引資料,並將拉取的索引資料存儲至對應的引擎伺服器中。所述主控模組61、每個通知模組62可通過獨立的伺服器實現。所述用戶端模組63可位於對應的引擎伺服器中,並通過對應的引擎伺服器實現相應功能。在實際應用中,所述主控模組61可配置備用主控模組;每個通知模組62也可配置對應的備用通知模組。每個用戶端模組63也可配置對應的備用用戶端模組63。這樣,主模組出現異常無法工作時,可通過相應的備用模組繼續執行相應的功能。
本發明實施例還提供了一種電腦設備,第7圖為本發明實施例的電腦設備的組成結構示意圖,如第7圖所示。所述電腦設備可包括處理器71、記憶體72以及至少一個外部通信介面73。所述處理器71、記憶體72以及外部通信介面73均可通過匯流排74連接。所述記憶體72中存儲有可在處理器71上運行的電腦程式。
其中,在所述電腦設備作為代理伺服器時,所述處理器71執行所述程式時實現以下步驟:接收來自查詢伺服器的查詢請求;獲得所述查詢請求對應的屬性資訊;基於所述屬性資訊查詢配置管理伺服器,獲得所述屬性資訊對應的機器資訊;向所述機器資訊對應的至少兩個引擎伺服器發送所述查詢請求;獲得所述至少兩個引擎伺服器根據所述查詢請求返回的第一查詢結果;將至少兩個所述第一查詢結果按照預設規則合併為第二查詢結果;以及,將所述第二查詢結果發送至所述查詢伺服器。換言之,處理器71可通過執行程式實現第5圖所示代理伺服器中的通訊單元51和處理單元52的具體功能。
作為一種實施方式,所述處理器71執行所述程式時實現以下步驟:獲得滿足預先配置的截斷參數的查詢結果。
在電腦設備作為主控伺服器時,所述處理器71執行所述程式時實現以下步驟:從配置管理伺服器獲得拆分規則;發送所述拆分規則至索引創建 伺服器,以使索引創建伺服器根據所述拆分規則將待創建的索引資料進行拆分;獲得表徵拆分結果的索引配置資訊;基於所述索引配置資訊獲取索引資料;以及,將所述索引資料存儲至多個引擎伺服器中相對應的至少兩個第一引擎伺服器中。換言之,處理器71可通過執行程式實現第6圖所示主控伺服器中的主控模組61、通知模組62和用戶端模組63的具體功能。
這裡需要指出的是:以上涉及電腦設備的描述,與上述方法描述是類似的,同方法的有益效果描述,不做贅述。對於本發明電腦設備實施例中未披露的技術細節,請參照本發明方法實施例的描述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現。以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,如:多個單元或元件可以結合,或可以集成到另一個系統,或一些特徵可以忽略,或不執行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些介面,設備或單元的間接耦合或通信連接,可以是電性的、機械的或其它形式的。
上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元,即可以位於一個地方,也可以分佈到多個網路單元上;可以根據實際的需要選擇其中的部分或全部單元來實現本實施例方案的目的。例如前面所述的各種伺服器,可以是物理上的一台硬體機器,也可以是運行于伺服器集群中的一個軟體模組。
另外,在本發明各實施例中的各功能單元可以全部集成在一個處理單元中,也可以是各單元分別單獨作為一個單元,也可以兩個或兩個以上單元集成在一個單元中;上述集成的單元既可以採用硬體的形式實現,也可以採用硬體加軟體功能單元的形式實現。
本領域普通技術人員可以理解:實現上述方法實施例的全部或部分步驟可以通過程式指令相關的硬體來完成,前述的程式可以存儲於一電腦可讀取存儲介質中,該程式在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括:移動存放裝置、唯讀記憶體(ROM,Read-Only Memory)、隨機存取記憶體(RAM,Random Access Memory)、磁碟或者光碟等各種可以存儲程式碼的介質。
或者,本發明上述集成的單元如果以軟體功能模組的形式實現並作為獨立的產品銷售或使用時,也可以存儲在一個電腦可讀取存儲介質中。基於這樣的理解,本發明實施例的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品存儲在一個存儲介質中,包括若干指令用以使得一台電腦設備(可以是個人電腦、伺服器、或者網路設備等)執行本發明各個實施例所述方法的全部或部分。而前述的存儲介質包括:移動存放裝置、ROM、RAM、磁碟或者光碟等各種可以存儲程式碼的介質。
以上所述,僅為本發明的具體實施方式,但本發明的保護範圍並不局限於此,任何熟悉本技術領域的技術人員在本發明揭露的技術範圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護範圍之內。因此,本發明的保護範圍應以所述權利要求的保護範圍為准。
101、102、103、104‧‧‧步驟
Claims (15)
- 一種分散式搜索方法,包括:多個代理伺服器中的至少一個第一代理伺服器在接收到來自查詢伺服器的查詢請求時,獲得所述查詢請求對應的屬性資訊,所述屬性資訊為所述查詢請求對應的業務類型,所述多個代理服務器具有相同的功能或所述多個代理伺服器相互之間具有並行關係;所述第一代理伺服器基於所述屬性資訊查詢配置管理伺服器,以獲得所述屬性資訊對應的機器資訊,其中,所述配置管理伺服器用於管理所述機器資訊和配置資訊,所述配置資訊包括拆分規則;所述第一代理伺服器向所述機器資訊對應的至少兩個引擎伺服器發送所述查詢請求,其中,所述引擎伺服器中的每個引擎伺服器用於存儲滿足所述拆分規則的索引資料;所述第一代理伺服器獲得所述至少兩個引擎伺服器根據所述查詢請求而返回的第一查詢結果;所述第一代理伺服器將至少兩個所述第一查詢結果按照預設規則合併為第二查詢結果;以及所述第一代理伺服器將所述第二查詢結果發送至所述查詢伺服器。
- 如請求項1所述的方法,其特徵在於,獲得所述至少兩個引擎伺服器根據所述查詢請求而返回的所述第一查詢結果,包括:所述第一代理伺服器獲得滿足預先配置的截斷參數的所述第一查詢結果。
- 如請求項1所述的方法,其特徵在於,還包括:從所述多個代理伺服器中選擇至少一個業務類型與所述查詢請求匹配的代理伺服器作為所述第一代理伺服器。
- 如請求項1所述的方法,其特徵在於,還包括:按預設規則從所述代理伺服器中選擇至少之一作為所述第一代理伺服器,其中,所述預設規則包括隨機規則和輪詢規則。
- 一種索引更新方法,包括:主控伺服器依據業務類型從配置管理伺服器獲得拆分規則,其中,所述配置管理伺服器用於管理包括所述拆分規則的配置資訊和機器資訊,所述機器資訊用於表徵引擎伺服器的資訊; 所述主控伺服器發送所述拆分規則至索引創建伺服器,以使所述索引創建伺服器根據所述拆分規則將待創建的索引資料進行拆分;所述主控伺服器獲得表徵所述拆分的結果的索引配置資訊;所述主控伺服器基於所述索引配置資訊獲取索引資料;所述主控伺服器將所述索引資料存儲至多個引擎伺服器中對應的至少兩個引擎伺服器中。
- 一種代理伺服器,包括:通訊單元,用於接收來自查詢伺服器的查詢請求;處理單元,用於獲得所述查詢請求對應的屬性資訊,所述屬性資訊為所述查詢請求對應的業務類型,基於所述屬性資訊查詢配置管理伺服器以獲得所述屬性資訊對應的機器資訊,並確定所述機器資訊對應的至少兩個引擎伺服器,其中,所述配置管理伺服器用於管理所述機器資訊和配置資訊,所述配置資訊包括拆分規則,其中,所述通訊單元還用於向所述至少兩個引擎伺服器發送所述查詢請求,以獲得所述至少兩個引擎伺服器根據所述查詢請求而返回的第一查詢結果,其中,所述引擎伺服器中的每個引擎伺服器用於存儲滿足所述拆分規則的索引資料;所述處理單元還用於將至少兩個所述第一查詢結果按照預設規則進行合併,得到第二查詢結果;以及所述通訊單元還用於將所述第二查詢結果發送至所述查詢伺服器。
- 一種主控伺服器,包括:主控模組,用於依據業務類型從配置管理伺服器獲得拆分規則,其中,所述配置管理伺服器用於管理包括所述拆分規則的配置資訊和機器資訊,所述機器資訊用於表徵引擎伺服器的資訊;通知模組,用於發送所述拆分規則至索引創建伺服器,以使所述索引創建伺服器根據所述拆分規則將待創建的索引資料進行拆分,並獲得表徵所述拆分的結果的索引配置資訊,其中,所述主控模組還用於基於所述索引配置資訊獲取索引資料,並將所述索引資料存儲至多個引擎伺服器中對應的至少兩個引擎伺服器中。
- 如請求項7所述的主控伺服器,其特徵在於,所述主控伺服器還包括多個用戶端模組;所述多個用戶端模組與多個引擎伺服器一一對應;其中, 所述主控模組基於所述索引配置資訊指示第一用戶端模組獲取第一索引資料,其中,所述第一用戶端模組為所述多個用戶端模組中與所述索引配置資訊包括的第一拆分結果對應的用戶端模組;所述第一用戶端模組基於所述主控模組的指示獲取索引資料,並將所述索引資料存儲至對應的引擎伺服器中。
- 一種分散式搜索系統,包括:配置管理伺服器,用於管理配置資訊和機器資訊,所述配置資訊包括拆分規則,所述機器資訊表徵所述多個引擎伺服器的資訊;查詢伺服器,用於獲得終端設備的查詢請求;多個代理伺服器,所述多個代理服務器具有相同的功能或所述多個代理伺服器相互之間具有並行關係;以及多個引擎伺服器,所述多個引擎伺服器中的每個引擎伺服器用於存儲滿足所述拆分規則的索引資料,其中,所述多個代理伺服器中的至少一個第一代理伺服器接收到來自所述查詢伺服器的所述查詢請求後,通過基於所述查詢請求的屬性資訊查詢所述配置管理伺服器,確定所述多個引擎伺服器中的至少兩個第一引擎伺服器,並向所述至少兩個第一引擎伺服器發送所述查詢請求;所述至少兩個第一引擎伺服器各自回應於收到所述查詢請求回復第一查詢結果;所述至少一個第一代理伺服器將至少兩個所述第一查詢結果合併為第二查詢結果,並發送至所述查詢伺服器,以由所述查詢伺服器將所述第二查詢結果返回至所述終端設備。
- 如請求項9所述的系統,其特徵在於,所述系統還包括:主控伺服器,用於從所述配置管理伺服器獲得所述拆分規則;索引創建伺服器,用於基於所述主控伺服器發送的所述拆分規則將待創建的索引資料進行拆分,並將表徵所述拆分的結果的索引配置資訊發送至所述主控伺服器,其中,所述主控伺服器基於所述索引配置資訊獲取索引資料,並將所述索引資料存儲至所述多個引擎伺服器中對應的至少兩個引擎伺服器中。
- 如請求項9所述的系統,其特徵在於,所述第一引擎伺服器基於預先配置的截斷參數向所述第一代理伺服器回復所述第一查詢結果。
- 如請求項9所述的系統,其特徵在於,所述查詢伺服器向所述多個代理伺服器中業務類型與所述查詢請求的業務類型匹配的所述第一代理伺服器發送所述查詢請求。
- 如請求項9所述的系統,其特徵在於,所述查詢伺服器按照預設的規則從所述代理伺服器中選擇至少之一作為所述第一代理伺服器,並向所述第一代理伺服器發送所述查詢請求。
- 一種電腦設備,包括記憶體、處理器及存儲在記憶體上並可在處理器上運行的電腦程式,其特徵在於,所述處理器執行所述程式時實現申請專利範圍第1項至4項任一項所述分散式搜索的步驟。
- 一種電腦設備,包括記憶體、處理器及存儲在記憶體上並可在處理器上運行的電腦程式,其特徵在於,所述處理器執行所述程式時實現申請專利範圍第5項所述索引更新方法的步驟。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
??201710540135.0 | 2017-07-05 | ||
CN201710540135.0 | 2017-07-05 | ||
CN201710540135.0A CN107273540B (zh) | 2017-07-05 | 2017-07-05 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201907324A TW201907324A (zh) | 2019-02-16 |
TWI740029B true TWI740029B (zh) | 2021-09-21 |
Family
ID=60071122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107111376A TWI740029B (zh) | 2017-07-05 | 2018-03-30 | 分散式搜索及索引更新方法、系統、伺服器及電腦設備 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20200210496A1 (zh) |
JP (1) | JP6967615B2 (zh) |
CN (1) | CN107273540B (zh) |
CA (2) | CA3184577A1 (zh) |
TW (1) | TWI740029B (zh) |
WO (1) | WO2019007010A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273540B (zh) * | 2017-07-05 | 2021-09-24 | 北京三快在线科技有限公司 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
CN109255072B (zh) * | 2018-08-15 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 信息召回方法及装置、计算机存储介质、电子设备 |
CN109409924B (zh) * | 2018-09-03 | 2023-04-18 | 平安科技(深圳)有限公司 | 账户评分系统、方法、服务器和计算机可读存储介质 |
CN109918472A (zh) * | 2019-02-27 | 2019-06-21 | 北京百度网讯科技有限公司 | 存储和查询数据的方法、装置、设备和介质 |
CN111752939A (zh) * | 2019-03-28 | 2020-10-09 | 北京京东尚科信息技术有限公司 | 用于多个系统的数据处理方法、装置、计算机系统、介质 |
CN111405039A (zh) * | 2020-03-16 | 2020-07-10 | 深圳市网心科技有限公司 | 一种数据透传方法、装置、系统和客户端及服务器 |
CN111417119A (zh) * | 2020-03-16 | 2020-07-14 | 纳瓦电子(上海)有限公司 | 无线级联的方法 |
CN111858585A (zh) * | 2020-06-30 | 2020-10-30 | 深圳幂度信息科技有限公司 | 区块链策略处理装置、计算机可读存储介质及终端设备 |
CN111931033A (zh) * | 2020-08-11 | 2020-11-13 | 深圳市欢太科技有限公司 | 一种检索方法、检索装置及服务器 |
CN113761079A (zh) * | 2021-01-21 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据访问方法、系统和存储介质 |
CN113438304B (zh) * | 2021-06-23 | 2023-04-07 | 平安消费金融有限公司 | 基于数据库集群的数据查询方法、装置、服务器及介质 |
CN113535730A (zh) * | 2021-07-21 | 2021-10-22 | 挂号网(杭州)科技有限公司 | 搜索引擎的索引更新方法及系统、电子设备、存储介质 |
CN113641796A (zh) * | 2021-08-30 | 2021-11-12 | 平安医疗健康管理股份有限公司 | 数据搜索方法、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101950300A (zh) * | 2010-09-20 | 2011-01-19 | 华南理工大学 | 一种分层结构、分布式搜索引擎系统及其实现方法 |
CN102033912A (zh) * | 2010-11-25 | 2011-04-27 | 北京北纬点易信息技术有限公司 | 一种分布式数据库访问方法及系统 |
CN105187551A (zh) * | 2015-09-29 | 2015-12-23 | 成都四象联创科技有限公司 | 基于云平台的分布式计算方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1305271C (zh) * | 2004-04-29 | 2007-03-14 | 上海交通大学 | 基于代理映射的网络安全隔离与信息交换系统及方法 |
US8880489B2 (en) * | 2005-08-04 | 2014-11-04 | Hewlett-Packard Development Company, L.P. | Discovery across multiple registries |
CN102375853A (zh) * | 2010-08-24 | 2012-03-14 | 中国移动通信集团公司 | 分布式数据库系统、在其中建立索引的方法和查询方法 |
US9774676B2 (en) * | 2012-05-21 | 2017-09-26 | Google Inc. | Storing and moving data in a distributed storage system |
US10956667B2 (en) * | 2013-01-07 | 2021-03-23 | Google Llc | Operational transformations proxy for thin clients |
CN104978337A (zh) * | 2014-04-08 | 2015-10-14 | 张军 | 一种基于软件定义网络的分布式视频搜索引擎框架 |
CN105320527A (zh) * | 2014-06-12 | 2016-02-10 | 中兴通讯股份有限公司 | 基于zookeeper分布式搜索引擎的配置文件更新方法、装置及系统 |
WO2016183539A1 (en) * | 2015-05-14 | 2016-11-17 | Walleye Software, LLC | Data partitioning and ordering |
CN105978948B (zh) * | 2016-04-27 | 2019-05-24 | 努比亚技术有限公司 | 一种云服务的方法和系统 |
CN106776694A (zh) * | 2016-11-11 | 2017-05-31 | 张军 | 一种基于软件定义的网络分布式图片搜索引擎框架 |
CN107273540B (zh) * | 2017-07-05 | 2021-09-24 | 北京三快在线科技有限公司 | 分布式搜索及索引更新方法、系统、服务器及计算机设备 |
-
2017
- 2017-07-05 CN CN201710540135.0A patent/CN107273540B/zh active Active
- 2017-12-29 CA CA3184577A patent/CA3184577A1/en active Pending
- 2017-12-29 US US16/622,298 patent/US20200210496A1/en not_active Abandoned
- 2017-12-29 JP JP2019568703A patent/JP6967615B2/ja active Active
- 2017-12-29 WO PCT/CN2017/120018 patent/WO2019007010A1/zh active Application Filing
- 2017-12-29 CA CA3065118A patent/CA3065118C/en active Active
-
2018
- 2018-03-30 TW TW107111376A patent/TWI740029B/zh not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101950300A (zh) * | 2010-09-20 | 2011-01-19 | 华南理工大学 | 一种分层结构、分布式搜索引擎系统及其实现方法 |
CN102033912A (zh) * | 2010-11-25 | 2011-04-27 | 北京北纬点易信息技术有限公司 | 一种分布式数据库访问方法及系统 |
CN105187551A (zh) * | 2015-09-29 | 2015-12-23 | 成都四象联创科技有限公司 | 基于云平台的分布式计算方法 |
Also Published As
Publication number | Publication date |
---|---|
CA3065118A1 (en) | 2019-01-10 |
JP2020523700A (ja) | 2020-08-06 |
JP6967615B2 (ja) | 2021-11-17 |
TW201907324A (zh) | 2019-02-16 |
CA3065118C (en) | 2024-03-26 |
CN107273540A (zh) | 2017-10-20 |
WO2019007010A1 (zh) | 2019-01-10 |
CA3184577A1 (en) | 2019-01-10 |
US20200210496A1 (en) | 2020-07-02 |
CN107273540B (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI740029B (zh) | 分散式搜索及索引更新方法、系統、伺服器及電腦設備 | |
CN109639750B (zh) | 业务数据处理方法及设备 | |
CN107277086B (zh) | 业务处理系统、业务处理方法以及业务更新方法 | |
JP2012038152A (ja) | 接続管理システム、及びシンクライアントシステムにおける接続管理サーバの連携方法 | |
US10146814B1 (en) | Recommending provisioned throughput capacity for generating a secondary index for an online table | |
EP2564306A1 (en) | System and methods for mapping and searching objects in multidimensional space | |
WO2012103920A1 (en) | Distributed database | |
CN105208090A (zh) | 一种基于Zookeeper实现Leader选举的方法 | |
CN111125050B (zh) | 一种openstack环境下基于CephFS提供NFS协议的文件存储方法 | |
US10715608B2 (en) | Automatic server cluster discovery | |
CN102868550A (zh) | 全网流量调度器及使用该调度器查询域名解析记录的方法 | |
CN108206776B (zh) | 一种群组历史消息的查询方法和装置 | |
EP3803625A1 (en) | Frequent pattern analysis for distributed systems | |
WO2020094064A1 (zh) | 性能优化方法、装置、设备及计算机可读存储介质 | |
CN105471700A (zh) | 一种消息处理的方法、装置和系统 | |
CN111314394B (zh) | 物联网的资源发布方法、装置、设备及存储介质 | |
CN112148925A (zh) | 用户标识关联查询方法、装置、设备及可读存储介质 | |
JP2011134005A (ja) | 構成情報管理装置、分散情報管理システム、分散情報管理方法および分散情報管理プログラム | |
CN111489817A (zh) | 一种实现设备数据采集的区块链通讯模组 | |
CN110602198B (zh) | 一种客户端网络请求链接配置方法和系统 | |
US20240179059A1 (en) | Systems and Methods for Storing and Transporting Configuration Data to Edge Servers | |
CN117527514A (zh) | 数据告警方法、装置、电子设备及存储介质 | |
EP4193272A1 (en) | Improved database management systems and methods using data normalization and defragmentation techniques | |
CN116955790A (zh) | 一种粗排处理的方法、装置、设备、存储介质及程序产品 | |
CN118796910A (zh) | 数据查询方法、装置、电子设备、存储介质及产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |