中文搜尋引擎技術揭密 系統架構 2

2021-04-02 06:28:34 字數 901 閱讀 6329

搜尋引擎的系統架構這裡主要針對全文檢索搜尋引擎的系統架構進行說明,下文中提到的搜尋引擎如果沒有特殊說明也是指全文檢索搜尋引擎。搜尋引擎的實現原理,可以看作四步:從網際網路上抓取網頁→建立索引資料庫→在索引資料庫中搜尋→對搜尋結果進行處理和排序。  

1、從網際網路上抓取網頁

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

2、建立索引資料庫

3、在索引資料庫中搜尋

4、對搜尋結果進行處理排序

下圖是乙個典型的搜尋引擎系統架構圖,搜尋引擎的各部分都會相互交錯相互依賴。其處理流程按照如下描述:

「網路蜘蛛」從網際網路上抓取網頁,把網頁送入「網頁資料庫」,從網頁中「提取url」,把url送入「url資料庫」,「蜘蛛控制」得到網頁的url,控制「網路蜘蛛」抓取其它網頁,反覆迴圈直到把所有的網頁抓取完成。

系統從「網頁資料庫」中得到文字資訊,送入「文字索引」模組建立索引,形成「索引資料庫」。同時進行「鏈結資訊提取」,把鏈結資訊(包括錨文字、鏈結本身等資訊)送入「鏈結資料庫」,為「網頁評級」提供依據。

搜尋引擎的索引和搜尋

資料的索引分為三個步驟:網頁內容的提取、詞的識別、標引庫的建立。

網際網路上大部分資訊都是以html格式存在,對於索引來說,只處理文字資訊。因此需要把網頁中文字內容提取出來,過濾掉一些指令碼標示符和一些無用的廣告資訊,同時記錄文字的版面格式資訊[1]。詞的識別是搜尋引擎中非常關鍵的一部分,通過字典檔案對網頁內的詞進行識別。對於西文資訊來說,需要識別詞的不同形式,例如:單複數、過去式、組合詞、詞根等,對於一些亞洲語言(中文、日文、韓文等)需要進行分詞處理[3]。識別出網頁中的每個詞,並分配唯一的wordid號,用於為資料索引中的標引模組服務。

中文搜尋引擎技術揭密 系統架構

網頁資料的快速採集 海量資料的索引和儲存 搜尋結果的相關性排序 搜尋效率的毫秒級要求 分布式處理和負載均衡 自然語言的理解技術 1 資料量 傳統全文檢索系統面向的是企業本身的資料或者和企業相關的資料,一般索引庫規模多在gb級,資料量大的也只有幾百萬條 但網際網路網頁搜尋需要處理幾十億的網頁,搜尋引擎...

中文搜尋引擎技術揭密 系統架構 三

這裡主要針對全文檢索搜尋引擎的系統架構進行說明,下文中提到的搜尋引擎如果沒有特殊說明也是指全文檢索搜尋引擎。搜尋引擎的實現原理,可以看作四步 從網際網路上抓取網頁 建立索引資料庫 在索引資料庫中搜尋 對搜尋結果進行處理和排序。利用能夠從網際網路上自動收集網頁的 網路蜘蛛 程式,自動訪問網際網路,並沿...

中文搜尋引擎技術揭密 中文分詞

中搜 http www.zhongsou.com 等。目前在中文搜尋引擎領域,國內的搜尋引擎已經和國外的搜尋引擎效果上相差不遠。之所以能形成這樣的局面,有乙個重要的原因就在於中文和英文兩種語言自身的書寫方式不同,這其中對於計算機涉及的技術就是中文分詞。什麼是中文分詞 眾所周知,英文是以詞為單位的,詞...