搜索引擎工作原理是什么 |
發(fā)布時(shí)間: 2012/9/18 11:16:36 |
一、搜索引擎的分類
獲得網(wǎng)站網(wǎng)頁資料,能夠建立數(shù)據(jù)庫并提供查詢的系統(tǒng),我們都可以把它叫做搜索引擎。按照工作原理的不同,可以把它們分為兩個(gè)基本類別:全文搜索引擎(FullTextSearchEngine)和分類目錄Directory)。
全文搜索引擎的數(shù)據(jù)庫是依靠一個(gè)叫“網(wǎng)絡(luò)機(jī)器人(Spider)”或叫“網(wǎng)絡(luò)蜘蛛(crawlers)”的軟件,通過網(wǎng)絡(luò)上的各種鏈接自動(dòng)獲取大量網(wǎng)頁信息內(nèi)容,并按以定的規(guī)則分析整理形成的。Google、百度都是比較典型的全文搜索引擎系統(tǒng)。
分類目錄則是通過人工的方式收集整理網(wǎng)站資料形成數(shù)據(jù)庫的,比如雅虎中國以及國內(nèi)的搜狐、新浪、網(wǎng)易分類目錄。另外,在網(wǎng)上的一些導(dǎo)航站點(diǎn),也可以歸屬為原始的分類目錄,比如“網(wǎng)址之家”。
全文搜索引擎和分類目錄在使用上各有長短。全文搜索引擎因?yàn)橐揽寇浖M(jìn)行,所以數(shù)據(jù)庫的容量非常龐大,但是,它的查詢結(jié)果往往不夠準(zhǔn)確;分類目錄依靠人工收集和整理網(wǎng)站,能夠提供更為準(zhǔn)確的查詢結(jié)果,但收集的內(nèi)容卻非常有限。為了取長補(bǔ)短,現(xiàn)在的很多搜索引擎,都同時(shí)提供這兩類查詢,一般對(duì)全文搜索引擎的查詢稱為搜索“所有網(wǎng)站”或“全部網(wǎng)站”,比如Google的全文搜索(http://www.google.com/intl/zh-CN/);把對(duì)分類目錄的查詢稱為搜索“分類目錄”或搜索“分類網(wǎng)站”,比如新浪搜索和雅虎中國搜索(http://cn.search.yahoo.com/dirsrch/)。
在網(wǎng)上,對(duì)這兩類搜索引擎進(jìn)行整合,還產(chǎn)生了其它的搜索服務(wù),在這里,我們權(quán)且也把它們稱作搜索引擎,主要有這兩類:
⒈元搜索引擎(METASearchEngine)。這類搜索引擎一般都沒有自己網(wǎng)絡(luò)機(jī)器人及數(shù)據(jù)庫,它們的搜索結(jié)果是通過調(diào)用、控制和優(yōu)化其它多個(gè)獨(dú)立搜索引擎的搜索結(jié)果并以統(tǒng)一的格式在同一界面集中顯示。元搜索引擎雖沒有“網(wǎng)絡(luò)機(jī)器人”或“網(wǎng)絡(luò)蜘蛛”,也無獨(dú)立的索引數(shù)據(jù)庫,但在檢索請(qǐng)求提交、檢索接口代理和檢索結(jié)果顯示等方面,均有自己研發(fā)的特色元搜索技術(shù)。比如“metaFisher元搜索引擎”
(http://www.hsfz.net/fish/),它就調(diào)用和整合了Google、Yahoo、AlltheWeb、百度和OpenFind等多家搜索引擎的數(shù)據(jù)。
⒉集成搜索引擎(All-in-OneSearchPage)。集成搜索引擎是通過網(wǎng)絡(luò)技術(shù),在一個(gè)網(wǎng)頁上鏈接很多個(gè)獨(dú)立搜索引擎,查詢時(shí),點(diǎn)選或指定搜索引擎,一次輸入,多個(gè)搜索引擎同時(shí)查詢,搜索結(jié)果由各搜索引擎分別以不同頁面顯示,比如“網(wǎng)際瑞士軍刀”(http://free.okey.net/%7Efree/search1.htm)。
二、搜索引擎的工作原理
搜索引擎并不真正搜索互聯(lián)網(wǎng),它搜索的實(shí)際上是預(yù)先整理好的網(wǎng)頁索引數(shù)據(jù)庫。
真正意義上的搜索引擎,通常指的是收集了因特網(wǎng)上幾千萬到幾十億個(gè)網(wǎng)頁并對(duì)網(wǎng)頁中的每一個(gè)詞(即關(guān)鍵詞)進(jìn)行索引,建立索引數(shù)據(jù)庫的全文搜索引擎。當(dāng)用戶查找某個(gè)關(guān)鍵詞的時(shí)候,所有在頁面內(nèi)容中包含了該關(guān)鍵詞的網(wǎng)頁都將作為搜索結(jié)果被搜出來。在經(jīng)過復(fù)雜的算法進(jìn)行排序后,這些結(jié)果將按照與搜索關(guān)鍵詞的相關(guān)度高低,依次排列。
現(xiàn)在的搜索引擎已普遍使用超鏈分析技術(shù),除了分析索引網(wǎng)頁本身的內(nèi)容,還分析索引所有指向該網(wǎng)頁的鏈接的URL、AnchorText、甚至鏈接周圍的文字。所以,有時(shí)候,即使某個(gè)網(wǎng)頁A中并沒有某個(gè)詞比如“惡魔撒旦”,但如果有別的網(wǎng)頁B用鏈接“惡魔撒旦”指向這個(gè)網(wǎng)頁A,那么用戶搜索“惡魔撒旦”時(shí)也能找到網(wǎng)頁A。而且,如果有越多網(wǎng)頁(C、D、E、F……)用名為“惡魔撒旦”的鏈接指向這個(gè)網(wǎng)頁A,或者給出這個(gè)鏈接的源網(wǎng)頁(B、C、D、E、F……)越優(yōu)秀,那么網(wǎng)頁A在用戶搜索“惡魔撒旦”時(shí)也會(huì)被認(rèn)為更相關(guān),排序也會(huì)越靠前。
搜索引擎的原理,可以看做三步:從互聯(lián)網(wǎng)上抓取網(wǎng)頁→建立索引數(shù)據(jù)庫→在索引數(shù)據(jù)庫中搜索排序。
從互聯(lián)網(wǎng)上抓取網(wǎng)頁
利用能夠從互聯(lián)網(wǎng)上自動(dòng)收集網(wǎng)頁的Spider系統(tǒng)程序,自動(dòng)訪問互聯(lián)網(wǎng),并沿著任何網(wǎng)頁中的所有URL爬到其它網(wǎng)頁,重復(fù)這過程,并把爬過的所有網(wǎng)頁收集回來。
建立索引數(shù)據(jù)庫
當(dāng)用戶輸入關(guān)鍵詞搜索后,由搜索系統(tǒng)程序從網(wǎng)頁索引數(shù)據(jù)庫中找到符合該關(guān)鍵詞的所有相關(guān)網(wǎng)頁。因?yàn)樗邢嚓P(guān)網(wǎng)頁針對(duì)該關(guān)鍵詞的相關(guān)度早已算好,所以只需按照現(xiàn)成的相關(guān)度數(shù)值排序,相關(guān)度越高,排名越靠前。 最后,由頁面生成系統(tǒng)將搜索結(jié)果的鏈接地址和頁面內(nèi)容摘要等內(nèi)容組織起來返回給用戶。 搜索引擎的Spider一般要定期重新訪問所有網(wǎng)頁(各搜索引擎的周期不同,可能是幾天、幾周或幾月,也可能對(duì)不同重要性的網(wǎng)頁有不同的更新頻率),更新網(wǎng)頁索引數(shù)據(jù)庫,以反映出網(wǎng)頁內(nèi)容的更新情況,增加新的網(wǎng)頁信息,去除死鏈接,并根據(jù)網(wǎng)頁內(nèi)容和鏈接關(guān)系的變化重新排序。這樣,網(wǎng)頁的具體內(nèi)容和變化情況就會(huì)反映到用戶查詢的結(jié)果中。 互聯(lián)網(wǎng)雖然只有一個(gè),但各搜索引擎的能力和偏好不同,所以抓取的網(wǎng)頁各不相同,排序算法也各不相同。大型搜索引擎的數(shù)據(jù)庫儲(chǔ)存了互聯(lián)網(wǎng)上幾億至幾十億的網(wǎng)頁索引,數(shù)據(jù)量達(dá)到幾千G甚至幾萬G。但即使最大的搜索引擎建立超過二十億網(wǎng)頁的索引數(shù)據(jù)庫,也只能占到互聯(lián)網(wǎng)上普通網(wǎng)頁的不到30%,不同搜索引擎之間的網(wǎng)頁數(shù)據(jù)重疊率一般在70%以下。我們使用不同搜索引擎的重要原因,就是因?yàn)樗鼈兡芊謩e搜索到不同的內(nèi)容。而互聯(lián)網(wǎng)上有更大量的內(nèi)容,是搜索引擎無法抓取索引的,也是我們無法用搜索引擎搜索到的。 你心里應(yīng)該有這個(gè)概念:搜索引擎只能搜到它網(wǎng)頁索引數(shù)據(jù)庫里儲(chǔ)存的內(nèi)容。你也應(yīng)該有這個(gè)概念:如果搜索引擎的網(wǎng)頁索引數(shù)據(jù)庫里應(yīng)該有而你沒有搜出來,那是你的能力問題,學(xué)習(xí)搜索技巧可以大幅度提高你的搜索能力。本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |