網(wǎng)頁是基于互聯(lián)網(wǎng)的一個最基本的單位,搜索引擎圍繞一個網(wǎng)頁展開的工作大致需要經(jīng)歷如下四個環(huán)節(jié)(包括但不限):
(1)下載系統(tǒng):搜索引擎下載頁面
(2)分析系統(tǒng):搜索引擎對頁面進行分析
(3)索引系統(tǒng):搜索引擎根據(jù)分析結(jié)果決定是否予以收錄、索引
(4)查詢系統(tǒng):搜索引擎將頁面加入緩存,進行查詢
為何搜索引擎要按照這種方式展開工作?搜索引擎的使命是什么?
(1)搜索引擎為何要將頁面下載回去?
難以想象,搜索引擎不把頁面下載回去,加入搜索引擎的頁面庫,搜索引擎將如何對頁面進行分析。難道讓搜索引擎根據(jù)需求才對頁面進行實時下載、分析,然后直接進行展現(xiàn)?哦不……那樣效率會非常之低,在用戶搜索一個關(guān)鍵詞進行檢索時,搜索引擎需要花費大量的時間才能分析完畢,給用戶返回結(jié)果,不怕用戶等得不耐煩跑掉?
實際上,搜索引擎需要在非常短暫的時間內(nèi),對用戶的搜索請求返回結(jié)果,因此就需要事先在搜索引擎中建立一個數(shù)據(jù)庫,然后把常用的信息放入高速緩存之中,這樣就可以保證在極短的時間內(nèi),對用戶的請求進行響應了。
關(guān)于緩存,大家可以自行百度一下,我舉個不是太好的例子,就像電腦的機械硬盤和固態(tài)硬盤相對于內(nèi)存的速度(有明顯質(zhì)的或者幾何級別的區(qū)別)
不僅如此,搜索引擎所擔負的使命主要還有兩點,一是抓取更多頁面,而是根據(jù)分析系統(tǒng)和查詢系統(tǒng)的情況,根據(jù)重要程度去跟蹤觀察一些頁面。
搜索引擎需要盡可能地遍歷并下載互聯(lián)網(wǎng)上存在的所有頁面,只有這樣才能為用戶提供更多的參考信息。我來舉個例子:許多人都在談論,谷歌在學術(shù)界的搜索體驗要明顯高于其他搜索引擎,其實也可以說是谷歌在世界范圍中抓取的學術(shù)界的頁面的數(shù)量和質(zhì)量都要比其他搜索引擎要多要好。
對于越重要的頁面,更新越頻繁的頁面,展現(xiàn)多的頁面,需要分配更多資源對其進行跟蹤,以確保目標頁面處于一種正常狀態(tài)(當目標頁面處于非正常狀態(tài)時,可以及時反應過來,進行相應處理)。
(2)為什么頁面被下載回去還要進行分析?
因為互聯(lián)網(wǎng)上的頁面,絕大部分都并不會是優(yōu)質(zhì)的頁面(一方面是沒有搜索價值或者用戶搜索需求的頁面,比如我的流水賬一樣的日記,比如一些隱私信息等;另一方面是針對搜索引擎制造的粗制濫造、抄襲的垃圾頁面,就是我們熟知的黑帽作弊頁面;還有一些是已經(jīng)不存在的頁面,比如一些頁面曾經(jīng)可訪,現(xiàn)在由于一些原因不可訪問,比如一些國外倒閉公司的網(wǎng)站,或者因為不同原因刪除的頁面……
搜索引擎為了對魚龍混雜的互聯(lián)網(wǎng)上存在的大量頁面進行甄選,所以必然需要對這些頁面進行選拔,對優(yōu)質(zhì)頁面進行優(yōu)先展現(xiàn),將劣質(zhì)頁面過濾掉不予展現(xiàn)。
(3)為何需要索引機制?
用戶從搜索引擎中進行搜索時,一般只會對很少的一部分頁面進行訪問即可解決需求,因此并不需要對大量的網(wǎng)頁進行展現(xiàn)。因此,為了加快查詢響應速度,只對根據(jù)分析系統(tǒng)得到的一批優(yōu)質(zhì)頁面進行展現(xiàn),是一個不錯的主意。
而且,這個階段有一個特性,會把頁面和關(guān)鍵詞進行聯(lián)系。這為搜索引擎在遇到用戶的不同搜索詞對不同頁面進行展現(xiàn)提供了解決方案。
就如同一個頁面不會霸占所有的關(guān)鍵詞,一個關(guān)鍵詞的結(jié)果展現(xiàn)中對于不同的頁面也有不同的排序。
(4)查詢系統(tǒng)是什么好吃嗎?
查詢系統(tǒng)是搜索引擎與用戶最接近的一個環(huán)節(jié),用戶想從搜索引擎得到的信息都是直接通過查詢系統(tǒng)進行展現(xiàn)的。
普通的用戶不會在意他得到的信息來自于哪里,而是對他是否有幫助。所以搜索引擎必須致力于解決這個環(huán)節(jié)上可能出現(xiàn)的問題與矛盾。搜索引擎會根據(jù)這個環(huán)節(jié)中用戶的各種行為,來對搜索結(jié)果排序進行調(diào)整、干預。我舉個例子,比如大部分用戶通過某個關(guān)鍵詞進入排序在前面的某個頁面,但是在該站點的另外一個頁面上進行了跳出或者轉(zhuǎn)化,那么搜索引擎可能就會認為,最終的頁面才更適合展現(xiàn)給用戶,如果用戶瀏覽的具有價值的頁面沒有被抓取、收錄、索引的話,搜索引擎可能會對目標頁面進行這樣的工作,對最終的展現(xiàn)進行跳轉(zhuǎn)。另一個例子,如果有大量用戶對排在前面的頁面的跳出率過高,搜索引擎可能會認為這個頁面展示的效果不好,從而把本來排在前面的頁面移到后面去。