搜索引擎,通常指的是收集了因特網上幾千萬到幾十億個網頁并對網頁中的每一個詞(即關鍵詞)進行索引,建立索引數據庫的全文搜索引擎。當用戶查找某個關鍵詞的時候,所有在頁面內容中包含了該關鍵詞的網頁都將作為搜索結果被搜出來。在經過復雜的算法進行排序后,這些結果將按照與搜索關鍵詞的相關度高低,依次排列。根據自己的優(yōu)化程度,獲得相應的名次。
原理概述
在搜索引擎的后臺,有一些用于搜集網頁信息的程序。所收集的信息一般是能表明網站內容(包括網頁本身、網頁的URL地址、構成網頁的代碼以及進出網頁的連接)的關鍵詞或者短語。接著將這些信息的索引存放到數據庫中。
搜索引擎的系統(tǒng)架構和運行方式吸收了信息檢索系統(tǒng)設計中許多有價值的經驗,也針對萬維網數據和用戶的特點進行了許多修改,如右圖所示的搜索引擎系統(tǒng)架構。其核心的文檔處理和查詢處理過程與傳統(tǒng)信息檢索系統(tǒng)的運行原理基本類似,但其所處理的數據對象即萬維網數據的繁雜特性決定了搜索引擎系統(tǒng)必須進行系統(tǒng)結構的調整,以適應處理數據和用戶查詢的需要。
工作原理
爬行和抓取
搜索引擎派出一個能夠在網上發(fā)現新網頁并抓文件的程序,這個程序通常稱之為蜘蛛(Spider)。搜索引擎從已知的數據庫出發(fā),就像正常用戶的瀏覽器一樣訪問這些網頁并抓取文件。搜索引擎通過這些爬蟲去爬互聯(lián)網上的外鏈,從這個網站爬到另一個網站,去跟蹤網頁中的鏈接,訪問更多的網頁,這個過程就叫爬行。這些新的網址會被存入數據庫等待搜索。所以跟蹤網頁鏈接是搜索引擎蜘蛛(Spider)發(fā)現新網址的最基本的方法,所以反向鏈接成為搜索引擎優(yōu)化的最基本因素之一。搜索引擎抓取的頁面文件與用戶瀏覽器得到的完全一樣,抓取的文件存入數據庫。
建立索引
蜘蛛抓取的頁面文件分解、分析,并以巨大表格的形式存入數據庫,這個過程即是索引(index).在索引數據庫中,網頁文字內容,關鍵詞出現的位置、字體、顏色、加粗、斜體等相關信息都有相應記錄。
搜索詞處理
用戶在搜索引擎界面輸入關鍵詞,單擊“搜索”按鈕后,搜索引擎程序即對搜索詞進行處理,如中文特有的分詞處理,去除停止詞,判斷是否需要啟動整合搜索,判斷是否有拼寫錯誤或錯別字等情況。搜索詞的處理必須十分快速。
排序
對搜索詞處理后,搜索引擎程序便開始工作,從索引數據庫中找出所有包含搜索詞的網頁,并且根據排名算法計算出哪些網頁應該排在前面,然后按照一定格式返回到“搜索”頁面。
再好的搜索引擎也無法與人相比,這就是為什么網站要進行搜索引擎優(yōu)化。沒有SEO的幫助,搜索引擎常常并不能正確的返回最相關、最權威、最有用的信息。
數據結構
搜索引擎的核心數據結構為倒排文件(也稱倒排索引),倒排索引是指用記錄的非主屬性值(也叫副鍵)來查找記錄而組織的文件叫倒排文件,即次索引。倒排文件中包括了所有副鍵值,并列出了與之有關的所有記錄主鍵值,主要用于復雜查詢。 與傳統(tǒng)的SQL查詢不同,在搜索引擎收集完數據的預處理階段,搜索引擎往往需要一種高效的數據結構來對外提供檢索服務。而現行最有效的數據結構就是“倒排文件”。倒排文件簡單一點可以定義為“用文檔的關鍵詞作為索引,文檔作為索引目標的一種結構(類似于普通書籍中,索引是關鍵詞,書的頁面是索引目標)。
全文搜索引擎
在搜索引擎分類部分我們提到過全文搜索引擎從網站提取信息建立網頁數據庫的概念。搜索引擎的自動信息搜集功能分兩種。一種是定期搜索,即每隔一段時間(比如Google一般是28天),搜索引擎主動派出“蜘蛛”程序,對一定IP地址范圍內的互聯(lián)網站進行檢索,一旦發(fā)現新的網站,它會自動提取網站的信息和網址加入自己的數據庫。
另一種是提交網站搜索,即網站擁有者主動向搜索引擎提交網址,它在一定時間內(2天到數月不等)定向向你的網站派出“蜘蛛”程序,掃描你的網站并將有關信息存入數據庫,以備用戶查詢。由于搜索引擎索引規(guī)則發(fā)生了很大變化,主動提交網址并不保證你的網站能進入搜索引擎數據庫,因此目前最好的辦法是多獲得一些外部鏈接,讓搜索引擎有更多機會找到你并自動將你的網站收錄。
當用戶以關鍵詞查找信息時,搜索引擎會在數據庫中進行搜尋,如果找到與用戶要求內容相符的網站,便采用特殊的算法——通常根據網頁中關鍵詞的匹配程度,出現的位置/頻次,鏈接質量等——計算出各網頁的相關度及排名等級,然后根據關聯(lián)度高低,按順序將這些網頁鏈接返回給用戶。
轉載請保留原文地址: http://onedealspecials.com/show-545.html