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

正文內(nèi)容

基于java語言的搜索引擎開發(fā)論文-wenkub

2022-11-28 21:54:12 本頁面
 

【正文】 更新速度也日益提高。 本文在介紹 網(wǎng)絡搜索引擎開發(fā)相關技術 的基礎上, 詳細闡述了本次畢業(yè)設計所完成的基于機器人和全文索 引技術的搜索引擎 的 開發(fā) 過程。搜索引擎的出現(xiàn)為人們在網(wǎng)絡中查找信息提供了極大的方便。因此,網(wǎng)絡搜索引擎的開發(fā)及相關技術的研究有著重要的意義。 關鍵詞: JAVA;搜索引擎;機器人 Development of Search Engines Based on Java Language Abstract: With the development and universality of puter and work technology, how to search the prehensive and accurate information from mass work data in a short time which bee a serious problem that many people pay attention to. Therefore, it is important to develop work search engine and study it 39。 公用數(shù)據(jù)庫的飛速發(fā)展為用戶查詢各種信息提供 了可能。 設計 搜索引擎 是為了 在非常短的時間內(nèi)搜索全面并且準確的信息。因為沒有一個搜索引擎系統(tǒng)能夠搜集到所有的 WEB網(wǎng)頁,所以召回率很難計算?,F(xiàn)有的這些網(wǎng)絡搜索 引擎存在一些不足,比如: 大多數(shù)中文搜索引擎的查詢方式較為單一 、 采用的 開發(fā)技術比較落后 等。與 Wanderer 相對應, Martin Koster 于 1993 年 10 月創(chuàng)建了 ALIWEB,它是 Archie 的 HTTP 版本。到 1993 年底,一些基于此原理的搜索引擎開始紛紛涌現(xiàn),其中以 JumpStation、 The World Wide Web Worm( Goto 的前身,也就是今天 Overture),和 RepositoryBased Software Engineering (RBSE) spider 最負盛名。當時Michael Mauldin 將 John Leavitt 的蜘蛛程序接入到其索引程序中,創(chuàng)建了大家現(xiàn)在熟知的 Lycos。比如最近風頭正勁的 Google,其數(shù)據(jù)庫中存放的網(wǎng)頁已達 30 億之巨! 機器人搜索引擎, 是一種 全文搜索引擎 , 是由一種叫 “蜘蛛 ”的計算機程序在網(wǎng)絡中爬行,依據(jù)一定的網(wǎng)絡協(xié)議在互聯(lián)網(wǎng)中發(fā)現(xiàn)、加工、整理信息,并為用戶提供檢索服務。由于專門用于檢索信息的 “機器人 ”程序 像 蜘蛛一樣在網(wǎng)絡間爬來爬去 ,以實現(xiàn)對目標信息的檢索。 機器人搜索引擎實現(xiàn)方案 ( 1) 網(wǎng)站目錄信息的提取 為了方便用戶瀏覽,網(wǎng)頁中一般都設有導航欄,導航欄 是 按層次組織 的 。在加上不同風格 下,導航欄所處位置不同,所以如何準確的確定導航欄對應的 html 源文件,從而進一步分析是問題的關鍵。 ? 基于 table標簽定位導航欄。這種方法的 優(yōu)點 是快速,邏輯簡單。每個頁面最多有三個父親節(jié)點,所以可記錄三個 father。 ( 2) 在當前頁面中,找到導航欄,并把其中的項目作為網(wǎng)站的欄目,欄目級別初始時為 0,向下遞增(目前可準 確 確定 0、 1 兩級欄目,基本正確的確定 0、 3 三級欄目)。 ( 4) 判斷 待 處理隊列是否空,空則程序結束。 Lucene 全文索引 技術 網(wǎng)絡機器人將遍歷得到的頁面存放在臨時數(shù)據(jù)庫中,如果通過 SQL 直接查詢信息速度將會難以忍受。 Lucene 全文索引的起源 Lucene 的貢獻者 Doug Cutting 是一位資深 的 全文索 引 /檢索專家,曾經(jīng)是 VTwin 搜索引擎 (Apple 的 Copland 操作系統(tǒng)的成就之一 )的主要開發(fā)者,后在 Excite 擔任高級系統(tǒng)架構設計師,目前從事于一些 INTERNET 底層架構的研究。Lucene 最核心的特征是通過特殊的索引結構實現(xiàn)傳統(tǒng)數(shù)據(jù)庫不擅長的全文索引機制,并提供了擴展接口 ,以方便針對不同應用的定制。 在運行時, 不是維護一個索引文件,而是在擴展索引的時候不斷創(chuàng)建新的索引文件,然后定期的把這些新的小索引文件合并到原先的大索引中(針對不同的更新策略,批次的大小可以調(diào)整),這樣在不影響檢索的效率的前提下,提高了索引的效率。 索引內(nèi)容抓取 Lucene 的文檔是由多個字段組成的,甚至可以控制那些字段需要進行索引,那些字段不需要索引,近一步索引的字段也分為需要分詞和不需要分詞的類型: 需要進行分詞的索引,比如:標題,文章內(nèi) 容字段 不需要進行分詞的索引,比如:作者/日期字段 缺乏通用性,往往將文檔整個索引了 語言分析 通過語言分析器的不同擴展實現(xiàn): 可以過濾掉不需要的詞: an the of 等, 西文語法分析:將 jumps jumped jumper 都歸結成 jump 進行索引 /檢索 非英文支持:對亞洲語言,阿了伯語言的索引支持 缺乏通用接口實現(xiàn) 查詢分析 通過查詢分析接口的實現(xiàn),可以定制自己的查詢語法規(guī)則: 比如: 多個關鍵詞之間的 + and or關系等 并發(fā)訪問 能夠支持多用戶的使用 Lucene 的使用 lucene 的組成結構:對于外部應用來說索引模塊 (index)和檢索模塊 (search)是主要的外部應用入口 。 Lucene 輸入輸出接口 雖然 lucene 沒有定義一個確定的輸入文檔格式,但越來越多的人想到使用一個標準的中間格式作為 Lucene 的數(shù)據(jù)導入接口,然后 將 其他數(shù)據(jù),比如 PDF 只需要通過解析器轉(zhuǎn)換成標準的中間格式就可以進行數(shù)據(jù)索引了。這個批次的間隔越大,文件的寫入次數(shù)越少,但占用內(nèi)存會很多。 搜索過程優(yōu)化 Lucene 面向全文檢索的優(yōu)化在于首次索引檢索后,并不把所有的記錄( Document)具體內(nèi)容讀取出來,而只將所有結果中匹配度最高的頭 100 條結果( TopDocs)的 ID放到結果集緩存中并返回,這里可以比 較一下數(shù)據(jù)庫檢索:如果是一個 10,000 條的數(shù)據(jù)庫檢索結果集,數(shù)據(jù)庫是一定要把所有記錄內(nèi)容都取得以后再開始返回給應用結果集的。所以如果構造一個 Searcher去查 1- 120 條結果, Searcher 其實是進行了 2 次搜索過 程:頭 100 條取完后,緩存結果用完, Searcher 重新檢索 , 再構造一個 200 條的結果緩存,依此類推, 400 條緩存,800 條緩存。 10 3. 開發(fā) 環(huán)境 信息技術的不斷發(fā)展,特別 是互聯(lián)網(wǎng)應用的迅速普及,深入到了人們生活的各個方面,改變了人們 的 生活方式和思維方式,方便了全球信息資源共享。今天,搜索引擎已成為人們在網(wǎng)絡信息海洋中自如沖浪必不可少的利器。 Java 是一種簡單的,面 向 對象的,分布式的,解釋的,健 壯的 , 安全的,結構的中立的,可移植的,性能很優(yōu)異的多線程的,動態(tài)的語言。 Java 引進虛擬機原理,并運行于虛擬機,實現(xiàn) 于 不同平臺的 Java 接口之間。 Java 舍棄了 C++的指針對存儲器地址的直接操作,程序運行時,內(nèi)存由操作 系統(tǒng)分配,這樣可以避免病毒通過指針侵入系統(tǒng)。程序員只需把主要精力用在類和接口的設計和應用上。 ( 4) 分布式 Java 建立在擴展 TCP/IP 網(wǎng)絡平臺上。類型檢查幫助檢查出許多開發(fā)早期出現(xiàn)的錯誤。 Java 提供: Null指針檢測、數(shù)組邊界檢測、異常出口、 Byte code 校驗。一般來說, Java API 的非 I/O 部分對于運行 Java 的所有平臺是相同的,而 I/O 部分則僅在通用 Java 環(huán)境中實現(xiàn) , 是整個 Java 的核心,包括了 Java 運行環(huán)境( Java Runtime Envirnment), 很多 Java 工具和 Java 基礎的類庫 ()。其中 IBM的 JDK 包含的 JVM( Java Virtual Machine)運行效率要比 Sun JDK 包含的 JVM 高出許多。 12 ● Javac: Java 編譯器,將 Java 源代碼轉(zhuǎn)換成字節(jié)碼。 ● Jdb: Java 調(diào)試器,可以逐行執(zhí)行程序,設置斷點和檢查變量。 Tomcat 的源代碼被提供給 Jakarta 項目,在 Open Source 的模型下進行進一步的開發(fā)。實際上 tomcat 部分是 apache 服務器的擴展,但它是獨立運行的,所以當你運行 tomcat 時,它實際上作為一個與 apache 獨立的進程單獨運行的。 代碼實現(xiàn) MAIN 函數(shù)設計 而其中程序的入口 MAIN 函數(shù)所在的類路徑為: . Searcher,該部分的代碼如下: ( 1)引入了搜索引擎所需要的類包,以此構造一個機器人程序。 import 。 import 。 import 。 import 。 import 。 //設置日志文件的輸出路徑 (./)。 if ( != 0) { //構建一個搜索工作任務存儲隊列 IWorkloadStorable wl = new SpiderInternalWorkload()。 } else { (, Command Console is not Paramters!)。 // try { // (url,null)。 */ public boolean foundExternalLink(String url) { // HTTP _=new HTTPSocket()。 } /** 當發(fā)現(xiàn)其他
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1