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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于ajax+lucene構(gòu)建搜索引擎的設(shè)計(jì)和實(shí)現(xiàn)-論文-文庫(kù)吧

2024-11-11 17:12 本頁(yè)面


【正文】 究現(xiàn)狀 國(guó) 內(nèi) 外 對(duì)搜索引擎研究比較著名的 便 是 Google 了。 無(wú)論搜索技術(shù)本身還是搜索范圍與深度 , Google 搜索 總是所有搜索引擎的 目標(biāo) 。 Google 專業(yè)領(lǐng)域搜索方面 做的成效是有目共睹 的 。 Google 在低層次的智能搜索方面已經(jīng)開(kāi)始研究很多年了,實(shí)際的成果就是翻譯方面。利用搜索技術(shù),加上經(jīng)驗(yàn)主義發(fā)展出來(lái)的Google 翻譯機(jī)器人,在外語(yǔ)翻譯方面已經(jīng)比傳統(tǒng)的翻譯好很多了。但是翻譯僅僅是學(xué)術(shù)方面的應(yīng)用,更重要的是 Google 建立起來(lái)的海量搜索歷史記錄。如果把這些海量搜索歷史記錄當(dāng)作是詞典的話,那么如果與搜索技術(shù)的結(jié)合發(fā)展成為低層次的只能搜索,那么應(yīng)用就將大大加強(qiáng)與廣泛。 國(guó)內(nèi) , 對(duì)搜索引擎的專注和對(duì)中文的理解能力也是中國(guó)本土 搜索 引擎行 業(yè)獨(dú)特的競(jìng)爭(zhēng)力。 國(guó)內(nèi)比較著名的比如 百度 ,更專注對(duì)中文的處理。 中文的 意思多種多樣 , 是很難用程序處理的 。 目前國(guó)內(nèi)外都在做中文引擎,門(mén)戶網(wǎng)站、非門(mén)戶網(wǎng)站也都在進(jìn)軍搜索業(yè),成立搜索門(mén)戶 。為了 滿足用戶更深層次的需求 ,國(guó)內(nèi) 的搜索引擎也在不斷的完善自己。如何 將人類的知識(shí)和智能加入到檢索中,如何 使搜索引擎的質(zhì)量產(chǎn)生一個(gè)質(zhì)的飛躍 ,也是國(guó)內(nèi)搜索引擎努力的方向。 中國(guó)網(wǎng)民對(duì)智能化搜索需求 也是顯而易見(jiàn)的。 這也意味著搜索不再是簡(jiǎn)單的技術(shù)或者是網(wǎng)絡(luò)導(dǎo)航而已,而是會(huì)成為普通人生活中必備的工具之一。 本課題研究的意義 隨著 計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)上的信息量急劇增長(zhǎng),要在浩如煙海的網(wǎng)絡(luò)世界中尋找需要的信息,作為現(xiàn)代信息獲取技術(shù)的主要應(yīng)用,那么搜索引擎是必不可少的。通過(guò) ,可以很方便的構(gòu)建起搜索引擎,本畢業(yè)設(shè)計(jì)除了考查使學(xué)生綜合運(yùn)用以前所學(xué)知識(shí)的能力,同時(shí)也使學(xué)生了解當(dāng)今 搜索 及編程的一些新技術(shù),并模擬 簡(jiǎn)單的 搜索 引擎開(kāi)發(fā)。 本課題的研究方法 在本系統(tǒng)的開(kāi)發(fā)過(guò)程中,首先分 析 了搜索引擎 的相關(guān)功能 , 寫(xiě)出需求分析;第 2 頁(yè) 共 19 頁(yè) 其次,綜合運(yùn)用以前所學(xué)的相關(guān)知識(shí)(數(shù)據(jù) 庫(kù), C# 等),選擇所熟悉的開(kāi)發(fā)工具進(jìn)行開(kāi)發(fā)(本系 統(tǒng)選擇了 Microsoft Visual Studio .NET 2021 作為開(kāi)發(fā)平臺(tái),開(kāi)發(fā)語(yǔ)言選擇了 C;數(shù)據(jù)庫(kù)采用 Microsoft SQL Server 2021) 。由于 Lucene不是完整的搜索引擎程序 , 只為搜索引擎應(yīng)用提供了工具包 , 在 平臺(tái)中,可使用 這個(gè)對(duì) Lucene 兼容的庫(kù) 。 使用 協(xié)助完成搜索引擎相關(guān)的網(wǎng)頁(yè)爬蟲(chóng)與抓取,為文檔建立索引,關(guān)鍵詞搜索的功能,通過(guò) Ajax 優(yōu)化系統(tǒng),完成頁(yè)面的局部刷新功能,給用戶好的體驗(yàn)。 2 構(gòu)建搜索 引擎原理 全文 搜索引擎 搜索引擎的分類 獲得網(wǎng)站網(wǎng)頁(yè)資料,能夠建立數(shù)據(jù)庫(kù)并提供查詢的系統(tǒng),我們都可以把它叫做搜索引擎。真正意義上的搜索引擎,通常指的是收集了因特網(wǎng)上幾千萬(wàn)到幾十億個(gè)網(wǎng)頁(yè)并對(duì)網(wǎng)頁(yè)中的每一個(gè)詞(即關(guān)鍵詞)進(jìn)行索引,建立索引數(shù)據(jù)庫(kù)的全文搜索引擎。當(dāng)用戶查找某個(gè)關(guān)鍵詞的時(shí)候,所有在頁(yè)面內(nèi)容中包含了該關(guān)鍵詞的網(wǎng)頁(yè)都將作為搜索結(jié)果被搜出來(lái)。在經(jīng)過(guò)復(fù)雜的算法進(jìn)行排序后,這些結(jié)果將按照與搜索關(guān)鍵詞的相關(guān)度排列 。 按照工作原理的不同,可以把它們分為兩個(gè)基本類別:全文搜索和分類目錄。 全文搜索 引擎 通過(guò)從互聯(lián)網(wǎng)上提取的各個(gè)網(wǎng)站的信息(以網(wǎng)頁(yè)文字為主)而建立的數(shù)據(jù)庫(kù)中,檢索與用 戶查詢條件匹配的相關(guān)記錄,然后按一定的排列順序?qū)⒔Y(jié)果返回給用戶 。 從搜索來(lái)源的角度,全文搜索引擎又可細(xì)分為兩種,一種是擁有自己的檢索程序( Indexer),俗稱 “ 蜘蛛 ”( Spider) 程序或 “ 機(jī)器人 ” ( Robot)程序,并自建網(wǎng)頁(yè)數(shù)據(jù)庫(kù),搜索結(jié)果直接從自身的數(shù)據(jù)庫(kù)中調(diào)用;另一種則是租用其他引擎的數(shù)據(jù)庫(kù),并按自定的格式排列搜索結(jié)果 。 分類目錄則是通過(guò)人工的方式收集整理網(wǎng)站資料形成數(shù)據(jù)庫(kù)的,比如雅虎中國(guó)以及國(guó)內(nèi)的搜狐、新浪、網(wǎng)易分類 目錄。另外,在網(wǎng)上的一些導(dǎo)航站點(diǎn),也可以歸屬為原始的分類目錄。 搜索引擎的工作原理 搜索引擎的原理,可以 看作 三步:從互聯(lián)網(wǎng)上抓取網(wǎng)頁(yè) , 建立索引數(shù)據(jù)庫(kù) ,在索引數(shù)據(jù)庫(kù)中搜索。 全文搜索引擎的 “ 網(wǎng)絡(luò)蜘蛛 ” 能夠掃描一定地址范圍內(nèi)的網(wǎng)站,并沿著網(wǎng)絡(luò)上的鏈接從一個(gè)網(wǎng)頁(yè)到另一個(gè)網(wǎng)頁(yè),從一個(gè)網(wǎng)站到另一個(gè)網(wǎng)站采集網(wǎng)頁(yè)資料。它為保證采集的資料最新,還會(huì)回訪已抓取過(guò)的網(wǎng)頁(yè)。網(wǎng)絡(luò)機(jī)器人或網(wǎng)絡(luò)蜘蛛采集的網(wǎng)頁(yè),還要有其它程序進(jìn)行分析,根據(jù)一定的相關(guān)度算法進(jìn)行大量的計(jì)算建立網(wǎng)頁(yè)索引,才能添加到索引數(shù)據(jù)庫(kù)中。我們平時(shí)看到的全 文搜索引擎,第 3 頁(yè) 共 19 頁(yè) 實(shí)際上只是一個(gè)搜索引擎系統(tǒng)的檢索界面,當(dāng)你輸入關(guān)鍵詞進(jìn)行查詢時(shí),搜索引擎會(huì)從龐大的數(shù)據(jù)庫(kù)中找到符合該關(guān)鍵詞的所有相關(guān)網(wǎng)頁(yè)的索引,并按一定規(guī)則呈現(xiàn)給我們。不同的搜索引擎,網(wǎng)頁(yè)索引數(shù)據(jù)庫(kù)不同 , 搜索結(jié)果也就不盡相同。 利用能夠從互聯(lián)網(wǎng)上自動(dòng)收集網(wǎng)頁(yè)的 Spider 程序,自動(dòng)訪問(wèn)互聯(lián)網(wǎng),并沿著 網(wǎng)頁(yè)中的所有 URL 爬到其它網(wǎng)頁(yè),重復(fù)這過(guò)程,并把爬過(guò)的所有網(wǎng)頁(yè)收集回來(lái)。 然后 建立索引數(shù)據(jù)庫(kù) , 由分析索引程序?qū)κ占貋?lái)的網(wǎng)頁(yè)進(jìn)行分析,提取相關(guān)網(wǎng)頁(yè)信息(包括網(wǎng)頁(yè)所在 URL、編碼類型、頁(yè)面內(nèi)容包含的關(guān)鍵詞、關(guān)鍵詞位置、 生 成時(shí)間、大小、與其它網(wǎng)頁(yè)的鏈接關(guān)系等) ,然后用這些相關(guān)信息建立網(wǎng)頁(yè)索引數(shù)據(jù)庫(kù)。 接下來(lái) 在索引數(shù)據(jù)庫(kù)中搜索排序 , 當(dāng)用戶輸入關(guān)鍵詞搜索后,由搜索系統(tǒng)程序從網(wǎng)頁(yè)索引數(shù)據(jù)庫(kù)中找到符合該關(guān)鍵詞的所有相關(guān)網(wǎng)頁(yè)。最后,由頁(yè)面生成系統(tǒng)將搜索結(jié)果的鏈接地址和頁(yè)面內(nèi)容摘要等內(nèi)容組織起來(lái)返回給用戶。搜索引擎只能搜到它網(wǎng)頁(yè)索引數(shù)據(jù)庫(kù)里儲(chǔ)存的內(nèi)容。 Lucene 與搜索引擎 Lucene 是一個(gè)全文信息檢索工具包,為應(yīng)用程序提供索引和搜索功能。和Java Lucene 兼容 的 可以用在 . 平臺(tái)。 Lucene 能夠 為文本類型的數(shù)據(jù)建立索引,所以你只要能把你要索引的數(shù)據(jù)格式轉(zhuǎn)化的文本的, Lucene 就能對(duì)你的文檔進(jìn)行索引和搜索。比如你要對(duì)一些 HTML 文檔, PDF 文檔進(jìn)行索引的話你就首先需要把 HTML 文檔和 PDF 文檔轉(zhuǎn)化成文本格式的,然后將轉(zhuǎn)化后的內(nèi)容交給 Lucene 進(jìn)行索引,然后把創(chuàng)建好的索引文件保存到磁盤(pán)或者內(nèi)存中,最后根據(jù)用戶輸入的查詢條件在索引文件上進(jìn)行查詢。不 規(guī) 定要索引的文檔的格式也使 Lucene 能夠適用于幾乎所有的搜索應(yīng)用程序。 如 圖 1 表示了搜索應(yīng)用程序和 Lucene 之間的關(guān)系,也反映了利用 Lucene構(gòu)建搜 索應(yīng)用程序的流程: 圖 1 應(yīng)用程序和 Lucene 第 4 頁(yè) 共 19 頁(yè) 索引和搜索 索引是現(xiàn)代搜索引擎的核心,建立索引 是把數(shù)據(jù)源處理成非常方便查詢的索引文件的過(guò)程。為什么索引這么重要呢,試想你現(xiàn)在要在大量的文檔中搜索含有某個(gè)關(guān)鍵詞的文檔,那么如果不建立索引的話你就需要把這些文檔順序的讀入內(nèi)存,然后檢查這個(gè)文章中是不是含有要查找的關(guān)鍵詞,這樣的話就會(huì)耗費(fèi)非常多的時(shí)間,想想搜索引擎可是在毫秒級(jí)的時(shí)間內(nèi)查找出要搜索的結(jié)果的。這就是由于建立了索引的原因,你可以把索引想象成這樣一種數(shù)據(jù)結(jié)構(gòu),他能夠使你快速的隨機(jī)訪問(wèn)存儲(chǔ)在索引中 的關(guān)鍵詞,進(jìn)而找到該關(guān)鍵詞所關(guān)聯(lián)的文檔。 Lucene 采用的是一種稱為反向索引( inverted index)的機(jī)制。反向索引就是說(shuō)我們維護(hù)了一個(gè)詞 /短語(yǔ)表,對(duì)于這個(gè)表中的每個(gè)詞 /短語(yǔ),都有一個(gè)鏈表描述了有哪些文檔包含了這個(gè)詞 /短語(yǔ)。這樣在用戶輸入查詢條件的時(shí)候,就能非常快的得到搜索結(jié)果。我們將在本系列文章的第二部分詳細(xì)介紹 Lucene 的索引機(jī)制,由于 Lucene 提供了簡(jiǎn)單易用的 API,所以 也可以非常容易的使用 Lucene對(duì)文檔實(shí)現(xiàn)索引 的建立 。 對(duì)文檔建立好索引后,就可以在這些索引上面進(jìn)行搜索了。搜索引擎首先會(huì)對(duì)搜索的關(guān)鍵詞進(jìn)行解析,然后再在建立好的索引上面進(jìn)行查找,最終返回和用戶輸入的關(guān)鍵詞相關(guān)聯(lián)的文檔。 Ajax 技術(shù) Ajax 全稱為 “Asynchronous JavaScript and XML”(異步 JavaScript 和 XML),是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。 Ajax 技術(shù)是目前在瀏覽器中通過(guò) JavaScript 腳本可以使用的所有技術(shù)的集合。包括: HTML 和 CSS, 使用文檔對(duì)象模型 DOM 作動(dòng)態(tài)顯示和交互 , 使用 XML 做數(shù)據(jù)交互和操作 , 使用XMLHttpRequest 進(jìn)行異步數(shù)據(jù)接收 , 使用 JavaScript 將它們綁定在一起 。 Ajax 技術(shù)之中,核心的技術(shù)就是 XMLHttpRequest,它最初的名稱叫做XMLHTTP,是微軟公司為了滿足開(kāi)發(fā)者的需要, 1999 年在 瀏覽器中率先推出的。后來(lái)這個(gè)技術(shù)被上述的規(guī)范命名為 XMLHttpRequest。它正是 Ajax技術(shù)之所以與眾不同的地方。簡(jiǎn)而言之, XMLHttpRequest 為運(yùn)行于瀏覽器中的JavaScript腳本提供了一種在頁(yè)面之內(nèi)與服務(wù)器通信的手段。頁(yè)面內(nèi)的 JavaScript可以在不刷新頁(yè)面的情況下從服務(wù)器獲取數(shù)據(jù),或者向服務(wù)器提 交數(shù)據(jù)。XMLHttpRequest 的出現(xiàn)為 Web 開(kāi)發(fā)提供了一種全新的可能性,甚至整個(gè)改變了人們對(duì)于 Web 應(yīng)用由什么來(lái)組成的看法。它可以使我們以一種全新的方式來(lái)做 Web 開(kāi)發(fā),為用戶提供更好的交互體驗(yàn)。 傳統(tǒng)的 web 應(yīng)用模型如 圖 2: 第 5 頁(yè) 共 19 頁(yè) 圖 2 Web應(yīng)用模型 與傳 統(tǒng)的 Web 開(kāi)發(fā)不同 , Ajax 并不是以一種基于靜態(tài)頁(yè)面的方式來(lái)看待Web 應(yīng)用的。從 Ajax 的角度看來(lái) , Web 應(yīng)用應(yīng)由少量的頁(yè)面組成,其中每個(gè)頁(yè)面其實(shí)是一個(gè)更小型的 Ajax 應(yīng)用。每個(gè)頁(yè)面上面都包括有一 些使用 JavaScript開(kāi)發(fā) 的 Ajax 組件。這些組件使用 XMLHttpRequest 對(duì)象以異步的方式與服務(wù)器通信,從服務(wù)器獲取需要的數(shù)據(jù)后使用 DOM API 來(lái)更新頁(yè)面中的一部分內(nèi)容。因此 Ajax 應(yīng)用與傳統(tǒng)的 Web 應(yīng) 用的區(qū)別主要在三個(gè)地方: 1. 不刷新整個(gè)頁(yè)面,在頁(yè)面內(nèi)與服務(wù)器通信。 2. 使用異步方式與服務(wù)器通信,不需要打斷用戶的操作,具有更加迅速的響應(yīng)能力。 3. 系統(tǒng) 僅由少量頁(yè)面組成。大部分交互在頁(yè)面之內(nèi)完成,不需要切換整個(gè)頁(yè)面。 由此可 見(jiàn), Ajax 使得 Web 應(yīng)用更加動(dòng)態(tài),帶來(lái)了更高的智能,并且提供 了表現(xiàn)能力豐富的 Ajax UI 組件。 3 需求分析 同步環(huán)境 本系統(tǒng)的同步環(huán)境如圖 3: 用戶操作后等待 …… .. 服務(wù)器端處理 客戶端頁(yè)面 處理 新的頁(yè)面呈現(xiàn) 數(shù)據(jù)提交 數(shù)據(jù)返回 第 6 頁(yè) 共 19 頁(yè) 因 特 網(wǎng)檢 索 服 務(wù) 器 圖 3 同步環(huán)境 檢索服務(wù)器通過(guò) Inter 檢索 Web 頁(yè)面。 本設(shè)計(jì)要實(shí)現(xiàn)的功能: 1. 能夠?qū)?Inter 上的網(wǎng)頁(yè) 內(nèi)容、標(biāo)題、鏈接等信息按鏈?zhǔn)绞占?。 2. 能夠?qū)崿F(xiàn)一定 鏈接 深度的 網(wǎng)頁(yè)收集 ,也就是在 Inter上實(shí)現(xiàn)一定的 URL級(jí)的數(shù)據(jù) 收錄 。 3. 對(duì)收集到的數(shù)據(jù)存入 MSSQL Server 2021 等關(guān)系型數(shù)據(jù)庫(kù)中、或者存入文本文件中。 4. 網(wǎng)站信 息庫(kù)中的信息會(huì)不斷的變動(dòng) ,對(duì)收集到的數(shù)據(jù)需要定期的自動(dòng)維護(hù),做到定期的刪除、從新收集。 5. 對(duì)收集到的數(shù)據(jù)進(jìn)行關(guān)鍵詞的檢索。 6. 對(duì)檢索出的數(shù)據(jù)要可定位性 , 即可以 顯示 對(duì)數(shù)據(jù)的出處的鏈接。 7. 實(shí)現(xiàn)中英文分詞功能 , 能夠按中文或者英文單詞檢索數(shù)據(jù)。 8. 實(shí)現(xiàn)無(wú)刷新的顯示搜索結(jié)果,對(duì)搜索用時(shí)的計(jì)算、顯示,關(guān)鍵字高亮顯示等。 9. 邏輯搜索功能比如“中國(guó)” AND“北京” AND NOT(“海淀區(qū)” AND“中關(guān)村”)。 性能需求 1. 精度 : 對(duì)收集到的信息需要一定的完整性,即對(duì)鏈接層次里的每個(gè)鏈接頁(yè)面都能夠收集得到,并寫(xiě)入收集的存 儲(chǔ)區(qū)里。 對(duì)搜索出的內(nèi)容需要包含有關(guān)鍵字信息 2. 時(shí)間特性要求: 數(shù)據(jù)收集時(shí),因?yàn)槭菍?duì) Inter 網(wǎng)上 Web 信息的收集,并且采用 URL第 7 頁(yè) 共 19 頁(yè) 級(jí)鏈?zhǔn)降木W(wǎng)頁(yè)收集。收集數(shù)據(jù)時(shí)不能夠出現(xiàn)無(wú)響應(yīng)的等待。 搜索時(shí)響應(yīng)時(shí)間應(yīng)不超過(guò) 3 秒,無(wú)論搜索的記錄多少。 3. 靈活性 具有良好的中文切詞功能。 輸入輸出要求 輸入:搜索的關(guān)鍵字。 處理:去前后空格,關(guān)鍵字,查詢索引庫(kù)。 輸出: Web 頁(yè)面上顯示搜索信息。 運(yùn)行需求 1. 硬件環(huán)境需求 : 需要使用 專用服務(wù)器, P4 以上, 512M 以上內(nèi)存, 80G 以 上硬盤(pán); Inter網(wǎng)絡(luò)連接。 2. 軟件環(huán)境: 源 端: Windows 2021/XP 操作系統(tǒng)、 MSSQL Server 2021 數(shù)據(jù)庫(kù)、 、 .NET 。 4 方案 設(shè)計(jì) 結(jié)合前面的同步原理,以及需求的介紹,下面給出同步的方案設(shè)計(jì)。 搜索引擎模型 模型包括 爬蟲(chóng)、索引生成、查詢以及系統(tǒng)配置部分 。 爬蟲(chóng) 包括: 網(wǎng)頁(yè)抓取模塊、 網(wǎng)頁(yè)減肥 模塊、爬蟲(chóng)維持模塊 。 索引生成包括:基于文本文件的索引、基于數(shù)據(jù)庫(kù)的索引。查詢部分有 Ajax、后臺(tái)處理、前臺(tái)界面模塊。 如圖 4 所示。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1