一、web搜尋引擎技術綜述
二、google技術
四、結束語
搜尋引擎(search engine)是指根據一定的策略、運用特定的電腦程式蒐集網際網路上的資訊,在對資訊進行組織和處理後,為使用者提供檢索服務的系統。
一、 web搜尋引擎技術綜述
(一) 、引子
隨著網路技術的應用與發展,互連網已經成為資訊的重要**地。搜尋引擎以一定的策略在網際網路中蒐集、發現資訊,對資訊進行理解、提取、組織和處理,並為使用者提供檢索服務,從而起到資訊導航的目的,網際網路使用者使用網路獲取資訊過程中,搜尋引擎也成為必不可少的工具。調查表明,當前的所有互連網應用中,網路資訊搜尋是僅次於電子郵件的第二大應用,而這些搜尋絕大多數是專門的,高度複雜的搜尋引擎實現的。
按照資訊蒐集方法和服務提供方式的不同,搜尋引擎系統可以分為三大類:
① 目錄式搜尋引擎,以人工方式或半自動方式蒐集資訊,由編輯員檢視資訊之後,人工形成資訊摘要,並將資訊置於事先確定的分類框架中,由於web資訊的海量性和人工處理能力、經濟代價的限制,這類搜尋引擎資訊的即時性和全面性難以保證它的優秀代表是yahoo等;
② 機械人搜尋引擎,由乙個稱為蜘蛛(spider)的機械人程式以某種策略自動地在網際網路中蒐集和發現資訊,由索引器為蒐集到的資訊建立索引,由檢索器根據使用者的查詢輸入檢索索引庫,並將查詢結果返回給使用者,這類搜尋引擎實現較為複雜,但能很好的實現資訊的全面獲取和即時更新,它的優秀代表是google等,後文如非特別說明,都指這類搜尋引擎;
③ 元搜尋引擎,這類搜尋引擎沒有自己的資料,而是將使用者的查詢請求同時向多個搜尋引擎遞交,將返回的結果進行重複排除、重新排序等處理後,作為自己的結果返回給使用者,這類搜尋引擎兼集多個搜尋引擎的資訊,並且加入新的排序和資訊過濾,可以很好的提高使用者滿意度。
(二) 、web搜尋引擎的原理和實現
web搜尋引擎的原理通常為:首先是用蜘蛛(spider)進行全網搜尋,自動抓取網頁;然後將抓取的網頁進行索引,同時也會記錄與檢索有關的屬性,中文搜尋引擎中還需要首先對中文進行分詞;最後,接受使用者查詢請求,檢索索引檔案並按照各種引數進行複雜的計算,產生結果並返回給使用者。
1.利用網路蜘蛛獲取網路資源
這是一種半自動化的資源(由於此時尚未對資源進行分析和理解,不能成為資訊而僅是資源)獲取方式。所謂半自動化,是指搜尋器需要人工指定起始網路資源url(uniform resource locator),然後獲取該url所指向的網路資源,並分析該資源所指向的其他資源並獲取。如google的在利用蜘蛛程式獲取網路資源時,是由乙個認為管理程式負責任務的分配和結果的處理,多個分布式的蜘蛛程式從管理程式活動任務,然後將獲取的資源作為結果返回,並從新獲得任務。
2.利用索引器從搜尋器獲取的資源中抽取資訊,並建立利於檢索的索引表
當用網路蜘蛛獲取資源後,需要對這些進行加工過濾,去掉控制**及無用資訊,提取出有用的資訊,並把資訊用一定的模型表示,使查詢結果更為準確。web上的資訊一般表現為網頁,對每個網頁,須生成一摘要,此摘要將顯示在查詢結果的頁面中,告訴查詢使用者各網頁的內容概要。模型化的資訊將存放在臨時資料庫中,由於web資料的資料量極為龐大,為了提高檢索效率,須按照一定規則建立索引。不同搜尋引擎在建立索引時會考慮不同的選項,如是否建立全文索引,是否過濾無用詞彙,是否使用meta資訊等。
3.檢索及使用者互動
這部分的主要內容包括:使用者查詢(query)理解,即最大可能貼近的理解使用者通過查詢串想要表達的查詢目的,並將使用者查詢轉換化為後台檢索使用的資訊模型;根據使用者查詢的檢索模型,在索引庫中檢索出結果集;結果排序:通過特定的排序演算法,對檢索結果集進行排序。由於web資料的海量性和使用者初始查詢的模糊性,檢索結果集一般很大,而使用者一邊不會有足夠的耐性逐個檢視所有的結果,所以怎樣設計結果集的排序演算法,把使用者感興趣的結果排在前面就十分重要。
(三) 、web搜尋引擎的最新動態
當前,搜尋引擎技術已經趨於成數,使用者滿意度也保持在乙個可以接受的水平。在資訊蒐集技術,索引建立技術,檢索技術和結果集排序技術方面,最近幾年,除了google創造性的提出page rank技術,並把他用於結果排序外,基本沒有什麼突破性的進展。而搜尋引擎的研究與資訊整合逐漸融合,在這方面的研究主要集中在兩個方面:查詢擴充套件(query expansion)和結果集的動態分類。
二、 google技術
(一) google技術概論
google 秉持開發「完美的搜尋引擎」的信念,在業界獨樹一幟。所謂完美的搜尋引擎,就如公司創始人之一 larry page 所定義的那樣,可以「確解使用者之意,切返使用者之需」。為了實現這一目標,google 堅持不懈地追求創新,而不受現有模型的限制。因此,google 開發了自己的服務基礎結構和具有突破性的 page rank™ 技術,使得搜尋方式發生了根本性變化。
google 的開發人員從一開始就意識到:要以最快的速度提供最精確的搜尋結果,則需要一種全新的伺服器設定。大多數的搜尋引擎依靠少量大型伺服器,這樣,在訪問高峰期速度就會減慢,而 google 卻利用相互鏈結的 pc 來快速查詢每個搜尋的答案。 這一創新技術成功地縮短了響應時間,提高了可擴充套件性,並降低了成本。這也是其他公司一直在效仿的技術。與此同時,google 從未停止過對其後端技術的改進,以使其技術效率更高。
google 搜尋技術所依託的軟體可以同時進行一系列的運算,且只需片刻即可完成所有運算。而傳統的搜尋引擎在很大程度上取決於文字在網頁上出現的頻率。google 使用 page rank™ 技術檢查整個網路鏈結結構,並確定哪些網頁重要性最高。然後進行超文字匹配分析,以確定哪些網頁與正在執行的特定搜尋相關。在綜合考慮整體重要性以及與特定查詢的相關性之後,google 可以將最相關最可靠的搜尋結果放在首位。
⑴page rank 技術:
通過對由超過 50,000 萬個變數和 20 億個詞彙組成的方程進行計算,page rank 能夠對網頁的重要性做出客觀的評價。page rank 並不計算直接鏈結的數量,而是將從網頁 a 指向網頁 b 的鏈結解釋為由網頁 a 對網頁 b 所投的一票。這樣,page rank 會根據網頁 b 所收到的投票數量來評估該頁的重要性。此外,page rank 還會評估每個投票網頁的重要性,因為某些網頁的投票被認為具有較高的價值,這樣,它所鏈結的網頁就能獲得較高的價值。重要網頁獲得的 page rank(網頁排名)較高,從而顯示在搜尋結果的頂部。google 技術使用網上反饋的綜合資訊來確定某個網頁的重要性。搜尋結果沒有人工干預或操縱,這也是為什麼 google 會成為乙個廣受使用者信賴、不受付費排名影響且公正客觀的資訊**。
⑵超文字匹配分析:
google 的搜尋引擎同時也分析網頁內容。然而,google 的技術並不採用單純掃瞄基於網頁的文字(**發布商可以通過元標記控制這類文字)的方式,而是分析網頁的全部內容以及字型、分割槽及每個文字精確位置等因素。google 同時還會分析相鄰網頁的內容,以確保返回與使用者查詢最相關的結果。
google 的創新並不限於台式電腦。 為了確保通過可攜式裝置訪問網路的使用者能夠快速獲得精確的搜尋結果,google 還率先推出了業界第一款無線搜尋技術,以便將 html 即時轉換為針對 wap、i-mode、j-sky 和 ezweb 優化的格式。
(二) google 查詢的全過程
google 查詢的全過程通常不超過半秒時間,但在這短短的時間內需要完成多個步驟,然後才能將搜尋結果交付給搜尋資訊的使用者。
3. 瞬間返回使用者需要的搜尋結果。
1. 網路伺服器將查詢傳送到索引伺服器。索引伺服器所包含的內容與書本末尾的索引目錄相似,即說明哪些網頁包含與查詢匹配的文字。
2.查詢傳輸到文件伺服器,由後者實際檢索所儲存的文件。然後,生成描述每個搜尋結果的摘錄。
⑴查詢處理以及分詞技術
隨著搜尋經濟的崛起,人們開始越加關注全球各大搜尋引擎的效能、技術和日流量。網路離開了搜尋將只剩下空洞雜亂的資料,以及大量等待去費力挖掘的金礦。
⑵spelling checker拼寫檢查錯誤提示(以及拼音提示功能)
拼寫檢查: (1)使用者輸入查詢,如果是多個子字串,不作拼寫檢查; (2)對於使用者查詢,先查分詞詞典,如果發現有這個單詞詞條,ok,不作拼寫檢查; (3)如果發現詞典裡面不包含使用者查詢,啟動拼寫檢查系統;首先利用拼音標註程式對使用者輸入進行拼音標註; (4)對於標註好的拼音在同音詞詞典裡面掃瞄,如果沒有發現則不作任何提示; (5)如果發現有詞條,則按照順序輸出權重比較大的幾個提示結果;
四、 結束語
搜尋引擎原理
乙個搜尋引擎由搜尋器 索引器 檢索器和使用者介面等四個部分組成。1.搜尋器 搜尋器的功能是在網際網路中漫遊,發現和蒐集資訊。它常常是乙個電腦程式,日夜不停地執行。它要盡可能多 盡可能快地蒐集各種型別的新資訊,同時因為網際網路上的資訊更新很快,所以還要定期更新已經蒐集過的舊資訊,以避免死連線和無效連線...
搜尋引擎 原理 技術與系統
把今天的看的點知識,挑重要的記下來。搜尋引擎是什麼?搜尋引擎 說到底是乙個計算機應用軟體系統,或者說是乙個網路應用軟體系統。網路搜尋引擎 它根據使用者提交的類自然語言查詢詞或者短語,返回一系列很可能與該查詢相關的網頁資訊,供使用者進一步判斷和選取。全引自 搜尋引擎 原理 技術與系統 呵呵 網路搜尋引...
搜尋引擎檢索技術
謝海勸 如此簡單的乙個輸入框 搜尋按鈕,卻可以實現如此神奇的一站式搜尋服務,為使用者提供豐富 準確的資訊,這要歸功於乙個強勁的後台引擎。使用者可曾想過,這麼簡單的行為,後台引擎可能會有成千上萬臺機器在為你服務。搜尋引擎就像一台高效運轉的發動機,不停響應使用者的請求,輸出使用者想要的資訊。高效的檢索系...