總而言之,搜索引擎遭遇下列考驗。
1、頁面爬行必須迅速且全方位
互聯網是一個信息的具體內容互聯網。每日,成千上萬的頁面被升級和建立,成千上萬的用戶公布具體內容并相互交流,要返還到有價值的具體內容,搜索引擎必須爬取一個新的頁面,可是因為頁面總數極大,搜索引擎搜索引擎蜘蛛必須很長時間才可以更新數據庫里的頁面一次。當搜索引擎問世時,捕捉和升級周期時間一般以月為企業開展測算,這就是為什么谷歌在2003年以前每一個月都是有一個大的升級。
目前主要的搜索引擎早已可以在兩天內升級關鍵的頁面,而且在幾個小時乃至數分鐘內將包含在高權重網址里的新文檔。但是,這些迅速的包括和升級只有限于高權重的網址,很多頁面在好多個月內沒被再次爬行和升級都是很普遍的。
為了能回到較為好的結果,搜索引擎還需要盡量全方位地爬取一個頁面,這必須處理很多技術性難題,有一些網址不益于搜索引擎搜索引擎蜘蛛爬行和爬行,如網頁鏈接構造的缺點、Flash、Java腳本制作的廣泛應用,或是用戶在瀏覽該一部分以前務必登陸的具體內容,都增強了搜索引擎爬行具體內容的難度系數。
2、海量信息儲存
一些商業網站在一個網站上面有上百萬、數千萬、乃至數千萬的頁面,你可以想象網絡上所有網頁的頁面加起來有多少數據信息,搜索引擎搜索引擎蜘蛛爬取頁面后,還需要合理地儲存這種數據信息,算法設計務必有效,具備很強的擴展性,對載入和響應速度的需求也非常高。
除開頁面數據信息,搜索引擎還要儲存頁面中間的超鏈接和很多的歷史記錄,這也是用戶無法想象的。據估計,百度搜索有著340多萬臺網絡服務器,Google有著數十個大數據中心和數百萬臺網絡服務器,這類大規模的數據儲存和瀏覽難以避免會遭遇很多技術性考驗。
我們經常在搜索結論中見到排行左右起伏,并沒有顯著的因素,人們甚至是能夠更新頁面并查詢差異的排行,有時候,網站數據還會遺失,這也許與規模性數據儲存和同步的技術難點相關。
3、索引解決迅速、合理且可擴展
在搜索引擎對頁面數據信息開展爬行和儲存后,還要開展索引解決,包含連接關聯測算、正方向索引、反方向索引等。因為數據庫系統里的頁面總數巨大,實行pr等迭代更新測算既耗時又費勁,為了能給予有關立即的搜索結論,只需爬取是沒有用的,從而應該做許多的索引測算,由于在任何時候都是會加上一個新的數據信息和頁面,因此索引解決也應當具備優良的可擴展性。
4、迅速精準的查詢處理是一般用戶能見到的搜索引擎流程
當用戶在搜索框中鍵入一個查看并點擊“搜索”按鍵時,他一般會在不上一秒鐘的期限內見到搜索結論。簡單表層處理事實上涉及到非常復雜的情況解決。在前的查看環節,較為主要的關鍵是怎樣在不上一秒鐘的期限內從數、數千萬乃至數千萬個包括搜索詞的頁面中迅速尋找較為有效、有關的頁面,并依據相關性和管理權限開展排序。
5、分辨用戶用意和人工智能技術
應該說,搜索引擎的前四個考驗早已可以更切實解決,可是對用戶用意的判定還處在初始階段。不一樣的用戶搜索同樣的查看詞,可能搜索不一樣的具體內容。比如,在搜索“蘋果公司”時,用戶是想要知道蘋果的果實,或是蘋果筆記本,或是想要知道影片“蘋果公司”的數據?或是他要聽“蘋果公司”?并沒有前后文,并沒有對用戶的本人搜索習慣性的了解,他就沒法分辨。
搜索引擎現階段已經依據用戶的搜索習慣性、數據的累積和詞義搜索技術性來分辨搜索用意、了解文本文檔的真正意義和回到更有關的結論。