複製鏈接
請複製以下鏈接發送給好友

搜索引擎原理

鎖定
搜索引擎原理(Principle of Search Engine),搜索引擎,通常指的是收集了萬維網上幾千萬到幾十億個網頁並對網頁中的每一個詞(即關鍵詞)進行索引,建立索引數據庫全文搜索引擎。當用户查找某個關鍵詞的時候,所有在頁面內容中包含了該關鍵詞的網頁都將作為搜索結果被搜出來。再經過複雜的算法進行排序(或者包含商業化的競價排名、商業推廣或者廣告)後,這些結果將按照與搜索關鍵詞的相關度高低(或與相關度毫無關係),依次排列。
中文名
搜索引擎原理
外文名
Principle of Search Engine
工作原理
爬行和抓取、建立索引等
數據結構
倒排索引

搜索引擎原理引擎結構

搜索引擎基本結構一般包括:搜索器、索引器、檢索器、用户接口等四個功能模塊。
1)搜索器,也叫網絡蜘蛛,是搜索引擎用來爬行和抓取網頁的一個自動程序,在系統後台不停歇地在互聯網各個節點爬行,在爬行過程中儘可能快的發現和抓取網頁。
2)索引器。它的主要功能是理解搜索器所採集的網頁信息,並從中抽取索引項。
3)檢索器。其功能是快速查找文檔,進行文檔與查詢的相關度評價,對要輸出的結果進行排序。
4)用户接口。它為用户提供可視化的查詢輸入和結果輸出的界面。 [1] 

搜索引擎原理分類

搜索引擎原理 搜索引擎原理
全文搜索引擎一般都有一種叫作“網絡機器人”或“網絡蜘蛛”的軟件,這些軟件能遍歷WEB空間,掃描一定IP範圍內的網站,並延着網絡上的鏈接從一個網頁到另一個網頁,從一個網站到另一個網站採集網頁資料。為了保持網頁資料的最新,它還會回訪已抓取的網頁。對已經抓取到的網頁,搜索引擎還會用一定的程序進行分析,根據一定的相關度算法建立網頁索引,添加到索引數據庫中。全文搜索引擎因為依靠軟件進行採集網頁,所以數據庫的容量非常龐大,但是,它的查詢結果往往不夠準確。我們平時看到的全文搜索引擎,實際上是隻是一個搜索引擎的搜索界面。當我們輸入關鍵字進行查詢時,搜索引擎便會從寵大的索引數據庫中找到包含該關鍵字的所有相關網頁的索引,並按一定的排名規則呈現給我們。不同的搜索引擎,網頁索引數據庫也不同,排名規則也不盡相同,所以當我們以同一關鍵字在不同的搜索引擎上進行查詢時,搜索的結果和排列順序通常也不相同。
全文搜索引擎一樣,分類目錄搜索引擎的整個工作過程同樣也經過收集信息、分析信息和查詢信息三部分,只不過分類目錄搜索引擎的前兩部分,收集信息和分析信息全部由人工來完成。分類目錄一般都有專門的編輯人員,負責收集網站的信息。分類目錄依靠人工收集和整理網站,能夠提供更為準確的查詢結果,但收集的內容卻非常有限。
3、元搜索引擎
這類搜索引擎一般都沒有自己的網頁搜索軟件以及數據庫,它的搜索結果是通過調用、控制和優化其它多個獨立搜索引擎的搜索結果並以一定的格式在同一界面集中顯示。通常元搜索引擎在索引請求提交、檢索接口代理和檢索接口顯示等方面,均有自己開發的具有特色的元搜索技術。在搜索結果上,這些元搜索引擎往往搜索範圍更大一些。
集成搜索引擎是通過網絡技術在一個網頁上鍊接很多個獨立的搜索引擎,查詢時,點選或指定搜索引擎,一次輸入,多個搜索引擎同時查詢。搜索的結果由各個搜索引擎分別以不同的頁面顯示。 [2] 

搜索引擎原理工作原理

搜索引擎的工作原理是從互聯網上抓取網頁,建立索引數據庫,在索引數據庫中搜索排序。它的整個工作過程大體分為信息採集、信息分析、信息查詢和用户接口四部分。信息採集是網絡機器人掃描一定IP地址範圍內的網站,通過鏈接遍歷Web空間,來進行採集網頁資料,為保證採集的資料最新,網絡機器人還會回訪已抓取過的網頁;信息分析是通過分析程序,從採集的信息中提取索引項,用索引項表示文檔並生成文檔庫的索引表,從而建立索引數據庫;信息查詢是指用户以關鍵詞查找信息時,搜索引擎會根據用户的查詢條件在索引庫中快速檢索文檔,然後對檢出的文檔與查詢條件的相關度進行評價,最後根據相關度對檢索結果進行排序並輸出。 [3] 

搜索引擎原理工作流程

搜索引擎原理爬行和抓取

搜索引擎派出一個能夠在網上發現新網頁並抓文件的程序,這個程序通常稱之為蜘蛛(Spider)。搜索引擎從已知的數據庫出發,就像正常用户的瀏覽器一樣訪問這些網頁並抓取文件。搜索引擎通過這些爬蟲去爬互聯網上的外鏈,從這個網站爬到另一個網站,去跟蹤網頁中的鏈接,訪問更多的網頁,這個過程就叫爬行。這些新的網址會被存入數據庫等待搜索。所以跟蹤網頁鏈接是搜索引擎蜘蛛(Spider)發現新網址的最基本的方法,所以反向鏈接成為搜索引擎優化的最基本因素之一。搜索引擎抓取的頁面文件與用户瀏覽器得到的完全一樣,抓取的文件存入數據庫。

搜索引擎原理建立索引

蜘蛛抓取的頁面文件分解、分析,並以巨大表格的形式存入數據庫,這個過程即是索引(index)。在索引數據庫中,網頁文字內容,關鍵詞出現的位置、字體、顏色、加粗、斜體等相關信息都有相應記錄。

搜索引擎原理搜索詞處理

用户在搜索引擎界面輸入關鍵詞,單擊“搜索”按鈕後,搜索引擎程序即對搜索詞進行處理,如中文特有的分詞處理,去除停止詞,判斷是否需要啓動整合搜索,判斷是否有拼寫錯誤或錯別字等情況。搜索詞的處理必須十分快速。

搜索引擎原理排序

搜索詞處理後,搜索引擎程序便開始工作,從索引數據庫中找出所有包含搜索詞的網頁,並且根據排名算法計算出哪些網頁應該排在前面,然後按照一定格式返回到“搜索”頁面。再好的搜索引擎也無法與人相比,這就是為什麼網站要進行搜索引擎優化(SEO)。沒有SEO的幫助,搜索引擎常常並不能正確的返回最相關、最權威、最有用的信息。 [4] 

搜索引擎原理數據結構

倒排是搜索引擎常用的數據結構之一,倒排索引是指用記錄的非主屬性值(也叫副鍵)來查找記錄而組織的文件叫倒排文件,即次索引。倒排文件中包括了所有副鍵值,並列出了與之有關的所有記錄主鍵值,主要用於複雜查詢。 與傳統的SQL查詢不同,在搜索引擎收集完數據的預處理階段,搜索引擎往往需要一種高效的數據結構來對外提供檢索服務。而現行最有效的數據結構就是“倒排文件”。倒排文件簡單一點可以定義為用文檔的關鍵詞作為索引,文檔作為索引目標的一種結構(類似於普通書籍中,索引是關鍵詞,書的頁面是索引目標)。
參考資料
  • 1.    王姣,徐海霞.搜索引擎工作原理再探究[J].電腦知識與技術,2016,12(25):165-166.
  • 2.    史永哲,劉靜,馬小榮.搜索引擎的工作原理及使用技巧[J].硅谷,2010,(18):175-175,158.
  • 3.    趙雲杉.淺議網絡搜索引擎的工作原理特徵[J].中國信息化,2012,(22):25.
  • 4.    張愛萍.搜索引擎運作原理的探討[J].讀與寫(上,下旬),2013,(13):154-154.