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