搜索引擎的工作原理
搜索引擎是一套放在幾十幾百萬臺服務器上運行的、基于各種程序算法的、復雜的檢索系統,基本工作原理(以中文搜索引擎百度為例說明)如下。
(1)正向工作:從種子URL(網絡定位資源符)出發沿著超鏈接對全網Web資源進行爬行、抓取或更新(鏈接存儲系統、鏈接選取系統、DNS解析服務系統、抓取調度系統、網頁分析系統、鏈接提取系統、鏈接分析系統、網頁存儲系統多系統通力合作)→重復度初篩→原始數據存儲→預處理、頁面分析(提取文字、中文切詞分詞、去停止詞、消除噪聲、正向索引、倒排索引、鏈接關系計算、特殊文件處理、其他權重數據計算)→建庫(文檔映射部件基于網頁的等級將數據庫中的網頁映射到多個分層中,通常分為重要索引庫、普通庫及低級庫)→等待查詢。
(2)逆向工作:用戶輸入查詢詞→中文分詞→分詞結果對應的文檔集合(倒排索引)→求交→敏感詞過濾→排序輸出。對于普通用戶而言,他們并不用了解搜索引擎的工作原理,而作為SEO人員,了解搜索引擎的原理是做好SEO的基礎,了解其原理能有針對性地對網站進行優化,讓網站優化工作更為科學合理。雖然各個搜索引擎的工作細節有所不同,但是總的原理是大致相同的。
本節介紹的搜索引擎工作原理就是搜索引擎共同的特點,其中包括3個部分。
(1)利用漫游機器人在互聯網中發現、搜集網頁信息,即爬取Web資源。
(2)對信息進行提取和組織,建立索引庫,并對排名進行預處理。
(3)根據用戶輸入的查詢關鍵字,檢索器在索引庫中快速檢出文檔,進行文檔與查詢的相關度評價,以獲得最終排序,并將查詢結果返回給用戶。搜索引擎的主要工作原理,而在每個部分又含有多個流程。
例如,用戶搜索“搜索引擎實戰解析”,過濾器檢查是否含有敏感詞匯,若有則屏蔽詞匯,顯示其他內容,“搜索引擎實戰解析”沒有敏感詞匯,然后輸入檢索器。檢索器對該詞進行分詞處理,通常分為“搜索引擎”“實戰”“解析”這三個詞。然后通過索引器調用信息數據庫中與這三個詞全部相關或分別相關的網頁數據,利用排序器中預處理的排序進行求交,并利用網頁加權算法獲得關鍵詞“搜索引擎實戰解析”的最終排名輸出給用戶。另外,存儲于信息數據庫中的網頁數據是通過Crawler(漫游器)進行網絡信息的爬行和抓取,然后利用分析器對網頁質量進行評估,如果網絡信息與已有信息高度重復或者質量不高,都不能被搜索引擎存入信息數據庫中,也就是常說的未被收錄。
|