




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于lucene的校園網(wǎng)搜索引擎提要現(xiàn)代網(wǎng)絡(luò)信息化水平日益提高,網(wǎng)頁(yè)信息量急劇增加,搜索引擎已經(jīng)成為人們獲取所需知識(shí)的必要工具之一。本文結(jié)合校園網(wǎng)搜索引擎的具體需求,介紹校園網(wǎng)搜索引擎的整體框架。其中,lucene作為開源的檢索框架,具有很好的應(yīng)用性。關(guān)鍵詞:搜索引擎;lucene;網(wǎng)絡(luò)爬蟲;站內(nèi)搜索一、引言21世紀(jì)是網(wǎng)絡(luò)信息化的時(shí)代,網(wǎng)絡(luò)信息已經(jīng)成為人們工作與學(xué)習(xí)中不可或缺的東西。網(wǎng)絡(luò)在世界范圍內(nèi)向用戶提供信息服務(wù)及其所擁有的信息資源,但隨著網(wǎng)絡(luò)的蓬勃發(fā)展,信息數(shù)量的快速增長(zhǎng),當(dāng)今網(wǎng)絡(luò)上的這些海量信息形態(tài)各異,且分散在網(wǎng)絡(luò)中的各個(gè)角落。因此,如何從網(wǎng)絡(luò)上的海量信息中檢索出用戶所需要的信息,成
2、為了我們關(guān)注的一個(gè)重要問題。目前,雖然有了像google、百度這樣的通用搜索引擎,但是它們并不能適合人們所有的情況和需要,也沒有哪個(gè)最大最好的搜索引擎可以覆蓋所有的搜索范圍,因?yàn)椴煌娜巳悍秶枨蟮男畔①Y源也是不盡相同的。人們習(xí)慣在互聯(lián)網(wǎng)上查找信息,往往在同一個(gè)網(wǎng)站內(nèi)擁有豐富的信息資源,如何在網(wǎng)站內(nèi)部快速查找用戶所要的信息,也成為了人們當(dāng)前關(guān)注的一個(gè)焦點(diǎn)。二、搜索引擎搜索引擎是一個(gè)為用戶提供信息檢索功能的網(wǎng)絡(luò)工具。搜索引擎是隨著互聯(lián)網(wǎng)絡(luò)信息的快速增長(zhǎng),開始逐步發(fā)展起來的技術(shù)。在互聯(lián)網(wǎng)發(fā)展的最初階段,網(wǎng)站的數(shù)量相對(duì)較少,信息查找比較容易。但隨著互聯(lián)網(wǎng)技術(shù)爆炸性的發(fā)展,網(wǎng)絡(luò)上面的信息越來越多,并
3、且以各種各樣的形態(tài)存在,這時(shí)用戶便很難找到所需要的信息,一些為滿足大眾信息檢索需求的專業(yè)搜索網(wǎng)站就應(yīng)運(yùn)而出了。如今,google的巨大成功讓整個(gè)世界都把眼光投入到搜索引擎這個(gè)領(lǐng)域中,并且google在一定程度上起到了引導(dǎo)作用。google公司在2007年決定向小型網(wǎng)站提供專門的搜索服務(wù)。這些都表明小型專用的搜索引擎將在人們獲取互聯(lián)網(wǎng)信息中發(fā)揮著想當(dāng)重要的作用。三、lucenelucene是apache軟件基金會(huì)jakarta項(xiàng)目組的子項(xiàng)目,它是一個(gè)開放源碼的全文檢索工具。lucene在起初是基于java開發(fā)的,在網(wǎng)站建設(shè)中扮演的是一個(gè)全文索引工具的角色。與傳統(tǒng)的直接從數(shù)據(jù)庫(kù)中搜索記錄相比較,使
4、用lucene可以大大增加搜索引擎的性能。lucene的搜索機(jī)制是基于文件索引的,所以性能要比從數(shù)據(jù)庫(kù)中檢索更快,尤其當(dāng)數(shù)據(jù)量大的時(shí)候區(qū)別更加明顯。lucene可以及時(shí)索引所有需要的內(nèi)容,并更新和刪除它們。lucene的系統(tǒng)結(jié)構(gòu)具有良好的二次開發(fā)性能。首先它的索引格式與平臺(tái)無關(guān),其次它將各個(gè)組成部分封裝成抽象類,具體的實(shí)現(xiàn)定義為抽象類的實(shí)現(xiàn)過程,并且具有強(qiáng)烈的面向?qū)ο蟮奶卣?。(圖1)四、校園網(wǎng)的搜索引擎框架現(xiàn)代網(wǎng)絡(luò)信息化水平迅速提高,校園網(wǎng)作為一個(gè)信息核心領(lǐng)域,所涉及到的內(nèi)容也是形態(tài)各異的。本文就如何搭建一個(gè)校園網(wǎng)內(nèi)的搜索引擎,以方便在校師生快速準(zhǔn)確地查找各自所需信息的整體流程,給出詳細(xì)的介紹
5、。搜索引擎首先根據(jù)網(wǎng)站的需求選擇合適的網(wǎng)絡(luò)爬蟲,對(duì)網(wǎng)絡(luò)上的信息進(jìn)行爬取,爬取到信息之后,對(duì)其中的有用信息進(jìn)行提取,并利用lucene對(duì)所提取到的有用信息進(jìn)行索引,最終輸出與用戶查詢結(jié)果匹配度最大的信息。本文研究的校園網(wǎng)搜索引擎有三個(gè)功能模塊:信息采集模塊、信息處理模塊和信息檢索模塊。信息采集模塊,顧名思義,就是對(duì)網(wǎng)絡(luò)上的信息進(jìn)行采集,這是整個(gè)搜索引擎系統(tǒng)一項(xiàng)最初始的準(zhǔn)備工作,也是最基礎(chǔ)的工作。該搜索系統(tǒng)針對(duì)的目標(biāo)群體主要是在校師生,也就是說,要捕獲的信息主要來源于校園網(wǎng)絡(luò)。信息處理模塊,主要負(fù)責(zé)對(duì)采集到的信息進(jìn)行提取,提取到所需的有價(jià)值的信息之后并為其建立索引,為后續(xù)的信息檢索模塊構(gòu)建好索引數(shù)
6、據(jù)庫(kù)。信息檢索模塊主要負(fù)責(zé)在已構(gòu)建好的索引數(shù)據(jù)庫(kù)中查找包含用戶查詢關(guān)鍵字在內(nèi)的文本內(nèi)容,并負(fù)責(zé)用戶從搜索界面接收關(guān)鍵字以及查詢結(jié)果信息的返回工作。校園網(wǎng)的搜索引擎系統(tǒng)組織結(jié)構(gòu)圖如圖2所示。(圖2)(一)信息采集模塊。信息采集模塊是校園網(wǎng)搜索系統(tǒng)最基礎(chǔ)的組成部分,它的作用是對(duì)指定網(wǎng)站的頁(yè)面信息進(jìn)行采集,并將采集到的信息保存到數(shù)據(jù)庫(kù)中。這一部分主要依靠網(wǎng)絡(luò)爬蟲程序來實(shí)現(xiàn)。網(wǎng)絡(luò)爬蟲是一個(gè)自動(dòng)獲取網(wǎng)頁(yè)內(nèi)容的程序,它為搜索引擎從internet網(wǎng)上下載網(wǎng)頁(yè),是搜索引擎的重要組成部分。它從一個(gè)或一組初始網(wǎng)頁(yè)的url開始,獲取初始網(wǎng)頁(yè)上的url,在抓取網(wǎng)頁(yè)的過程中,不斷從當(dāng)前頁(yè)面上抽取新的url放入隊(duì)列,直
7、到滿足系統(tǒng)的一定停止條件。本文利用網(wǎng)絡(luò)爬蟲從校園網(wǎng)上抓取網(wǎng)頁(yè)url、網(wǎng)頁(yè)標(biāo)題和網(wǎng)頁(yè)文本內(nèi)容,并保存到已構(gòu)建好的本地頁(yè)面數(shù)據(jù)庫(kù)中。信息處理模塊從頁(yè)面數(shù)據(jù)庫(kù)中讀取頁(yè)面信息,分析信息內(nèi)容并為其建立索引。一個(gè)好的網(wǎng)頁(yè)爬蟲應(yīng)該具有很好的靈活性和健壯性,并且易于管理員操作管理。靈活性旨在爬蟲能夠盡可能多的適用于各種不同的場(chǎng)合。健壯性則要求爬蟲在面對(duì)各種奇怪的規(guī)則或者鏈接時(shí)具有很好的處理策略,以保證系統(tǒng)能夠正常運(yùn)作。人性化管理界面是爬蟲網(wǎng)絡(luò)是否受歡迎的一個(gè)重要評(píng)判標(biāo)準(zhǔn),越簡(jiǎn)單清晰越高效的管理系統(tǒng)會(huì)更加受到人們的歡迎。(二)信息處理模塊。lucene開源檢索框架是基于文件索引機(jī)制的,只能對(duì)文本文件進(jìn)行索引。信
8、息處理模塊主要包含3個(gè)步驟:讀取頁(yè)面內(nèi)容、頁(yè)面內(nèi)容解析和構(gòu)建索引。結(jié)構(gòu)圖如3所示。(圖3)1、讀取頁(yè)面內(nèi)容。首先,該模塊從已構(gòu)建好的頁(yè)面數(shù)據(jù)庫(kù)中提取網(wǎng)頁(yè)標(biāo)題和網(wǎng)頁(yè)文本內(nèi)容;然后將提取到的信息傳遞給下一步驟處理。2、頁(yè)面內(nèi)容解析。讀取到從頁(yè)面數(shù)據(jù)庫(kù)傳送過來的文本內(nèi)容之后,就要對(duì)其進(jìn)行解析處理了。解析就是對(duì)文本內(nèi)容進(jìn)行解釋和分析。分析在lucene中是指將文本轉(zhuǎn)換為最基本的索引項(xiàng)的一個(gè)過程。所謂的分析器就是對(duì)分析操作的封裝類。對(duì)于不同的語言,分析器所要完成的功能是不一樣的。比如,對(duì)英語來說,要將文檔字母從大寫轉(zhuǎn)換成小寫、過濾忽略詞等。校園網(wǎng)搜索引擎面對(duì)的語言主要是中文,分析器需要實(shí)現(xiàn)的就是對(duì)完整的
9、語句進(jìn)行分詞。分詞,顧名思義,就是將一段文本拆分成多個(gè)詞。在建立索引的時(shí)候,寫入索引庫(kù)中并能夠被用戶檢索的是一個(gè)個(gè)的詞條。所謂詞條就是通過分析器進(jìn)行分詞和相關(guān)處理后的文本單元項(xiàng),只有通過分詞才可能讓搜索系統(tǒng)理解用戶的檢索請(qǐng)求,進(jìn)而為其搜索相關(guān)的內(nèi)容。對(duì)于一個(gè)工作性能良好的搜索引擎來說,分詞是必不可少的一個(gè)核心模塊。分詞的質(zhì)量將直接決定搜索引擎的搜索精度,分詞的速度也將影響搜索的速度。所以,選擇一個(gè)合適的分詞器對(duì)整個(gè)系統(tǒng)的性能是至關(guān)重要的。je分詞,這是lucene中自帶的工具之一,可以很好地完成系統(tǒng)的分詞工作。je分詞的下載地址為http:/3、構(gòu)建索引。事實(shí)上,常用的索引方式有3種,分別是倒
10、排索引、后綴數(shù)組索引和簽名文檔索引。lucene采用的是倒排索引結(jié)構(gòu)。倒排索引非常符合人們的思維習(xí)慣,同時(shí)它對(duì)關(guān)鍵字檢索特別有效。倒排是一種面向單詞項(xiàng)的索引機(jī)制。通常,由詞項(xiàng)(關(guān)鍵字)和出現(xiàn)情況兩部分組成。對(duì)于索引中的每個(gè)詞項(xiàng)(關(guān)鍵字),都跟隨一個(gè)列表(位置表),用來跟蹤記錄單詞在所有文檔中出現(xiàn)過的位置。lucene中涉及兩個(gè)非常重要的概念,分別是document和field。document,解釋為文檔,在lucene中,它代表一種邏輯文件。lucene本身無法對(duì)物理文件建立索引,而只能識(shí)別并處理document類型的文件。document作為一種數(shù)據(jù)源的集合,lucene會(huì)從其中取出相關(guān)的
11、數(shù)據(jù)源內(nèi)容,并根據(jù)屬性配置進(jìn)行相應(yīng)的處理。field,我們可以理解為字段,在lucene中,是用field來表示一個(gè)一個(gè)的document數(shù)據(jù)源的。在用戶構(gòu)建完document、并為其添加如合適的field后,便可以按照lucene的索引格式將數(shù)據(jù)寫入索引文件,構(gòu)成索引文件庫(kù)。(三)用戶檢索模塊。在建立好索引庫(kù)之后,用戶就可以根據(jù)索引進(jìn)行檢索了。在lucene中,搜索引擎在接收到用戶檢索關(guān)鍵字后,首先會(huì)對(duì)關(guān)鍵字進(jìn)行分析,然后在已建立好的索引庫(kù)中進(jìn)行搜索,搜索完畢后,將與關(guān)鍵字最相關(guān)的內(nèi)容返回給用戶。搜索的具體步驟如下:第一步:初始化檢索工具indexsearcher,設(shè)置索引存放路徑。inde
12、xsearcher searcher=new indexsearcher(index_store_path);第二步:構(gòu)建一個(gè)query對(duì)象。term t=new term(”a”,”b”);query q=new query(t);其總a是document文檔,b是用戶要檢索的關(guān)鍵字。第三步:檢索并返回查詢結(jié)果。執(zhí)行完這三個(gè)步驟,用戶將會(huì)得到所輸入關(guān)鍵字的相關(guān)結(jié)果。五、結(jié)束語本文對(duì)校園網(wǎng)的搜索引擎框架做了一個(gè)整體的介紹。現(xiàn)代網(wǎng)絡(luò)信息以多樣化的形式快速增長(zhǎng),互聯(lián)網(wǎng)用戶想要得到自己所需要的信息,搜索引擎起著至關(guān)重要的作用。當(dāng)代社會(huì)分工不同,人們所關(guān)注的信息產(chǎn)業(yè)范圍也不盡相同,所需要的信息也越發(fā)的呈現(xiàn)出模塊化,分屬于不同的站。站內(nèi)搜索將越來越受到人們的關(guān)注,具有很好的研究?jī)r(jià)值和前景。主要參考文獻(xiàn):1車東.lucene:基于java的全文檢索引擎簡(jiǎn)介ol.2008-11-24.http:/2薛宇星.基于heritrix和lucene的web站內(nèi)搜索系統(tǒng)d.西安:西安電子科技大學(xué),2008.3
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 土地驗(yàn)收檢查方案(3篇)
- 教研活動(dòng)競(jìng)標(biāo)方案(3篇)
- 商鋪拆遷定價(jià)方案(3篇)
- 球館裝修規(guī)劃方案(3篇)
- 協(xié)商經(jīng)費(fèi)分?jǐn)偡桨?3篇)
- 故宮木器修繕方案(3篇)
- DB23-T3036-2021-篤斯越桔野生資源調(diào)查技術(shù)規(guī)程-黑龍江省
- 鄉(xiāng)村小院低價(jià)改造方案(3篇)
- DB23-T2890-2021-元蘑林下栽培技術(shù)規(guī)程-黑龍江省
- DB23-T2879-2021-藍(lán)靛果與中藥材赤芍復(fù)合種植技術(shù)規(guī)程-黑龍江省
- 鐵路貨物運(yùn)價(jià)規(guī)則
- 《工逆向工程與增材制造》課件-19. Geomagic Design X 實(shí)體建模方法
- 2024低空經(jīng)濟(jì)場(chǎng)景白皮書
- 腦機(jī)接口課件
- 《“無廢商業(yè)街區(qū)(商圈)”建設(shè)技術(shù)規(guī)范》編制說明
- 【MOOC】中國(guó)稅法:案例·原理·方法-暨南大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 光伏項(xiàng)目運(yùn)維服務(wù)承包合同5篇
- 《汽車基礎(chǔ)知識(shí)培訓(xùn)》課件
- DB14-T 2855-2023 扁穗冰草種子生產(chǎn)技術(shù)規(guī)程
- 游泳池緊急救援管理制度
- 胰島素皮下注射標(biāo)準(zhǔn)解讀
評(píng)論
0/150
提交評(píng)論