搜尋引擎的體系架構

來源:互聯網
上載者:User
參考文獻:http://www.stlchina.org/twiki/bin/view.pl/Main/SEStructSys

搜尋引擎的實現原理,可以看作四步:從互連網上抓取網頁→建立索引資料庫→在索引資料庫中搜尋→對搜尋結果進行處理和排序。

從互連網上抓取網頁. 利用能夠從互連網上自動收集網頁的網路蜘蛛程式,自動訪問互連網,並沿著任何網頁中的所有URL爬到其它網頁,重複這過程,並把爬過的所有網頁收集到伺服器中。

建立索引資料庫 . 由索引系統程式對收集回來的網頁進行分析,提取相關網頁資訊(包括網頁所在URL、編碼類別型、頁面內容包含的關鍵詞、關鍵詞位置、產生時間、大小、與其它 網頁的連結關係等),根據一定的相關度演算法進行大量複雜計算,得到每一個網頁針對頁面內容中及超鏈中每一個關鍵詞的相關度(或重要性),然後用這些相關信 息建立網頁索引資料庫。

在索引資料庫中搜尋 . 當使用者輸入關鍵詞搜尋後,分解搜尋請求,由搜尋系統程式從網頁索引資料庫中找到符合該關鍵詞的所有相關網頁。

對搜尋結果進行處理排序 . 所有相關網頁針對該關鍵詞的相關資訊在索引庫中都有記錄,只需綜合相關資訊和網頁層級形成相關度數值,然後進行排序,相關度越高,排名越靠前。最後由頁面產生系統將搜尋結果的連結地址和頁面內容摘要等內容組織起來返回給使用者。 是一個典型的搜尋引擎系統架構圖,搜尋引擎的各部分都會相互交錯相互依賴。其處理流程按照如下描述:

“網路蜘蛛”從互連網上抓取網頁,把網頁送入“網頁資料庫”,從網頁中“提取URL”,把URL送入“URL資料庫”,“蜘蛛控制”得到網頁的URL,控制“網路蜘蛛”抓取其它網頁,反覆迴圈直到把所有的網頁抓取完成。 系統從“網頁資料庫”中得到文本資訊,送入“文本索引”模組建立索引,形成“索引資料庫”。同時進行“連結資訊提取”,把連結資訊(包括錨文本、連結本身等資訊)送入“連結資料庫”,為“網頁評級”提供依據。 “使用者”通過提交查詢請求給“查詢服務器”,伺服器在“索引資料庫”中進行相關網頁的尋找,同時“網頁評級”把查詢請求和連結資訊結合起來對搜尋結果進行相關度的評價,通過“查詢服務器”按照相關度進行排序,並提取關鍵詞的內容摘要,組織最後的頁面返回給“使用者”。

搜尋的處理過程是對使用者的搜尋請求進行滿足的過程,通過使用者輸入搜尋索引鍵,搜尋伺服器對應關鍵詞字典,把搜尋關鍵詞轉化為wordID,然後在標引庫中 得到docID列表,對docID列表進行掃描和wordID的匹配,提取滿足條件的網頁,然後計算網頁和關鍵詞的相關度,根據相關度的數值返回前K篇結 果(不同的搜尋引擎每頁的搜尋結果數不同)返回給使用者。如果使用者查看的第二頁或者第多少頁,重新進行搜尋,把排序結果中在第K+1到2*K的網頁組織返回 給使用者。其處理流程如所示:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.