搜尋引擎-03-搜尋引擎原理

老马啸西风發表於2024-04-04

擴充閱讀

搜尋引擎-01-概覽

搜尋引擎-02-分詞與全文索引

搜尋引擎-03-搜尋引擎原理

Crawl htmlunit 模擬瀏覽器動態 js 爬蟲入門使用簡介

Crawl jsoup 爬蟲使用 jsoup 無法抓取動態 js 生成的內容

Crawl WebMagic 爬蟲入門使用簡介 webmagic

全網搜尋引擎架構與流程如何?

全網搜尋引擎的宏觀架構如上圖,核心子系統主要分為三部分(粉色部分):

(1)spider 爬蟲系統;

(2)search+index: 建立索引與查詢索引系統,這個系統又主要分為兩部分:

一部分用於生成索引資料 build_index

一部分用於查詢索引資料 search_index

(3)rank 打分排序系統;

核心資料主要分為兩部分(紫色部分):

(1)web 網頁庫;

(2)index 索引資料;

全網搜尋引擎的業務特點決定了,這是一個“寫入”和“檢索”分離的系統

如何寫入

系統組成:由spider與search+index;兩個系統完成。

輸入:站長們生成的網際網路網頁。

輸出:正排倒排索引資料。

流程:如架構圖中的1,2,3,4:

(1)spider把網際網路網頁抓過來;

(2)spider把網際網路網頁儲存到網頁庫中(這個對儲存的要求很高,要儲存幾乎整個“全球資訊網”的映象);

(3)build_index從網頁庫中讀取資料,完成分詞;

(4)build_index生成倒排索引;

如何建立索引

系統組成:由search+index;與rank兩個系統完成。

輸入:使用者的搜尋詞。

輸出:排好序的第一頁檢索結果。

流程:如架構圖中的a,b,c,d:

(a)search_index獲得使用者的搜尋詞,完成分詞;

(b)search_index查詢倒排索引,獲得“字元匹配”網頁,這是初篩的結果;

(c)rank對初篩的結果進行打分排序;

(d)rank對排序後的第一頁結果返回;

相關文章