這篇文章中,我們介紹了google,它是一個大型的搜索引擎(of a large-scale search engine)的原型,搜索引擎在超文本中應用廣泛。Google的設計能夠高效地抓網頁并建立索引,它的查詢結果比其它現有系統都高明。這個原型的全文和超連接的數據庫至少包含24′000′000個網頁。我們可以從http://google.stanford.edu/ 下載。

設計搜索引擎是一項富有挑戰性的工作。搜索引擎為上億個網頁建立索引,其中包含大量迥然不同的詞匯。而且天天要回答成千上萬個查詢。在網絡中,盡管大型搜索引擎非常重要,但是學術界卻很少研究它。此外由于技術的快速發展和網頁的大量增加,現在建立一個搜索引擎和三年前完全不同。

本文具體介紹了我們的大型搜索引擎,據我們所知,在公開發表的論文中,這是第一篇描述地如此具體。除了把傳統數據搜索技術應用到如此大量級網頁中所碰到的問題,還有許多新的技術挑戰,包括應用超文本中的附加信息改進搜索結果。

本文將解決這個問題,描述如何運用超文本中的附加信息,建立一個大型實用系統。任何人都可以在網上隨意發布信息,如何有效地處理這些無組織的超文本集合,也是本文要關注的問題。

要害詞 World Wide Web,搜索引擎,信息檢索,PageRank, Google

1 緒論

Web給信息檢索帶來了新的挑戰。Web上的信息量快速增長,同時不斷有毫無經驗的新用戶來體驗Web這門藝術。人們喜歡用超級鏈接來網上沖浪,通常都以象Yahoo這樣重要的網頁或搜索引擎開始。大家認為List(目錄)有效地包含了大家感愛好的主題,但是它具有主觀性,建立和維護的代價高,升級慢,不能包括所有深奧的主題。基于要害詞的自動搜索引擎通常返回太多的低質量的匹配。使問題更遭的是,一些廣告為了贏得人們的關注想方設法誤導自動搜索引擎。我們建立了一個大型搜索引擎解決了現有系統中的很多問題。應用超文本結構,大大提高了查詢質量。我們的系統命名為google,取名自googol的通俗拼法,即10的100次方,這和我們的目標建立一個大型搜索引擎不謀而合。

1.1網絡搜索引擎—升級換代(scaling up):

1994-2000 搜索引擎技術不得不快速升級(scale dramatically)跟上成倍增長的web數量。
1994年,第一個Web搜索引擎,World Wide Web Worm(WWWW)可以檢索到110,000個網頁和Web的文件。
到1994年11月,頂級的搜索引擎聲稱可以檢索到2‘000′000(WebCrawler)至100‘000′000個網絡文件(來自 Search Engine Watch)。
可以預見到2000年,可檢索到的網頁將超過1‘000′000‘000。同時,搜索引擎的訪問量也會以驚人的速度增長。
在1997年的三四月份,World Wide Web Worm 平均天天收到1500個查詢。
在1997年11月,Altavista 聲稱它天天要處理大約20′000′000個查詢。隨著網絡用戶的增長.
到2000年,自動搜索引擎天天將處理上億個查詢。我們系統的設計目標要解決許多問題,包括質量和可升級性,引入升級搜索引擎技術(scaling search engine technology),把它升級到如此大量的數據上。

1.2 Google:

跟上Web的步伐(Scaling with the Web)建立一個能夠和當今web規模相適應的搜索引擎會面臨許多挑戰。抓網頁技術必須足夠快,才能跟上網頁變化的速度(keep them up to date)。存儲索引和文檔的空間必須足夠大。索引系統必須能夠有效地處理上千億的數據。處理查詢必須快,達到每秒能處理成百上千個查詢(hundreds to thousands per second.)。隨著Web的不斷增長,這些任務變得越來越艱巨。然而硬件的執行效率和成本也在快速增長,可以部分抵消這些困難。還有幾個值得注重的因素,如磁盤的尋道時間(disk seek time),操作系統的效率(operating system robustness)。在設計Google的過程中,我們既考慮了Web的增長速度,又考慮了技術的更新。Google的設計能夠很好的升級處理海量數據集。它能夠有效地利用存儲空間來存儲索引。優化的數據結構能夠快速有效地存取(參考4.2節)。進一步,我們希望,相對于所抓取的文本文件和HTML網頁的數量而言,存儲和建立索引的代價盡可能的小(參考附錄B)。對于象Google這樣的集中式系統,采取這些措施得到了令人滿足的系統可升級性(scaling properties)。

1. 3設計目標

1.3.1提高搜索質量我們的主要目標是提高Web搜索引擎的質量。
1994年,有人認為建立全搜索索引(a complete search index)可以使查找任何數據都變得輕易。根據Best of the Web 1994 — Navigators ,“最好的導航服務可以使在Web上搜索任何信息都很輕易(當時所有的數據都可以被登錄)”。然而1997年的Web就迥然不同。近來搜索引擎的用戶已經證實索引的完整性不是評價搜索質量的唯一標準。用戶感愛好的搜索結果往往湮沒在“垃圾結果Junk result”中。實際上,到1997年11月為止,四大商業搜索引擎中只有一個能夠找到它自己(搜索自己名字時返回的前十個結果中有它自己)。導致這一問題的主要原因是文檔的索引數目增加了好幾個數量級,但是用戶能夠看的文檔數卻沒有增加。用戶仍然只希望看前面幾十個搜索結果。因此,當集合增大時,我們就需要工具使結果精確(在返回的前幾十個結果中,有關文檔的數量)。由于是從成千上萬個有點相關的文檔中選出幾十個,實際上,相關的概念就是指最好的文檔。高精確非常重要,甚至以響應(系統能夠返回的有關文檔的總數)為代價。令人興奮的是利用超文本鏈接提供的信息有助于改進搜索和其它應用。尤其是鏈接結構和鏈接文本,為相關性的判定和高質量的過濾提供了大量的信息。Google既利用了鏈接結構又用到了anchor文本(見2.1和2.2 節)。

1.3.2搜索引擎的學術研究隨著時間的流逝,除了發展迅速,Web越來越商業化。

1993年,只有1.5%的Web服務是來自.com域名。到1997年,超過了60%。同時,搜索引擎從學術領域走進商業。到現在大多數搜索引擎被公司所有,很少技公開術細節。這就導致搜索引擎技術很大程度上仍然是暗箱操作,并傾向做廣告(見附錄A)。Google的主要目標是推動學術領域在此方面的發展,和對它的了解。另一個設計目標是給大家一個實用的系統。應用對我們來說非常重要,因為現代網絡系統中存在大量的有用數據(us because we think some of the most interesting research will involve leveraging the vast amount of usage data that is available from modern web systems)。例如,天天有幾千萬個研究。然而,得到這些數據卻非常困難,主要因為它們沒有商業價值。我們最后的設計目標是建立一個體系結構能夠支持新的關于海量Web數據的研究。為了支持新研究,Google以壓縮的形式保存了實際所抓到的文檔。設計google的目標之一就是要建立一個環境使其他研究者能夠很快進入這個領域,處理海量Web數據,得到滿足的結果,而通過其它方法卻很難得到結果。系統在短時間內被建立起來,已經有幾篇論文用到了 Google建的數據庫,更多的在起步中。我們的另一個目標是建立一個宇宙空間實驗室似的環境,在這里研究者甚至學生都可以對我們的海量Web數據設計或做一些實驗。


arrow
arrow

    EMBA的小眼睛 發表在 痞客邦 留言(0) 人氣()