




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、開源的搜索引擎工具包和web搜索引擎系統(tǒng)-austin liusfashion -博客園開源搜索引擎工具包1. LuceneLucene是目前最為流行的開放源代碼全文搜索引擎工具包, 隸屬于Apache基金會,由資深全文索引/檢索專家DougCutting所發(fā)起,并以其妻子的中間名作為項目的名稱。Lucene不是一個具有完整特征的搜索應(yīng)用程序,而是一個專 注于文本索引和搜索的工具包,能夠為應(yīng)用程序添加索引與搜索能力。基于Lucene在索引及搜 索方面的優(yōu)秀表現(xiàn),雖然由Java編寫的Lucene具有天生的 跨平臺性,但仍被改編為許多其他語言的版本:Perl、Python、C+、.Net等。同其他
2、開源項目一樣,Lucene具有非常好的架構(gòu),能夠方便 地在其基礎(chǔ)上進行研究與開發(fā),添加新功能或者開發(fā)新系 統(tǒng)。Lucene本身只支持文本文件及少量語種的索引,并且不具備 爬蟲功能,而這正是Lucene的魅力所在,通過Lucene提供 的豐富接口,我們可以根據(jù)自身的需要在其上添加具體語言的分詞器,針對具體文檔的文本解析器等,而這些具體的功能實現(xiàn)都可以借助于一些已有的相關(guān)開源軟件項目、甚至是商業(yè)軟件來完 成,這也保證了 Lucene在索引及搜索方面的專注性。目前, 通過在Lucene的基礎(chǔ)上加入爬行器、文本解析器等也形成了 一些新的開源項目,如LIUS、Nutch等。并且Lucene的索引數(shù)據(jù)結(jié)構(gòu)
3、已經(jīng)成了一種 事實上的標準,為許多搜索引擎所采用。2. LIUSLIUS 艮口 Lucene Index Update andSearch的縮寫,它是以Lucene為基礎(chǔ)發(fā)展起來的一種文本索 引框架,和Lucene 一樣,同樣可以看作搜索引擎開發(fā)工具包。 它在Lucene的基礎(chǔ)上作了一些相應(yīng)的研究及添加了一些新的功能。LIUS借 助于許多開源軟件,可以直接對各種不同格式/類型的文檔進 行文本解析與索引,這些文檔格式包括MS Word、MS Excel、MS PowerPoing、RTF、PDF、XML、HTML、TXT、OpenOffice 及 JavaBeans 等,對 JavaBeans的
4、支持對于進行數(shù)據(jù)庫索引非常有用,在用戶進行對象關(guān)系映射(如:Hibernate JDO、TopLink、Torque等)的 數(shù)據(jù)庫連接編程時會變得更加精確。LIUS還在Lucene的基礎(chǔ)上增加了索引更新功能,使針對索引的維護功能進一步完善。并且支 持混和索引,可以把同一目錄下與某一條件相關(guān)的所有內(nèi)容整合到一起,這種功能對于需要對多 種不同格式的文檔同時進行索引時非常有用。 EgothorEgothor是一款開源的高性能全文搜索引擎,適用于基于全 文搜索功能的搜索應(yīng)用,它具有與Luccene類似的核心算 法,這個項目已經(jīng)存在了很多年,并且擁有一些積極的開發(fā) 人員及用戶團體。項目發(fā)起者LeoGal
5、ambos是捷克布拉格查理大學數(shù)學與物理學院的一名高 級助理教授,他在博士研究生期間發(fā)起了此項目。更多的時候,我們把Egothor看作一個用于全文搜索引擎的 Java庫,能夠為具體的應(yīng)用程序添加全文搜索功能。它提供 了擴展的Boolean模塊,使得它能被作為Boolean模塊或者 Vector模塊使用,并且Egothor具有一些其他搜索引擎所不 具有的特有功能:它采用新的動態(tài)算法以有效提高索引更新的速度,并且支持 平行的查詢方式,可有效提高查詢效率。在Egothor的發(fā)行 版中,加入了爬行器、文本解析器等許多增強易用性的應(yīng)用程序,融入了 Golomb、Elias-Gamma等 多種高效的壓縮方
6、法,支持多種常用文檔格式的文本解析, 如 HTML、PDF、PS、微軟Office文檔、XLS等,提供了 GUI的索引界面及 基于Applet或者Web的查詢方式。另外,Egothor還能被方 便地配置成獨立的搜索引擎、元數(shù)據(jù)搜索器、點對點的HUB等多種且體的應(yīng) 用系統(tǒng)。 XapianXapian是基于GPL發(fā)布的搜索引擎開發(fā)庫,它采用C+語 言編寫,通過其提供綁定程序包可以使Perl、Python、PHP、 Java、Tck、C#、Ruby等語言方便地使用它。Xapian還是一個具有高適應(yīng)性的工具集,使開發(fā)人員能夠方 便地為他們的應(yīng)用程序添加高級索引及搜索功能。它支持信 息檢索的概率模型及豐
7、富的布爾查詢操作。Xapian的發(fā)布包通常 由兩部分組成:xapian-core及xapian-bindings,前者是核心 主程序,后者是與其他語言進行綁定的程序包。Xapian為程序開發(fā)者提供了豐富的API及文檔進行程序的編 制,而且還提供了許多編程實例及一個基于Xapian的應(yīng) 用程序Omega,Omega由索引器及基于CGI的前端搜索組 成,能夠為 HTML、PHP、PDF、PostScript、OpenOffice/StarOffice、RTF等多種格式的文檔編制索引,通 過使用PerlDBI 模塊甚至能為 MySQL、PostgreSQL、SQLite、Sybase MSSQL、L
8、DAP、ODBC等關(guān)系數(shù)據(jù)庫編制索引,并能以CSV 或XML格式從前端導(dǎo)出搜索結(jié)果,程序開發(fā)者可以在此基 礎(chǔ)上進行擴展。 CompassCompass是在Lucene上實現(xiàn)的開源搜索引擎架構(gòu),相對比于 Lucene而言,提供更加簡潔的搜索引擎API。增加了索引事務(wù)處理的支持,使其能夠更方便地與數(shù)據(jù)庫等事 務(wù)處理應(yīng)用進行整合。它更新時無需刪除原文檔,更加簡單 更加高效。資源與搜索引擎之間采用映射機制,此種機制使得那些已經(jīng)使用了 Lucene或者不支持對象及 XML的應(yīng)用程序遷移到Compass上進行開發(fā)變得非常容易。 Compass還能與Hibernate Spring等架構(gòu)進行集成,因此如 果
9、想在Hibernate Spring項目中加入搜索引擎功能,Compass 是個極好的選擇。開源Web搜索引擎系統(tǒng)1. NutchNutch 是 Lucene 的作者 DougCutting發(fā)起的另一個開源項目,它是構(gòu)建于Lucene基礎(chǔ)上 的完整的Web搜索引擎系統(tǒng),雖然誕生時間不長,但卻以其 優(yōu)良血統(tǒng)及簡潔方便的使用方式而廣收歡迎。我們可以使用Nutch搭建類似Google的完整 的搜索引擎系統(tǒng),進行局域網(wǎng)、互聯(lián)網(wǎng)的搜索。2. YaCyYaCy是一款基于P2P(peer-to-peer)的分布式開源Web搜索引 擎系統(tǒng),采用Java語言進行編寫,其核心是分布在數(shù)百臺計算機上的被稱為YaCy
10、-peer的計算機程 序,基于P2P網(wǎng)絡(luò)構(gòu)成了 YaCy網(wǎng)絡(luò),整個網(wǎng)絡(luò)是一個分散 的架構(gòu),在其中所有的YaCy-peers都處于對等的地位,沒有統(tǒng)一的中心服務(wù)器,每 個YaCy-peer都能獨立的進行互聯(lián)網(wǎng)的爬行抓取、分析及創(chuàng) 建索引庫,通過P2P網(wǎng)絡(luò)與其他YaCy-peers進行共享,并且每個YaCy-peer又都是 一個獨立的代理服務(wù)器,能夠?qū)Ρ緳C用戶使用過的網(wǎng)頁進行 索引,并且采取多機制來保護用戶的隱私,同時用戶也通過本機運行的Web服務(wù)器進 行查詢及返回查詢結(jié)果。YaCy搜索引擎主要包括五個部分,除普通搜索引擎所具有 的爬行器、索引器、反排序的索引庫外,它還包括了一個非 常豐富的搜索與
11、管理界面以及用于數(shù)據(jù)共享的P2P網(wǎng)絡(luò)。開 源桌面搜索引擎系統(tǒng)1. Regainregain是一款與Web搜索引擎類似的桌面搜索引擎系統(tǒng),其不同之處在于regain不是對Internet內(nèi)容的搜索,而是針對自己的文檔或文件的搜索,使用regain可以輕 松地在幾秒內(nèi)完成大量數(shù)據(jù)(許多個6)的搜索。Regain采 用了 Lucene的搜索語法,因此支持多種查詢方式,支持多索引的搜索及基于文件類型 的高級搜索,并且能實現(xiàn)URL重寫及文件到HTTP的橋接, 并且對中文也提供了較好的支持。Regain提供了兩種版本:桌面搜索及服務(wù)器搜索。桌面搜索 提供了對普通桌面計算機的文檔與局域網(wǎng)環(huán)境下的網(wǎng)頁的 快速
12、搜索。服務(wù)器版本主要安裝在Web服務(wù)器上,為網(wǎng)站及 局域網(wǎng)環(huán)境下的文件服務(wù)器進行搜索。Regain使用Java編寫,因此可以實現(xiàn)跨平臺安裝,能安裝于Windows Linux、MacOS及Solaris上。服務(wù)器版本需要JSPs環(huán)境及標簽庫(tag library),因此需要安裝一個Tomcat容器。而桌面版自帶了 一個小型的Web服務(wù)器,安裝非常簡單。2 ZilverlineZilverline是一款以Lucene為基礎(chǔ)的桌面搜索引擎,采用了 Spring框架,它主要用于個人本地磁盤及局域網(wǎng)內(nèi)容的搜索,支持多種語言,并且具有自己的中文名字: 銀錢查打引擎。Zilverline提供了豐富的文檔格式的索引支 持,如微軟Office文檔、RTF、Java、CHM等,甚至能夠為歸檔文件編制索引進行搜 索,如zip、rar及其他歸檔文件,在索引過程中,Zilverline 從 zip、rar、chm等歸檔文件中抽取文件來編制索引。Zilverline可以 支持增量索引的方式,只對新文件編制索引,同時也支持定 期自動索引,其索引庫能被存放于Zilverline能夠訪問到的地方,甚至是DVD中。同 時,Zilverline還支持文件路徑到URL的映射,這樣可以使 用戶遠程搜索本地文件。Zilverline提供了個人及研究、商業(yè)應(yīng)用兩種許可方式,其發(fā) 布形式為一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)業(yè)生產(chǎn)安全技術(shù)方案
- 大數(shù)據(jù)風控系統(tǒng)開發(fā)合同
- 代理委托消防合同
- 兩個孩子一人一個離婚協(xié)議書
- 勞務(wù)班組施工合同
- 網(wǎng)絡(luò)文學版權(quán)授權(quán)合作協(xié)議
- 青島版(2024)小學信息技術(shù)第二冊《第8課 智能互聯(lián)更高效》教學設(shè)計
- 閩教版(2020)信息技術(shù)三年級上冊《第8課 輸入法要選擇》教學設(shè)計
- 寵物醫(yī)院異味處理協(xié)議
- 第三方債權(quán)轉(zhuǎn)讓協(xié)議6篇
- 象數(shù)療法好療效
- A320系列飛行訓練課程:電子飛行儀表系統(tǒng)概況
- 黃土地質(zhì)災(zāi)害類型及其危害性評估
- 交際德語教程第二版A1Studio[21] 課后習題參考答案
- 氣割、電氣焊作業(yè)的應(yīng)急救援預(yù)案
- 超級精美PPT模版美國經(jīng)典ppt模板(通用珍藏版2)
- 施工現(xiàn)場應(yīng)急處置方案
- 陰符咒術(shù)(基本知識--畫符)
- 氣動控制閥的定義分類及工作原理詳解
- DZW中文說明書
- IATF事態(tài)升級管理程序
評論
0/150
提交評論