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

正文內(nèi)容

基于java語言的搜索引擎開發(fā)論文-在線瀏覽

2025-01-20 21:54本頁面
  

【正文】 與從前不可同日而語。其優(yōu)點是信息量大,耗費資源少, 缺點是 精確度不高。 電腦 “機器人 ”( Computer Robot)是指能以人類無法達到的速度不間斷地執(zhí)行某項任務的軟件程序。 機器人搜索引擎 核心思想 在網(wǎng)站建設過程中,網(wǎng)站內(nèi)容總是按一定的目錄層次組織的,如果在蜘蛛程序獲取頁面的過程中,同時獲取網(wǎng)頁所屬的網(wǎng)站目錄層次信息;在返回用戶的查詢結(jié)果時,結(jié)果集按此目錄層次信息組織,用戶可以通過選擇感興趣目錄縮小結(jié)果集,提高瀏覽效率(browseability)。采用上面的方法,能很好的解決這個問題,提高搜索 4 引擎的服務質(zhì)量和滿意度。導航欄的各項一般為某種分類方式下的一個類別。由于 html 語法的不嚴格性,同樣的視覺內(nèi)容,可能會有不同的 html源文件形式。 目前,從給的頁面 html 源文件中,確定導航欄部分的方法有兩種: ? 基于頁面分塊確定導航欄。缺點是處理量較大,且涉及數(shù)據(jù)庫操作過多。這種方法是基于當前較為規(guī)范的中文網(wǎng)頁,基本滿足一下幾個假設而做的: a)導航欄包含在一個內(nèi)層 table中(即這個 table 中不再嵌套 table),并且此 table 的 width 值不少于 500(只適用于上方導航欄); b)導航欄所含超鏈接不少于五個; c) 導航欄中各項的顯示字符不能過長; d) 導航欄中 的 超鏈接項大部分為站內(nèi)鏈接; e) 導航欄中 的 超鏈接項中,大部分鏈接的層次不能太深,并且不含 query。 將以上假設 作 為過濾條件,一般可以準確的找出規(guī)范網(wǎng)站的導航欄 及 層次,從而確定目錄層次。缺點是適用風格單一,當網(wǎng)站風格變化后,將不再適用。 ( 2) 頁面所屬目錄層次的確定 在分析頁面新鏈接時,把本頁 url 作 為這些新鏈接的父親,在頁面庫中記錄下來。分析頁面所屬類別時,父親屬于網(wǎng)站目錄層次 的 最下端目錄,就是該頁所屬的目錄。 5 機器人搜索引擎流程說明 ( 1) 進入一個網(wǎng)站時,我們默認第一次處理的頁面為網(wǎng)站首頁,如果不是,則經(jīng)過相應的處理得到首頁 url,并從該 url 開始處理。欄目信息寫入欄目庫。對已經(jīng)遇見過 的 鏈接,在網(wǎng)頁庫中,以當前頁面 url 更新其該鏈接對應項的 father。否則取出隊列中首部 url。是則轉(zhuǎn)向( 2) ;否則轉(zhuǎn)向( 3)。為了提高檢索效率,需要建立索引,按照倒排文件的格式存放。也正因為如此,在代碼中引入 Lucene 全文索引。他貢獻出的 Lucene 的目標是為各種中小型應用程序加入全文檢索功能。它是一個用 Java 寫的全文索引引擎工具包,可以方便的嵌入到各種應用中 , 實現(xiàn)針對應用的全文索引 /檢索功能。 Lucene 全文索引的實現(xiàn)機制 Lucene 的 API 接口設計比較通用,輸入輸出結(jié)構(gòu)都很像數(shù)據(jù)庫的表 ==記錄 ==字段,所以很多傳統(tǒng)的應用文件、數(shù)據(jù)庫等都可以比較方便的映射到 6 Lucene 的存儲結(jié)構(gòu)和接口中。從而大大提高了關鍵詞查詢的效率 。 而下表 表示的正是 Lucene 全文索引與其他 開源全文檢索系統(tǒng) 在各個方面的比較: 表 Lucene 全文索引與其他 開源全文檢索系統(tǒng) 在各個方面的比較 Lucene 其他開源全文檢索系統(tǒng) 增量索引和批 可以進行增量的索引 (Append),可以對 很多系統(tǒng)只支持批量的索引,有 7 量索引 于大量數(shù)據(jù)進行批量索引, 并且接口設計用于優(yōu)化批量索引和小批量的增量索引。 數(shù)據(jù)源 Lucene 沒有定義具體的數(shù)據(jù)源,而是一個文檔的結(jié)構(gòu),因此可以非常靈活的適應各種應用(只要前端有合適的轉(zhuǎn)換器把數(shù)據(jù)源轉(zhuǎn)換成相應結(jié)構(gòu)), 很多系統(tǒng)只針對網(wǎng)頁,缺乏其他格式文檔的靈活性。幾個常見的 lucene 的 外部應用入口 如表 所示: 表 常見的 lucene 的 外部應用入口 8 其中: ? 語言分析器提供了抽象的接口,因此語言分析 (Analyser)是可以定制的,雖然lucene 缺省提供了 2 個比較通用的分析器 SimpleAnalyser 和StandardAnalyser,這 2 個分析器缺省都不支持中文,所以要加入對中文語言的切分規(guī)則,需要修改這 2 個分析器。 ? 對于大批量的數(shù)據(jù)索引,還可以通過調(diào)整 IndexerWrite 的文件合并頻率屬性( mergeFactor)來提高批量索引的效率。這個中間格式主要以 XML 為主,類似實現(xiàn)已經(jīng)不下 4, 5 個 ,圖 所示就是 5 個 Lucene 的數(shù)據(jù)導入接口 實現(xiàn) : 數(shù)據(jù)源 : WORD PDF HTML DB other \ | | | / XML 中間格式 | Lucene INDEX 圖 Lucene 的數(shù)據(jù)導入接口 索引過程優(yōu)化 索引一般分 2 種情況,一種是小批量的索引擴展,一種是大批量的索引重建。 Lucene 先在內(nèi)存中進行索引操作,并根據(jù)一定的批量進行文件的寫入。反之占用內(nèi)存少,但文件 IO操作頻 繁,索引速度會很慢。根據(jù)我的使用經(jīng)驗:缺省 Indexer 是每 20 條記錄索引后寫入一次,每 當 MERGE_FACTOR 增加 50 倍,索引速度可以提高 1 倍左右。所以即使檢索匹配總數(shù)很多, Lucene 的結(jié)果集占用的內(nèi)存空間也不會很多。 如果首批緩存結(jié)果數(shù)用完后還要讀取更后面的結(jié)果時 Searcher 會再次檢索并生成一個 比 上次的搜索緩存數(shù)大 1 倍的緩存,再重新向后抓取。由于每次 Searcher 對象消失后,這些緩存也 就 訪問不到了,你有可能想將結(jié)果記錄緩存下來,緩存數(shù)盡量保證在 100 以下以充分利用首次的結(jié)果緩存,不讓Lucene 浪費多次檢索,而且可以分級進行結(jié)果緩存。這也是和數(shù)據(jù)庫應用 中 需要將搜索的結(jié)果全部返回不同之處。全球目前的網(wǎng)頁超過 100 億,每天新增加數(shù)百萬網(wǎng)頁,電子信息爆炸似的豐富起來。能有一種工具使我們可以在不到 1 秒鐘的時間就迅速找到我們想要的內(nèi)容嗎?答案是 “有 ”,這就是搜索引擎。 而 隨著網(wǎng)絡技術的進步,網(wǎng)絡編程語言的開發(fā)以及進步,給網(wǎng)絡搜索引擎的開發(fā)提供了前提條件。 網(wǎng)絡編程語言 JAVA JAVA 語言自從誕生以來,以其平臺無關性,面向?qū)ο?,多線程,半編譯半解釋等特點而成為網(wǎng)絡時代的編程語言。 正是因為這些原因, JAVA 語言無可厚非成為最優(yōu)秀的網(wǎng)絡編程語言,正因為如此,我選JAVA 語言作為我開發(fā)網(wǎng)絡搜索引擎的工具。 Java 的特點 ( 1) 平臺無關性 平臺無關性是指 Java 能運行于不同的平臺。使用 Java 編寫的程序能在世界范圍內(nèi)共享。 ( 2) 安全性 Java 的編程類似 C++,學習過 C++的讀者將很快掌握 Java 的精髓。 Java 對程序提供了安全管理器,防止程序的非法訪問。類的封裝性、繼承性等有關對象的特性,使程序代碼只需一次編 11 譯,然后通過上述特性反復利用。Java 提供了眾多的一般對象的類 ,通過繼承即可使用父類的方法。 Java 提供的 Object 類及其子類的繼承關系如同一棵倒立的樹形,根類為 Object 類, Object 類功能強大,經(jīng)常會使用到它及其它派生的子類。庫函數(shù)提供了用 HTTP 和 FTP 協(xié)議傳送和接受信息的方法。 ( 5) 健 壯性 Java 致力于檢查程序在編譯和運行時的錯誤。 Java 自已操縱內(nèi)存減少了內(nèi)存出錯的可能性。 這些功能特征大大提高了開發(fā) Java 應用程序的周期。 JDK JDK,全名 Java Developers Kit,是開發(fā) JAVA 的 SUN 公司的 JAVA 語言的基本工具包,是個免費開發(fā)運行 JAVA 程序的基本軟件, 由一個標準類庫和一組 編譯工具所 建立,測試及建立文檔的 Java 實用程序組成。 Java API 包括一些重要的語言結(jié)構(gòu)以及基本圖形,網(wǎng)絡和文件 I/O。 該軟件可以從 網(wǎng)站免費下載。除了 Sun 之外,還有很多公 司和組織都開發(fā)了自己的 JDK,例如IBM 公司開發(fā)的 JDK, BEA 公司的 Jrocket,還有 GNU 組織開發(fā)的 JDK 等等。而專門運行在 x86 平臺的 Jrocket 在服務端 的 運行效率也要比 Sun JDK 好很多。 作為 JDK 實用程序,工具庫中有七種主要程序。 ● Java: Java 解釋器,直接從類文件執(zhí)行 Java 應用程序字節(jié)代碼。 ● Javadoc: 根據(jù) Java 源碼及說明語句生成 HTML 文檔。 ● Javah: 產(chǎn)生可以調(diào)用 Java 過程的 C 過程,或建立能被 Java 程序調(diào)用的 C 過程的頭文件。 TOMCAT Tomcat 是 Sun 的 JSWDK(JavaServer Web Development Kit)中 Servlet 的運行環(huán)境(servlet 容器 )。 Tomcat 是一個 Server 容器,同樣的, EJB 運行在 EJB 的容器中。 我們可以這樣認為, 當在一臺機器上配置好 Apache 服務器,可利用它響應對 HTML頁面的訪問請求。 這里的訣竅是,當配置正確時, Apache 為 .html 頁面服務,而 tomcat 實際上運行 .jsp 頁面和 servlet。 搜索引擎使用的類 /接口
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1