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