說明
如今這個網際網路高速發展的資訊時代,誰抓住了搜尋引擎就抓住了網際網路的精髓,那就是客戶。有了客戶具有了流量 有了用戶的粘性就會促使搜尋引擎的大大普及。搜尋引擎的對人民甚至在某些方面和國家的影響力也越來越多。像google等搜尋引擎公司的搜尋對用戶是免費的但是他的搜尋引擎的核心技術不是對外開放的,這就導致搜尋引擎具有對在網際網路獲取信息的壟斷。
而開源搜尋引擎的出現就給搜尋引擎帶來了新的希望。
優點
開放原始碼搜尋引擎為人們學習、研究並掌握搜尋技術提供了極好的途徑與素材,推動了搜尋技術的普及與發展,使越來越多的人開始了解並推廣使用搜尋技術。使用開源搜尋引擎,可以大大縮短構建搜尋套用的周期,並可根據套用需求打造個性化搜尋套用,甚至構建符合特定需求的搜尋引擎系統。搜尋引擎的開源,無論是對技術人員還是普通用戶,都是一個福音。
歷史介紹
說道開源搜尋引擎不得不說到維基百科。美國時間1月7日,42歲的維基百科(Wikipedia)創始人JimmyWales正式發布維基搜尋(WikiaSearch)服務.維基百科的歷史以及1400萬美元資金的資助名單,讓人不敢小覷維基搜尋上市,但是這個與眾不同的搜尋引擎,真的能撼動谷歌、雅虎的地位嗎?
美國時間1月7日,42歲的維基百科(Wikipedia)創始人JimmyWales正式發布維基搜尋(WikiaSearch)服務.
與7年前維基百科誕生時的默默無聞不同,維基搜尋自去年7月威爾斯公開提及後就備受矚目,大家都想知道這款不同於傳統搜尋引擎的維基搜尋是否會撼動谷歌、雅虎的地位.對此,威爾斯謹慎地表示,他只是將線上百科全書的協作方法引入搜尋領域,至少短期內不會威脅到當前主流搜尋引擎.是這樣嗎?
不滿,早在意料中,儘管包括中文在內的許多語言還都無法使用,但使用過維基搜尋的人會明顯感到它的不同.如果沒有找到搜尋內容,網頁會提醒用戶“提供幫助”,也就是撰寫短文:對關鍵字進行簡要描述,比如定義、同義詞、參考短文、圖像等.這樣,其他用戶今後再搜尋時就會有更豐富的結果.這有些像維基百科,秉承“眾人拾柴火焰高”的原則,藉助民眾的力量打造一個優秀的搜尋引擎.
維基搜尋推出3天后,美國的網路雜誌《信息周刊》就發表文章表達了不少用戶對維基搜尋的不滿,但這完全在威爾斯的意料之中.作為一種搜尋引擎,特別是需要用戶大量參與的搜尋引擎,維基搜尋需要時間提供相關的搜尋結果.威爾斯說:“不要指望維基搜尋一開始就可以提供能與谷歌相媲美的搜尋結果,這根本不可能.1月7日是'軟發行',維基搜尋需要時間.”
威爾斯是一個沉得住氣的人,在他2001年推出維基百科時,幾乎沒什麼人看好這個“網上的百科全書”.1999 年10月20日價值1250美元(大約9000元人民幣)的32卷本《大英百科全書》全部上網,供人們免費查詢與下載.這在當年是轟動一時的新聞,也給 33歲的威爾斯一個靈感:建立一個真正“開放、免費”的網路百科全書.
事實上,這個靈感在他見到沃德·坎寧安 (WardCunningham)前是很難實現的.威爾斯學金融出身,他在美國印第安那大學取得經濟學博士學位,研究方向是期權定價.當他還在芝加哥的外匯市場如魚得水時,美國人坎寧安開發了一種在Web基礎上對文本進行瀏覽、創建、更改的社群協作式寫作技術,並把它命名為wiki,意為“快點快點”的夏威夷語縮寫.
2001年,威爾斯把wiki技術變成了維基百科全書,英文版的維基百科全書於當年1月15日正式問世.在短短一個月時間內,維基的條目達到了200條,一年之後增加到1.8萬條.2004年9月,維基百科全書的條目達到100 萬條,此時它的投資總額達到50萬美元,其中大部分是威爾斯的個人投資,主要源於他早年在芝加哥金融市場的建樹.
維基百科經過時間的長期沉澱,體現出了巨大價值.威爾斯憑藉社區的影響力把維基百科打造成了一家知名的網路信息源.他說:“維基百科剛開始也是一無所有,經過7年的發展壯大,維基百科已經成了網際網路領域第8大網站.如果用戶有一種擁有者的感覺,那么他們就會繼續使用該工具,這就是我們所要努力的方向.”
回顧維基百科的歷史,讓人不敢小覷威爾斯的每一步探索.他在2004年成立了營利性公司WikiaInc.( 而維基百科是非營利性的),提供可以讓任何人輕鬆搭建維基系統的軟體平台,維基搜尋就是該公司的項目之一.威爾斯在進軍搜尋領域前,並不指望叫板谷歌.但他有著自己的打算:改變用戶網路搜尋的方式.
維基搜尋1400萬美元資金的資助名單似乎意味著業界十分看好這款搜尋引擎:亞馬遜(提供1000萬美元)、貝西默風險投資合伙人公司(BessemerVenturePartners)、網景通訊公司 (NetscapeCommunications) 創始人之一馬克·安德森(MarcAndreesen)、美國第六大社交網站LinkedIn的創始人之一里德·霍夫曼(ReidHoffman)、蓮花發展公司(LotusDevelopment)的創始人兼電子前沿基金會(ElectronicFrontierFoundation) 的創始人之一米切爾·卡普爾(MitchKapor).
搜尋引擎
一些開源搜尋引擎系統介紹,包含開源Web搜尋引擎和開源桌面搜尋引擎。
Sphider
Sphider是一個輕量級,採用PHP開發的web spider和搜尋引擎,使用mysql來存儲數據。可以利用它來為自己的網站添加搜尋功能。Sphider非常小,易於安裝和修改,已經有數千網站在使用它。
RiSearch PHP
RiSearch PHP是一個高效,功能強大的搜尋引擎,特別適用於中小型網站。RiSearch PHP非常快,它能夠在不到1秒鐘內搜尋5000-10000個頁面。RiSearch是一個索引搜尋引擎,這就意味著它先將你的網站做索引並建立一個資料庫來存儲你網站所有頁面的關鍵字以便快速搜尋。Risearch是全文搜尋引擎腳本,它把所有的關鍵字都編成一個文檔索引除了配置檔案裡面的定義排除的關鍵字。 RiSearch使用經典的反向索引算法(與大型的搜尋引擎相同),這就是為什麼它會比其它搜尋引擎快的原因。
PhpDig
PhpDig是一個採用PHP開發的Web爬蟲和搜尋引擎。通過對動態和靜態頁面進行索引建立一個辭彙表。當搜尋查詢時,它將按一定的排序規則顯示包含關鍵字的搜尋結果頁面。PhpDig包含一個模板系統並能夠索引PDF,Word,Excel,和PowerPoint文檔。PHPdig適用於專業化更強、層次更深的個性化搜尋引擎,利用它打造針對某一領域的垂直搜尋引擎是最好的選擇。
OpenWebSpider
OpenWebSpider是一個開源多執行緒Web Spider(robot:機器人,crawler:爬蟲)和包含許多有趣功能的搜尋引擎。
Egothor
Egothor是一個用Java編寫的開源而高效的全文本搜尋引擎。藉助Java的跨平台特性,Egothor能套用於任何環境的套用,既可配置為單獨的搜尋引擎,又能用於你的套用作為全文檢索之用。
Nutch
Nutch 是一個開源Java 實現的搜尋引擎。它提供了我們運行自己的搜尋引擎所需的全部工具。包括全文搜尋和Web爬蟲。
Apache Lucene
Lucene是一個基於Java全文搜尋引擎,利用它可以輕易地為Java軟體加入全文搜尋功能。Lucene的最主要工作是替檔案的每一個字作索引,索引讓搜尋的效率比傳統的逐字比較大大提高,Lucen提供一組解讀,過濾,分析檔案,編排和使用索引的API,它的強大之處除了高效和簡單外,是最重要的是使使用者可以隨時應自己需要自訂其功能。
Oxyus
Oxyus是一個純java寫的web搜尋引擎。
BDDBot
BDDBot是一個簡單的易於理解和使用的搜尋引擎。它如今在一個文本檔案(urls.txt)列出的URL中爬行,將結果保存在一個資料庫中。它也支持一個簡單的Web伺服器,這個伺服器接受來自瀏覽器的查詢並返迴響應結果。它可以方便地集成到你的Web站點中。
Zilverline
Zilverline是一個搜尋引擎,它通過web方式搜尋本地硬碟或intranet上的內容。Zilverline可以從PDF, Word, Excel, Powerpoint, RTF, txt, java, CHM,zip, rar等文檔中抓取它們的內容來建立摘要和索引。從本地硬碟或intranet中查找到的結果可重新再進行檢索。Zilverline支持多種語言其中包括中文。
XQEngine
XQEngine用於XML文檔的全文本搜尋引擎。利用XQuery做為它的前端查詢語言。它能夠讓你查詢XML文檔集合通過使用關鍵字的邏輯組合。有點類似於Google與其它搜尋引擎搜尋HTML文檔一樣。XQEngine只是一個用Java開發的很緊湊的可嵌入的組件。
MG4J
MG4J可以讓你為大量的文檔集合構建一個被壓縮的全文本索引,通過使內插編碼(interpolative coding)技術。
JXTA Search
JXTA Search是一個分散式的搜尋系統。設計用在點對點的網路與網站上。
YaCy
YaCy基於p2p的分散式Web搜尋引擎。同時也是一個Http快取代理伺服器。這個項目是構建基於p2p Web索引網路的一個新方法。它可以搜尋你自己的或全局的索引,也可以Crawl自己的網頁或啟動分散式Crawling等。
Red-Piranha
Red-Piranha是一個開源搜尋系統,它能夠真正”學習”你所要查找的是什麼。Red-Piranha可作為你桌面系統(Windows,Linux與Mac)的個人搜尋引擎,或企業內部網搜尋引擎,或為你的網站提供搜尋功能,或作為一個P2P搜尋引擎,或與wiki結合作為一個知識/文檔管理解決方案,或搜尋你要的RSS聚合信息,或搜尋你公司的系統(包括SAP,Oracle或其它任何Database/Data source),或用於管理PDF,Word和其它文檔,或作為一個提供搜尋信息的WebService或為你的應用程式(Web,Swing,SWT,Flash,Mozilla-XUL,PHP, Perl或c#/.Net)提供搜尋後台等等。
LIUS
LIUS是一個基於Jakarta Lucene項目的索引框架。LIUS為Lucene添加了對許多檔案格式的進行索引功能如:Ms Word,Ms Excel,Ms PowerPoint,RTF,PDF,XML,HTML,TXT,Open Office序列和JavaBeans.針對JavaBeans的索引特別有用當我們要對資料庫進行索引或剛好用戶使用持久層ORM技術如:Hibernate,JDO,Torque,TopLink進行開發時。
Apache Solr
Apache Solr是一個高性能,採用Java5開發,基於Lucene的全文搜尋伺服器。文檔通過Http利用XML加到一個搜尋集合中。查詢該集合也是通過 http收到一個XML/JSON回響來實現。它的主要特性包括:高效、靈活的快取功能,垂直搜尋功能,高亮顯示搜尋結果,通過索引複製來提高可用性,提供一套強大Data Schema來定義欄位,類型和設定文本分析,提供基於Web的管理界面等。
Paoding
Paoding中文分詞是一個使用Java開發的,可結合到Lucene套用中的,為網際網路、企業內部網使用的中文搜尋引擎分詞組件。 Paoding填補了國內中文分詞方面開源組件的空白,致力於此並希翼成為網際網路網站首選的中文分詞開源組件。 Paoding中文分詞追求分詞的高效率和用戶良好體驗。
Carrot2
Carrot2是一個開源搜尋結果分類引擎。它能夠自動把搜尋結果組織成一些專題分類。Carrot2提供的一個架構能夠從各種搜尋引擎(YahooAPI、GoogleAPI、MSN Search API、eTools Meta Search、Alexa Web Search、PubMed、OpenSearch、Lucene index、SOLR)獲取搜尋結果。
Regain
Regain是一款與Web搜尋引擎類似的桌面搜尋引擎系統,其不同之處在於regain不是對Internet內容的搜尋,而是針對自己的文檔或檔案的搜尋,使用regain可以輕鬆地在幾秒內完成大量數據(許多個G)的搜尋。Regain採用了Lucene的搜尋語法,因此支持多種查詢方式,支持多索引的搜尋及基於檔案類型的高級搜尋,並且能實現URL重寫及檔案到HTTP的橋接,並且對中文也提供了較好的支持。
Regain提供了兩種版本:桌面搜尋及伺服器搜尋。桌面搜尋提供了對普通桌面計算機的文檔與區域網路環境下的網頁的快速搜尋。伺服器版本主要安裝在Web伺服器上,為網站及區域網路環境下的檔案伺服器進行搜尋。