一、搜索引擎的基本結構
搜索引擎基(ji)本(ben)結構一般包(bao)括:搜索器、索引(yin)器、檢索器、用(yong)戶接口(kou)等四(si)個(ge)功能模塊。
1、搜索器
搜索(suo)器(qi)也叫網絡蜘蛛,是搜索(suo)引擎(qing)用來爬(pa)(pa)(pa)行和抓取網頁的(de)(de)一(yi)個自動程(cheng)序,在(zai)系統后臺不(bu)停歇地在(zai)互聯網各個節點爬(pa)(pa)(pa)行,在(zai)爬(pa)(pa)(pa)行過程(cheng)中盡可能(neng)快的(de)(de)發現和抓取網頁。
2、索引器
它的(de)主要功(gong)能是理解搜索器所采(cai)集的(de)網頁信息(xi),并從(cong)中抽取索引項(xiang)。
3、檢索器
其(qi)功能(neng)是快速查找(zhao)文檔,進行文檔與查詢的相關(guan)度評價(jia),對要輸(shu)出的結果進行排序。
4、用戶接口
它為(wei)用戶提供可視化(hua)的查詢(xun)輸入和結果輸出(chu)的界面(mian)。
二、搜索引擎的主要模塊及功能
1、爬蟲(chong):從互聯網(wang)爬取原始網(wang)頁數據,存儲于文檔知(zhi)識庫服務器。
2、文(wen)檔(dang)知(zhi)識(shi)庫服務器:存(cun)儲原始網(wang)頁(ye)數(shu)(shu)據,通常是分(fen)布式Key-Value數(shu)(shu)據庫,能(neng)根據URL/UID快速獲(huo)取網(wang)頁(ye)內容(rong)。
3、索(suo)引(yin):讀取(qu)原始網頁(ye)數據(ju),解析網頁(ye),抽(chou)取(qu)有效字(zi)段,生(sheng)成(cheng)索(suo)引(yin)數據(ju)。索(suo)引(yin)數據(ju)的(de)(de)生(sheng)成(cheng)方(fang)式(shi)通常是增量的(de)(de),分塊/分片的(de)(de),并(bing)會進行索(suo)引(yin)合(he)并(bing)、優(you)化和(he)刪除。生(sheng)成(cheng)的(de)(de)索(suo)引(yin)數據(ju)通常包括:字(zi)典數據(ju)、倒排(pai)(pai)表、正排(pai)(pai)表、文檔屬性等。生(sheng)成(cheng)的(de)(de)索(suo)引(yin)存儲于索(suo)引(yin)服務器。
4、索引服(fu)務器:存儲索引數(shu)據,主(zhu)要(yao)是(shi)倒排表,通(tong)常是(shi)分(fen)塊、分(fen)片存儲,并支持增量(liang)更(geng)新(xin)和(he)刪除。數(shu)據內容量(liang)非(fei)常大時,還根(gen)據類別、主(zhu)題、時間、網頁(ye)質量(liang)劃分(fen)數(shu)據分(fen)區(qu)和(he)分(fen)布,更(geng)好(hao)地服(fu)務在(zai)線查(cha)詢。
5、檢索:讀取(qu)倒排(pai)表索引,響應前端查詢(xun)請求,返回相關文檔列表數據。
6、排(pai)序:對檢(jian)索器返回(hui)的文檔(dang)列表進行排(pai)序,基于文檔(dang)和查詢的相關性、文檔(dang)的鏈接權重等屬性。
7、鏈接(jie)分析:收集各(ge)網(wang)頁的鏈接(jie)數據和錨(mao)文本(Anchor Text),以(yi)此計算各(ge)網(wang)頁鏈接(jie)評分,最(zui)終會作為網(wang)頁屬(shu)性參與返回結(jie)果(guo)排序。
8、網(wang)頁去(qu)重:提(ti)取(qu)各(ge)網(wang)頁的相(xiang)關特(te)征屬性,計算相(xiang)似(si)網(wang)頁組,提(ti)供離(li)線(xian)(xian)索引和在線(xian)(xian)查詢(xun)的去(qu)重服務。
9、網(wang)頁(ye)(ye)反垃(la)圾(ji):收集各網(wang)頁(ye)(ye)和網(wang)站歷史(shi)信息,提取垃(la)圾(ji)網(wang)頁(ye)(ye)特征,從而對在線索引中的網(wang)頁(ye)(ye)進行判定,去除垃(la)圾(ji)網(wang)頁(ye)(ye)。
10、查(cha)(cha)(cha)詢分(fen)析(xi):分(fen)析(xi)用戶(hu)查(cha)(cha)(cha)詢,生成結構化查(cha)(cha)(cha)詢請(qing)求(qiu),指派到相應(ying)的類別、主題數據服務器進行查(cha)(cha)(cha)詢。
11、頁面描(miao)述/摘要:為檢(jian)索和(he)排(pai)序(xu)完成的(de)(de)網(wang)頁列表提供相應的(de)(de)描(miao)述和(he)摘要。
12、前端:接受用(yong)戶請求,分發(fa)至(zhi)相應服務器,返回查詢(xun)結果。