搜索引擎工作原理
搜索引擎是一個非常復雜的數(shù)據(jù)庫系統(tǒng),通過抓取上億級別的頁面,建立索引數(shù)據(jù)庫,組件龐大的數(shù)據(jù)庫。當用戶輸入搜索關鍵詞的時候,給予搜索結果的響應,這里我們只是簡單的解析搜索引擎工作的步驟,僅供大家參考。
搜索引擎工作大致分為三個流程:爬行抓取、預處理、排名
(1)爬行和抓取:搜索引擎蜘蛛通過跟蹤鏈接訪問網(wǎng)頁,獲得頁面HTML代碼存入數(shù)據(jù)庫。
1.蜘蛛
2.跟蹤鏈接
3.吸引蜘蛛
4.地址庫
5.文件存儲
6.爬行時的復制內(nèi)容檢測
(2)預處理:索引程序對抓取來的頁面數(shù)據(jù)進行文字提取、中文分詞、索引等處理,以備排名程序調(diào)用。
1.提取文字
2.中文分詞
3.去停止詞
4.消除噪聲
5.去重
6.正向索引
7.倒排索引
8.鏈接關系計算
9.特殊文件處理
(3)排名:用戶輸入關鍵詞后,排名程序調(diào)用索引庫數(shù)據(jù),計算相關性,然后安一定的格式生成搜索結果頁面。
1.搜索詞處理
2.文件匹配
3.初始子集的選擇
4.相關性計算
5.排名過濾及調(diào)整
6.排名顯示
7.搜索緩存
8.查詢及點擊日志