亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Elasticsearch 的校內(nèi)全文搜索平臺的研究與實現(xiàn)

        2018-12-28 06:41:12欽蔣承沈宏良
        現(xiàn)代計算機 2018年34期
        關鍵詞:搜索引擎用戶

        欽蔣承,沈宏良

        (湖州師范學院,湖州313000)

        0 引言

        在目前的國內(nèi)高校中,隨著數(shù)字校園的工作不斷推進,無紙化辦公的理念不斷深化,校園網(wǎng)絡中的各種新聞資訊、文檔、多媒體等數(shù)字資源呈現(xiàn)出爆發(fā)式的增長。這些數(shù)字資源能夠為師生的日常工作和學習提供有效幫助,但面對體量龐大的校園數(shù)字資源,使用人工查詢的方式無法快速的定位到所需資源所在的具體位置,而通用的搜索引擎例如百度、谷歌搜索很難對一個域內(nèi)的資源進行精準全面的搜索,非常不利于校內(nèi)用戶的搜索體驗;同時,這些校內(nèi)的信息資源分布在不同的服務器和存儲中,無法通過集中管理來有效分析利用這些信息資源,從而無法獲取數(shù)據(jù)背后的價值和知識。也就產(chǎn)生了所謂“數(shù)據(jù)富裕而信息貧瘠”的尷尬局面[1]。因此,有必要根據(jù)高校的校園網(wǎng)特色和本校用戶的搜索需求來定制一套全面、高效、精準且易用的搜索平臺。

        針對當前現(xiàn)狀,本文基于對新型分布式數(shù)據(jù)管理和檢索核心ES 的研究學習,利用其強大的分布式數(shù)據(jù)管理能力和高效的實時文件存儲和索引機制,建立校內(nèi)全文搜索平臺。在此基礎上,根據(jù)校內(nèi)用戶實際的檢索需求,針對ES 索引模塊的中文分詞缺陷,搜索結果相關度不夠符合域內(nèi)用戶體驗的缺陷進行進一步的優(yōu)化,引入成熟的中文分詞算法IK;并將搜索用戶的校內(nèi)身份信息引入搜索結果的相關度計算中,提高用戶檢索結果的相關度和準確性。實驗表明,優(yōu)化后的搜索平臺與通用的搜索引擎和基于內(nèi)容管理的搜索引擎相比較,本文實現(xiàn)的搜索引擎能夠更快速、準確、全面地完成校內(nèi)用戶的搜索需求。

        1 搜索引擎及Elasticsearch概述

        1.1 搜索引擎概述

        搜索引擎是用以在萬維網(wǎng)中搜索信息的軟件系統(tǒng)[2]。搜索引擎平臺主要包括爬蟲工具、索引工具、檢索器和用戶界面這四個主要部分組成。搜索引擎使用網(wǎng)絡爬蟲(Web Crawler)不斷地挖掘網(wǎng)域內(nèi)的網(wǎng)絡內(nèi)容,不斷地周而復始來窮盡探索網(wǎng)域內(nèi)的網(wǎng)頁。索引工具則針對爬蟲爬取的網(wǎng)頁內(nèi)容生成以詞為索引項的索引表,提高檢索器在數(shù)據(jù)庫中查找目標文檔的工作效率。全文搜索的索引會對網(wǎng)頁內(nèi)容中出現(xiàn)的每一個單詞建立索引列表[3]。檢索器會接收用戶提交的搜索關鍵詞,在數(shù)據(jù)庫中通過關鍵詞索引匹配來快速獲取關聯(lián)結果,并在用戶界面上按照預設的相關性排序來向用戶呈現(xiàn)搜索結果。

        1.2 Elasticsearch概述

        Elasticsearch 是一個基于Apache Lucene 開發(fā)而來的實時的分布式搜索和數(shù)據(jù)分析引擎[4]。ES 能夠快速、全面地瀏覽大規(guī)模數(shù)據(jù)集,適用于全文檢索,結構化數(shù)據(jù)檢索和數(shù)據(jù)分析;ES 強大的數(shù)據(jù)檢索能力和優(yōu)秀的二次開發(fā)能力,使得很多商業(yè)軟件和平臺如百度、GitHub、Wikipedia 等也采用ES 作為數(shù)據(jù)資源檢索的核心組件。通過文獻的系統(tǒng)綜述[5-8],我們總結ES 具有以下突出優(yōu)點:

        (1)ES 支持分布式的實時文件存儲結構,任意一個爬取到的字段都可以建立索引,并且可以被搜索到。

        (2)ES 有非常強大的可擴展性,分布式架構可以擴展到上百臺服務器,能夠應對PB 級結構化或非結構化數(shù)據(jù)。

        (3)ES 提供了RESTful API,使用JSON 格式,提供了非常優(yōu)秀的外部交互能力,使得搜索引擎能夠支持多種文件類型的搜索。ES 項目提供了多種語言版本的客戶端,包括Java、Python、.NET 和Groovy,提供了友好的二次開發(fā)平臺。

        (4)ES 面向文檔,能夠存儲完整的數(shù)據(jù)對象或文檔,同時能夠?qū)γ恳粋€數(shù)據(jù)對象的內(nèi)容做索引。

        (5)具備良好的數(shù)據(jù)備份和恢復功能,在發(fā)現(xiàn)有數(shù)據(jù)節(jié)點退出時,ES 能夠根據(jù)服務器的負載對索引分片進行重新分配,丟失的數(shù)據(jù)節(jié)點在重新啟動后,也會自動恢復連接。有較強的魯棒性。

        綜合以上的特點,ES 可以有效地提升搜索效率,具有優(yōu)秀的擴展能力以及數(shù)據(jù)操縱能力。因此,本文基于ES 進行校內(nèi)全文搜索引擎的開發(fā)。

        2 平臺設計與實現(xiàn)

        針對高校服務器的分布特點,本文設計的基于Elasticsearch 的校內(nèi)全文搜索引擎的總體架構如圖1所示,其核心組件包括爬蟲模塊、索引模塊以及檢索模塊。

        圖1 校內(nèi)全文搜索引擎總體架構設計

        2.1 爬蟲模塊

        本文設計并實現(xiàn)的爬蟲模塊架構如圖2 所示。

        圖2 爬蟲模塊架構設計

        初始化的URLs 列表為校園網(wǎng)的首頁以及各二級行政單位和二級學院首頁,并提交給多線程工作分配單元,將列表內(nèi)的URLs 平均的分配給n 只爬蟲。每個爬蟲單元在接收到各自的URLs 列表后,向目標URL發(fā)送HTTP 請求,接收返回的網(wǎng)頁內(nèi)容數(shù)據(jù)并進行解析。一方面,將文本內(nèi)容按照預設的文檔標準進行結構化整理并保存在本地ES 數(shù)據(jù)庫中。另一方面,提取網(wǎng)頁內(nèi)容中包含的URL 鏈接作為新增URLs。這些新增的URLs 將通過預先設定的URL 篩選規(guī)則,將重復的、無效的以及校園網(wǎng)域外的URL 剔除,將剩余的URLs 提交給多線程工作分配單元來進行下一輪的數(shù)據(jù)抓取工作。

        本文基于開源的Java 爬蟲框架WebCollector 定制開發(fā)了并行爬蟲模塊。通過8 條爬蟲線程連續(xù)30 天不間斷爬取,共累計獲取超過四百萬份校園網(wǎng)域內(nèi)的文檔。這些文檔內(nèi)容都按照預設的JSON 標準文檔結構預處理后存儲在ES 的非關系型數(shù)據(jù)庫內(nèi),等待索引模塊處理。

        本文預設的JSON 文檔結構:

        2.2 索引模塊

        ES 引擎的索引機制基于倒排索引(Inverted Index)技術開發(fā),文檔的關鍵詞來組成文檔集合。在用戶搜索時,首先將搜索詞與關鍵詞文檔集進行匹配,再根據(jù)各文檔在該關鍵詞集的權重量來對搜索結果排序。但是,由于ES 搜索核心的分詞表默認為英語,對中文文檔的分詞和歸類能力比較薄弱;同時,在文檔的權重計算上,也沒有考慮到域內(nèi)用戶的檢索偏好,在搜索結果的相關度上與用戶實際要搜索的內(nèi)容匹配度不高。針對以上兩個ES 系統(tǒng)的缺陷,本文針對性地對分詞技術和文檔權重計算算法進行了優(yōu)化,進一步提升校內(nèi)用戶的搜索體驗。

        (1)中文分詞

        本文引入的中文分詞技術基于IKAnalyzer 中文分詞語言包開發(fā)而來,其本質(zhì)是一個開源的,基于詞典分詞和文法分析算法的中文分詞組件。同時,根據(jù)對校內(nèi)搜索用戶的了解,其特點是周期性的搜索關鍵詞重復率較高[11]。相比廣域的搜索引擎,校園網(wǎng)絡范圍內(nèi)的用戶的搜索關鍵詞統(tǒng)計結果分布的離散度相對較低。將這些高頻詞匯引入分詞詞典,對中文分詞的表現(xiàn)和結果集的分類表現(xiàn)都有較大提升。針對這一特點,我們重新設計了ES 的索引模塊,如圖3 所示,將用戶檢索的高頻關鍵詞按用戶身份分類收集在擴展詞庫內(nèi),并對爬蟲爬取的校內(nèi)文檔進行實時分詞索引。最終生成的索引結果能夠更加匹配校內(nèi)用戶檢索的關鍵詞,也能進一步提升搜索結果的相關度。

        (2)權重計算

        一個文檔在索引內(nèi)的排序由文檔的相關性權重決定。一個文檔的權重計算由關鍵詞在該文檔中出現(xiàn)的位置和出現(xiàn)次數(shù)計算得來(出現(xiàn)的次數(shù)越多,出現(xiàn)該詞的文檔數(shù)量越少,則權重越大)?;贓S 存儲文檔的JSON 特性,以及校內(nèi)檢索用戶的身份識別特性,我們可以根據(jù)關鍵詞在不同位置(標題、作者、機構、內(nèi)容等)分別出現(xiàn)的次數(shù)來綜合計算關鍵詞的權重,使搜索結果能夠進一步的匹配用戶的期望。

        根據(jù)魯松等人[12]基于空間向量模型的文檔詞語權重計算方法,本文的權重計算公式如下:

        wt,d表示詞t 在文檔d 中的權重;tft,T,tft,H,tft,C分別表示詞t 在文檔中標題、段落標題和內(nèi)容中分別出現(xiàn)的次數(shù);n 表示文檔的總數(shù);dft表示出現(xiàn)詞t 的文檔總數(shù);而a,b,c 分別代表標題、段落標題和內(nèi)容中的關鍵詞的權重系數(shù),約束條件為:a+b+c=1且a>b>c>0。

        2.3 檢索模塊

        檢索模塊是面向檢索用戶的Web,接收并解析用戶鍵入的搜索關鍵詞,在后臺匹配索引并反饋滿足搜索條件的結果。

        圖3 基于IKAnalyzer的優(yōu)化索引模塊設計

        用戶界面的設計參照了目前世界主流的搜索引擎,谷歌搜索和百度搜索的界面設計,來降低用戶的使用學習成本,如圖4 所示。頁面通過輸入框來接收用戶鍵入的搜索文本,并提交給查詢解析器。最終查詢的結果按照預先設定的相關性排序進行列表呈現(xiàn),如圖5 所示。

        圖4 校內(nèi)搜索引擎首頁面

        最后,為了優(yōu)化引擎的用戶體驗,我們對部分搜索關鍵詞生成檢索結果進行排序優(yōu)化,提高校園網(wǎng)域內(nèi)的各主要站點和熱門站點的排序名次。

        圖5 搜索結果頁面

        3 實驗結果分析

        為了驗證基于ES 的校內(nèi)全文搜索引擎的搜索性能,分別選用了國內(nèi)通用搜索引擎百度和校內(nèi)CMS 集成搜索引擎(CMS)來進行對比測試。測試的指標為前50 個搜索結果的相關度和搜索結果的反饋時間,測試的關鍵詞為“學校名稱+圖書館”。對比結果如表1所示。

        表1 搜索性能對比

        測試結果顯示,基于ES 的校內(nèi)全文搜索引擎在搜索用時和搜索結果的準確率上要優(yōu)于百度和校內(nèi)CMS集成搜索引擎,有效的提升了校內(nèi)文檔檢索的效率和準確性。

        4 結語

        基于ES 的校內(nèi)全文搜索引擎平臺在校園網(wǎng)域內(nèi)運行穩(wěn)定,成功解決了校內(nèi)數(shù)字資源無法精準和快速的定位的問題,同時也滿足了校內(nèi)用戶的搜索需求。本文的下一步工作是在搜索引擎的基礎上,增加用戶搜索熱詞的功能,全校園網(wǎng)域特定時間段內(nèi)對特定數(shù)據(jù)的需求量,并動態(tài)更新檢索結果的相關度權重排序,進一步提升校內(nèi)用戶的搜索體驗。

        猜你喜歡
        搜索引擎用戶
        關注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        網(wǎng)絡搜索引擎亟待規(guī)范
        Nutch搜索引擎在網(wǎng)絡輿情管控中的應用
        警察技術(2015年3期)2015-02-27 15:37:09
        Camera360:拍出5億用戶
        100萬用戶
        如何獲取一億海外用戶
        基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
        廣告主與搜索引擎的雙向博弈分析
        国产精品主播视频| 精品九九人人做人人爱| 国产成人亚洲精品青草天美 | 日韩av无码一区二区三区| 国产麻豆md传媒视频| 精品少妇大屁股白浆无码| 91九色国产在线观看| 午夜被窝精品国产亚洲av香蕉 | 精品综合一区二区三区| 久久精品成人无码观看不卡| 亚洲人在线观看| 日本午夜一区二区视频| 天堂网av在线| 粉嫩的极品女神尤物在线| 射精专区一区二区朝鲜| 少妇极品熟妇人妻无码| 亚洲一区二区三区中文视频| 亚洲视频在线观看一区二区三区| 欧美颜射内射中出口爆在线| 青青草视频免费观看| 亚洲AV无码一区二区三区性色学| 日韩三级一区二区三区四区| 精品亚洲成a人在线观看| 久久人人妻人人做人人爽| 无码av一区在线观看| 国产内射一级一片内射高清视频1| 香港aa三级久久三级| 品色永久免费| 亚洲午夜久久久久中文字幕久| 国产精品麻豆一区二区三区| 九色综合九色综合色鬼| 无码少妇一级AV便在线观看| 成人黄网站免费永久在线观看| 少妇一级淫片中文字幕| 乱人伦中文无码视频| 久热re在线视频精品免费| 亚洲精品一区二区三区四区久久| 毛片免费视频在线观看| 成年女人免费v片| 亚洲av毛片在线播放| 亚洲精品无码av人在线观看|