freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于lucene本地搜索程序概要設(shè)計-文庫吧

2025-04-17 18:37 本頁面


【正文】 ....................................... 20 4 前景 隨著信息技術(shù)不斷發(fā)展、互聯(lián)網(wǎng)信息不斷豐富,搜索引擎的發(fā)展速度也越來越快,目前僅 Google 收錄的網(wǎng)頁就超過 80 億。伴隨著搜索引擎的飛速發(fā)展,相 應(yīng)的瓶頸問題也開始出現(xiàn):索引數(shù)據(jù)庫越來越大,需要的維護(hù)成本越來越高;索 引數(shù)據(jù)源單一,通常只限于文本內(nèi)容;索引缺乏通用性和靈活性等等。而 Lucene 具有開放性和易擴(kuò)展性,對于解決搜索引擎目前的問題有很好的應(yīng)用價值。本文 通過研究設(shè)計并開發(fā)實現(xiàn)一個小型簡單的基于 Lucene 的本地搜索引擎,來研究 Lucene 在搜索引擎領(lǐng)域的應(yīng)用前景。主要工作包括: (1)分析了本地搜索引擎的組成結(jié)構(gòu)和工作原理,在此基礎(chǔ)上進(jìn)行了基于 Lucene 的本地搜索引擎的整體結(jié)構(gòu)設(shè)計,并將系統(tǒng)分為網(wǎng)頁搜集子系統(tǒng)、索引檢 索子系統(tǒng)、查詢結(jié)果排序子系統(tǒng)等三個模塊。 (2)針對各個模塊的功能進(jìn)行了設(shè)計開發(fā),設(shè)計了相關(guān)信息的存儲機(jī)制,并 根據(jù)搜索引擎的工作原理實現(xiàn)了各模塊之間的交互。 (3)深入分析并實現(xiàn)了多線程搜集、運用 Lucene 實現(xiàn)索引和檢索、搜索 結(jié)果的頁面優(yōu)先度計算等等基于 Lucene 的本地搜索引擎的關(guān)鍵技術(shù)。 產(chǎn)品介紹 1) lucene的索引建立機(jī)制不同,在數(shù)據(jù)庫維護(hù)的復(fù)雜度和性能方面?zhèn)鹘y(tǒng)本地搜索引擎有很大優(yōu)勢。 2) 于 Lucene 并不是一個完整的搜索引擎,而只是提供索引和搜索功能,可以很方便的嵌入到各種應(yīng)用中實現(xiàn)對應(yīng)用的索引/搜索功能,這種特點為制定更 加靈活的搜索、結(jié)果排序策略提供了可能,從而為用戶提供更加符合其需求的靈活多變的搜索引擎。 5 3)Lucene 是一個開源項目,其排序算法更加透明,搜索結(jié)果勢必更加客觀公正。 本文根據(jù)以上 Lucene 的特點來設(shè)計開發(fā)一個基于 Lucene 的小型的搜索引擎,研究 Lucene 在互聯(lián)網(wǎng)搜索領(lǐng)域的應(yīng)用前景。 第 1 章 設(shè)計概述 ( 1)本地文獻(xiàn)信息檢索是獲取知識的捷徑。掌握文獻(xiàn)信息檢索方法與技能,可以幫助人們快、準(zhǔn)、全地獲取所需知識,最大限度地節(jié)省查找時間,使文獻(xiàn)信息得以充分的利用。 ( 2)本地文獻(xiàn)信息檢索是科學(xué)研究的向?qū)?。要進(jìn)行有價值的科學(xué)研究,必須依賴文獻(xiàn)檢索,全面獲 取相關(guān)文獻(xiàn)信息,及時了解各學(xué)科領(lǐng)域出現(xiàn)的新問題、新觀點、以確定自己的研究起點和研究目標(biāo)。 ( 3)本地文獻(xiàn)信息檢索是終身教育的基礎(chǔ)??萍嫉难杆侔l(fā)展使知識的總量呈指數(shù)增長,而知識的陳舊速度也明顯加快,這就要求人們具有終身教育的能力,這 6 種能力在很大程度上就是獲取新知識的能力,就是對新知識的敏感力和接受力,因而必須掌握文獻(xiàn)信息檢索的方法。終身學(xué)習(xí)的需要,是知識創(chuàng)新的需要。 本程序的開發(fā)基于 lucene 的基礎(chǔ)進(jìn)行開發(fā),在對本地文件進(jìn)行文件名搜索的同時,能夠更準(zhǔn)確的識別文件內(nèi)容與所搜索關(guān)鍵詞的具體相關(guān)性。 第 2 章 開發(fā)與運行環(huán)境 Windows 2021 或 Windows XP 操作系統(tǒng), 7 開發(fā)環(huán)境的配置 需求概述 本地搜索程序的實現(xiàn),需要 lucene 作為設(shè)計核心。 本地搜索程序的使用,需要用戶具備最基礎(chǔ)的計算機(jī)操作技能,能完成程序的安裝,搜索關(guān)鍵詞的輸入。 類別 標(biāo)準(zhǔn)配置 最低配置 計算機(jī)硬件 基于 Intel 86結(jié)構(gòu)的CPU,主頻≥ 內(nèi)存≥ 512M 硬盤至少有 200M 基于 Intel 86 結(jié)構(gòu)的CPU,主頻≥ 1GHz 內(nèi)存≥ 256M 硬盤至少有 200M 計算機(jī)軟件 Windows 2021 或 Windows XP操作系統(tǒng), Visio C++ 以上 Tcl 84 Windows 2021 或 Windows XP 操作系統(tǒng), Visio C++ 以上 Tcl83 以上 其它 采用 Microsoft SQL 2021數(shù)據(jù)庫系統(tǒng) 采用 Microsoft SQL 2021數(shù)據(jù)庫系統(tǒng) 8 第三章 總體設(shè)計 本地搜索程序的總體思路分析與設(shè)計, 在整個程序里,除了 Lucene 的必要操作外,就是 IO的基本操作了。因為要對某目錄下及其子目錄下的所有 Java源文件進(jìn)行索引,就要用到遞歸,同時要過濾掉非 Java源文件。根據(jù)這種情況,設(shè)計了以下 5個類:主類:索引類( IndexJavaFiles),搜索類( SearchJavaFiles) 異常類:索引異常類 (IndexException),搜索異常類 (SearchException) 還有一個文件過濾工廠類( FileFilterFactory)。 軟件描述 本程序通過對用戶輸入的搜索關(guān)鍵詞及所 選文件類型進(jìn)行分析,之后進(jìn)行全盤(分盤)搜索。關(guān)鍵詞搜索范圍包括文件名、文件所在文件夾名、文件屬性描述。 處理流程 搜索的處理流程主要分為文檔類的搜索處理、多媒體類搜索處理、圖像文件搜索處理。 文檔搜索處理流程 輸入關(guān)鍵詞,并選擇搜索范圍 對范圍內(nèi)的關(guān)鍵詞文件名進(jìn)行搜索 對范圍內(nèi)的關(guān)鍵詞文件夾進(jìn)行搜索 對范圍內(nèi)關(guān)鍵詞文件的屬性進(jìn)行搜索 9 多媒體及圖像搜索處理流程 功能結(jié)構(gòu)設(shè)計 為更快的提供搜索響應(yīng),需考慮軟件的搜索類型篩選,搜索范圍選擇功能,以便提高搜索效率。 搜索文件格式篩選功能結(jié)構(gòu) 此功能多用于搜索多媒體 文件的搜索,用戶可在輸入搜索關(guān)鍵詞后進(jìn)行文件格式選擇,極大提高搜索效率。 輸入關(guān)鍵詞并選擇搜索格式、范圍 對范圍內(nèi)的關(guān)鍵詞文件名進(jìn)行搜索 對范圍內(nèi)的關(guān)鍵詞文件夾進(jìn)行搜索 對范圍內(nèi)關(guān)鍵詞文件的屬性類型進(jìn)行搜索 對搜索結(jié)果進(jìn)行列表反饋,并根據(jù)用戶所選顯示文件信息。 10 搜索范圍功能結(jié)構(gòu) 此功能可用于所有類型的文件搜索,在用戶已經(jīng)確定搜索文件的范圍的前提下使用該功能,可手動選擇其搜索范圍,更快速的進(jìn)行文件查找。 接口設(shè)計 盡管可以完全用 Java 編寫應(yīng)用程序,但是有時單獨用 Java 不能滿足應(yīng)用程序的需要。程序員使用 JNI 來編寫 Java 本地方法,可以處理那些不能完全用 Java 編寫應(yīng)用程序的情況。 Netscape 建議使用 Java 運行時接口 (JRI),它是 Java 虛擬機(jī)所提供服務(wù)的通用接口。 JRI 的設(shè)計融入了可移植性 它幾乎沒有對底層 Java 虛擬機(jī)的實現(xiàn)細(xì)節(jié)作任何假設(shè)。 JRI 提出了各種各樣的問題,包括本地方法、調(diào)試、反射、嵌入(調(diào)用)等等。 對本地方法的加載通過 方法實現(xiàn)。下例中,類初始化方法加載了一個與平臺有關(guān)的本地庫,在該本地庫中給出了本地方法 f 的定義: 下面簡要分析一下部分已有本地方法接口,例如: JDK 本地方法接口 Netscape 的 Java 運行時接口 Microsoft 的原始本地接口和 Java/COM 接口 JNI 接口的組織類似于 C++ 虛擬函數(shù)表或 COM 接口。使用接口表而不使用硬性編入的函數(shù)表的好處是使 JNI 名字空間與平臺相關(guān)代碼分開。虛擬機(jī)可以很容易地提供多個版本的 JNI 函數(shù)表。例如,虛擬機(jī)可支持以下兩個 JNI 函數(shù)表: 一個表對非法參數(shù)進(jìn)行全面檢查,適用于調(diào)試程序; 另一個表只進(jìn)行 JNI 規(guī)范所要求的最小程度的檢查,因此效率較高。 11 本地方法 對本地方法的加載通過 方法實現(xiàn)。下例中,類初始化方法加載了一個與平臺有關(guān)的本地庫,在該本地庫中給出了本地方法 f 的定義: package pkg。 class Cls { native double f(int i, String s)。 static { (pkg_Cls)。 } } JNI 允許本地方法訪問 Java 對象的域或調(diào)用其方法。 JNI 用符號名稱和類型簽名來識別方法 和域。從名稱和簽名來定位域或?qū)ο蟮倪^程可分為兩步。例如,為調(diào)用類 cls 中的 f 方法,平臺相關(guān)代碼首先要獲得方法 ID,如下所示: jmethodID mid = envGetMethodID(cls, f, (ILjava/lang/String。)D)。 然后,平臺相關(guān)代碼可重復(fù)使用該方法 ID 而無須再查找該方法,如下所示: jdouble result = envCallDoubleMethod(obj, mid, 10, str)。 域 ID 或方法 ID 并不能防止虛擬機(jī)卸載生成該 ID 的類。該類被卸載之后,該方法 ID 或域 ID 亦變成無效。因此,如果平臺相關(guān)代碼要長時間使用某個方法 ID 或域 ID,則它必須確保: 保留對所涉及類的活引用,或 重新計算該方法 ID 或域 ID。 JNI 對域 ID 和方法 ID 的內(nèi)部實現(xiàn)并不施加任何限制。 報告編程錯誤 JNI 不檢查諸如傳遞 NULL 指針或非法參數(shù)類型之類的編程錯誤。非法的參數(shù)類型包括諸如要用 Java 類對象時卻用了普通 Java 對象這樣的錯誤。 JNI 不檢查這些編程錯誤的理由如下: 強(qiáng)迫 JNI 函數(shù)去檢查所有可能的錯誤情況將降低正常(正確)的本地方法的性能。 在許多情況下,沒有足夠的運行時的類型信息可供這種檢查使用。 異常處理 可用兩種方法來處理平臺相關(guān)代碼中的異常: 本地方法可選擇立即返回,使異常在啟動該本地方法調(diào)用的 Java 代碼中拋出。 平臺相關(guān)代碼可通過調(diào)用 ExceptionClear() 來清除異常,然后執(zhí)行自己的異常處理代碼。 拋出了某個異常之后,平臺相關(guān)代碼必須先清除異常,然后 12 才能進(jìn)行其它的 JNI 調(diào)用。當(dāng)有待定異 常時,只有以下這些 JNI 函數(shù)可被安全地調(diào)用: ExceptionOccurred()、 ExceptionDescribe() 和 ExceptionClear()。ExceptionDescribe() 函數(shù)將打印有關(guān)待定異常的調(diào)試消息。 數(shù)據(jù)結(jié)構(gòu)設(shè)計 邏輯結(jié)構(gòu)設(shè)計 從邏輯結(jié)構(gòu)劃分為 : 。 。 表示層 : 主要完成搜索請求的解析以及數(shù)據(jù)規(guī)則處理 . 對用戶輸人的請求加以處理。 業(yè)務(wù)層 : 主完成具體搜索業(yè)務(wù)。通過鏈?zhǔn)椒绞揭来蝹鬟f對請求數(shù)據(jù)進(jìn)行處理。語義分析 , 分析 , 結(jié)合 ( )I 索引和空間索引對目標(biāo)信息進(jìn)行索引 ,搜索結(jié)果再通過優(yōu)化排序 , 從而獲取更佳的信息結(jié)果。 數(shù)據(jù)層 : 業(yè)務(wù)層所有使用到的數(shù)據(jù) , 包括 : 詞庫 , 地理同庫 , P( )I 索引 , 空間索引等可擴(kuò)展開放式的多層體系架構(gòu)優(yōu)點 : 系統(tǒng)部署在服務(wù)端 . 開放的系統(tǒng)架構(gòu)的設(shè)計思想和松散的組件化結(jié)構(gòu)具有垂直和水平方向的易擴(kuò)展性。 struct ScriptDistribute{ int type。 int subtype。 int ssize。 int filename。 short int len; //數(shù)據(jù)長度 char 文件名字 。 //本地文件的名字 char 文件類型 。 //文件的類型 13 char 文件屬性 。 //文件的屬性 char 文件夾名字 。 //文件夾名字 char 文件夾類型 。 //文件夾類型 } 關(guān)鍵技術(shù) 影響本地搜索服務(wù)的技術(shù)因素有很多 , 下面我們就從搜索,索引,緩存等三個方面進(jìn)行闡述。 搜索 本地搜索是一種介于齊通搜索和空間索引之間的一種搜索方式 , 索引 索引數(shù)據(jù)需要滿足木地搜索引擎的需要 , 為搜索引擎提 供數(shù)據(jù)索引支持 , 索引數(shù)據(jù)生成在數(shù)據(jù)
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1