本站小編為你精心準備了分布式檢索系統部署結構設計研究參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
摘要:針對分布式檢索的典型需求,作者設計并實現了一種基于SOAP的分布式檢索系統。給出了對等型結構下的分布式部署結構設計,進一步實現了一種基于數據交換區的部署結構設計,極大提高了分布式條件下的檢索效率。
關鍵詞:SOAP;分布式檢索;數據交換區;本地副本
1概述
分布式檢索系統的實現往往比較復雜。區別于集中式檢索,分布式檢索是將檢索請求提交給網絡上的多個主機,由位于這些主機上的檢索程序分別獨立檢索并將檢索結果返回的過程。在實現分布式檢索系統時,不可避免的要面對現有信息資源所在平臺的多樣性和數據的異構性等棘手的問題。為了提高分布式檢索的性能,解決分布式條件信息資源集成困難的問題,作者設計并實現了一種基于Web服務的分布式檢索系統。系統設計的基本思路是:將各服務器端的檢索程序封裝為Web服務,由客戶端的各類用戶界面通過SOAP協議向多個Web服務器發出檢索請求,并接收服務器端返回的檢索結果。系統的運行效果也依賴于系統的部署結構設計。在系統實現的過程中,作者針對實際情況實現了兩種分布式檢索部署結構的設計,取得良好的應用效果。
2完全分布式檢索結構設計
在完全分布式(即對等型)檢索結構中,每臺服務器都獨立地管理檢索系統和數據存儲系統,每臺服務器之間處于對等的關系,每臺服務器的檢索系統僅對本地的數據存儲系統建立索引并提供相應的信息檢索服務。完全分布式檢索結構,如圖1所示。在上述結構中,需要設計一種使用XML或JSON配置文檔的方式來存儲服務器訪問路由表,只需要保存服務器的IP地址和調用SOAP服務的路徑信息即可。這種結構下,分布式檢索的處理流程如下:(1)用戶通過客戶端程序向服務器提出一個檢索請求。(2)請求服務器的SOAP請求將檢索請求進行SOAP封裝(即封裝為以XML-HTTP協議格式)。(3)請求服務器查詢服務器訪問路由表,獲取遠程訪問的地址和路徑信息。(4)將請求發送到系統的所有服務器或指定服務器。(5)收到檢索請求的服務器,執行SOAP服務,SOAP服務一般只需要對本地服務器的信息進行檢索,將檢索結果以SOAP消息格式進行封裝,然同步或異步返回給SOAP請求。(6)SOAP請求同步接收并解析返回結果,然后合并整理從每臺服務器返回的檢索結果而形成最終檢索結果,返回給用戶;如果是異步接收返回結果,需要調用相應的回調函數,將結果呈現給用戶。
3非對等型分布式檢索結構設計
完全分布式檢索系統在很大程度上只是一種理想的情況,往往不能滿足實際需要。現實中的大型網絡結構往往是非對等型的。在規劃分布式檢索系統的實現時,必須考慮數據檢索頻率以及網絡效率的因素,采用合適的網絡拓撲結構。采用什么樣的網絡拓撲結構能夠使檢索效率最高、費用最省,是實現分布式檢索系統時必須認真考慮的問題。在大型網絡系統中,數據訪問主要分為本地訪問和遠程訪問兩種。一般來講,受制于網絡帶寬及響應速度的限制,本地訪問速度要大大快于遠程訪問的速度。但若將全部數據存放在本地訪問,帶寬資源耗費、網絡間復制、通訊量及各服務器建設的硬件投入成本、服務器空間負載都將成倍增加,不符合經濟性原則,也無法體現網絡互聯產生的優勢,同時為管理維護造成巨大負擔。因此,對數據內容進行合理劃分是很有必要的。可以根據對數據檢索的不同頻次來對訪問類型進行劃分:對于訪問頻次高的數據存放在本地服務器,以減少網絡負載及檢索時間;對于訪問頻次低的數據,遠程直接連接進行檢索,以減少本地服務器負載,提高系統管理性。建立本地副本,是提升信息檢索效率的一種可行且有效的手段。一般可以根據用戶查詢頻率、熱點問題關鍵字等,將一部分頻繁訪問的文檔復制到數據交換服務區。本系統中,對于用戶對若干臺遠程服務器的訪問頻次非常高的情況,可以基于數據復制,建立一個數據交換區,來實現分布式檢索的效率優化。如圖2所示。請求服務器和數據交換區服務器位于同一個網絡域中,可以實現快速、高效的連接。通過遠程服務器到數據交換區的定時數據庫復制,數據交換區將多個遠程服務器的數據保存為多個副本。數據交換區服務器可以對這些副本建立索引,以提高檢索效率。在請求服務器的訪問路由表中,將遠程服務器的地址統一設置為數據交換區服務器的地址,并將這些遠程服務器的SOAP服務的路徑設置為數據交換區服務器的SOAP服務的路徑。對遠程服務器上的數據進行檢索時,不必將SOAP請求消息發送到各個遠程服務器,只需要發送到數據交換區服務器即可,數據交換區服務器上運行的SOAP服務負責接收并解析原本需要發向遠程服務器的檢索請求消息,啟動對遠程服務器數據副本的檢索,并將檢索結果以SOAP消息的形式返回給請求服務器的SOAP請求。數據交換區需要遠程服務器定時向其進行數據復制,才能保證副本是最新數據。當遠程服務器的數據更新頻率比較低,而對這些服務器的檢索請求頻次非常高的情況下,這種基于數據交換區的結構設計非常實用。當請求服務器處理用戶大量的遠程檢索請求時,不需要頻繁地與遠程服務器進行連接,可以大大地提高檢索的效率。而對于訪問頻次不高的遠程服務器,可以采用直接連接遠程服務器進行信息檢索。
4結束語
除了提供強大、靈活的檢索功能之外,作者基于Web服務技術實現的分布式檢索系統,可以用于對等型結構下的分布式檢索,進一步實現了一種基于數據交換區的非對等型檢索部署結構設計,極大提高了檢索效率。進一步的工作是,研究數據交換區的更新策略,以及檢索算法的優化等。
參考文獻:
[1]孫偉,呂強.基于文檔副本局部性的分布式檢索算法研究[J].計算機應用研究,2016(1):108-110,114.
作者:崔天鑫 單位:中國兵器工業信息中心