當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 湖南OA系統(tǒng) > 長(zhǎng)沙OA系統(tǒng) > 長(zhǎng)沙OA軟件行業(yè)資訊
用開(kāi)源軟件建垂直搜索引擎
申請(qǐng)免費(fèi)試用、咨詢(xún)電話(huà):400-8352-114
文章來(lái)源:泛普軟件針對(duì)搜索引擎的各種開(kāi)源技術(shù)是開(kāi)源社區(qū)的一枝奇葩,它大大縮短了構(gòu)建搜索應(yīng)用的周期,并使得根據(jù)特定需求打造個(gè)性化應(yīng)用的垂直搜索引擎系統(tǒng)成為可能。作為一個(gè)獨(dú)立的企業(yè)搜索應(yīng)用解決方案,Solr在美國(guó)的眾多知名網(wǎng)站中得到應(yīng)用,如美國(guó)最大的科技資訊類(lèi)網(wǎng)站CNet。Solr基于高性能的Lucene開(kāi)發(fā),它不僅實(shí)現(xiàn)了比Lucene更為豐富的查詢(xún)語(yǔ)言和更為優(yōu)異的查詢(xún)性能,而且實(shí)現(xiàn)了可配置、可擴(kuò)展,對(duì)外提供類(lèi)似于Web 服務(wù)的API接口。用戶(hù)可通過(guò)Http請(qǐng)求向搜索引擎服務(wù)器提交指定格式的XML文件生成索引,也可以通過(guò)“Http Get”操作提出查詢(xún)請(qǐng)求,并得到XML格式的返回結(jié)果。Solr結(jié)合其他開(kāi)源搜索軟件成為構(gòu)建行業(yè)垂直搜索引擎的優(yōu)選方案。
垂直搜索引擎的總體結(jié)構(gòu)
本文所述的電子元器件垂直搜索引擎以Solr 1.4為核心框架,綜合應(yīng)用Nutch、IK Analyzer等開(kāi)源軟件,充分利用它們靈活的配置、豐富的功能以及高效的性能,力求用最簡(jiǎn)單的代碼,快速實(shí)現(xiàn)海量電子元器件信息的采集、文本搜索、參數(shù)檢索,滿(mǎn)足技術(shù)研究人員與市場(chǎng)采購(gòu)人員對(duì)于行業(yè)領(lǐng)域知識(shí)的專(zhuān)、精、深要求。
電子元器件垂直搜索引擎系統(tǒng)包括數(shù)據(jù)采集、數(shù)據(jù)加工、數(shù)據(jù)規(guī)劃和管理、搜索服務(wù)四個(gè)主要部分。數(shù)據(jù)采集部分負(fù)責(zé)對(duì)Internet、Intranet、內(nèi)部電子文檔、結(jié)構(gòu)化數(shù)據(jù)(關(guān)系數(shù)據(jù)庫(kù)、XML)等進(jìn)行抓取、濾重、分類(lèi)、摘要; 數(shù)據(jù)加工部分負(fù)責(zé)對(duì)采集來(lái)的數(shù)據(jù)進(jìn)行篩選、編輯和審校; 數(shù)據(jù)規(guī)劃和管理部分負(fù)責(zé)系統(tǒng)元數(shù)據(jù)的定義與管理,包括分類(lèi)體系、特性參數(shù)、參數(shù)類(lèi)型、計(jì)量單位等; 搜索服務(wù)則為用戶(hù)提供分類(lèi)導(dǎo)航、數(shù)據(jù)檢索、行業(yè)報(bào)告及其他個(gè)性定制服務(wù)(系統(tǒng)的總體結(jié)構(gòu)如附圖所示)。本文結(jié)合選取其中的數(shù)據(jù)采集(Web頁(yè)面抓取、結(jié)構(gòu)化數(shù)據(jù)采集、中文支持)、搜索結(jié)果呈現(xiàn)(層面瀏覽、高亮顯示、分頁(yè)處理)等幾個(gè)重點(diǎn)實(shí)現(xiàn)方法進(jìn)行介紹。
數(shù)據(jù)采集
1. Web頁(yè)面抓取
采集互聯(lián)網(wǎng)Web頁(yè)面的數(shù)據(jù)并非Solr所長(zhǎng),我們可以借助在這方面有著突出表現(xiàn)的Nutch。Nutch基于Hadoop分布式系統(tǒng),既可以在單臺(tái)機(jī)器上運(yùn)行,也可以在多臺(tái)機(jī)器構(gòu)成的集群上運(yùn)行。Nutch可以根據(jù)用戶(hù)需要配置優(yōu)先抓取某些頁(yè)面,而且抓取質(zhì)量很高。
本系統(tǒng)我們利用Solr作為處理搜索結(jié)果的源和入口,而讓Nutch負(fù)責(zé)它最擅長(zhǎng)的工作: 抓取和提取內(nèi)容。Nutch的配置文件是nutch-site.xml,配置的內(nèi)容包括指定蜘蛛的名稱(chēng)、激活插件、限制單機(jī)一次運(yùn)行抓取的最大URL數(shù)、指定抓取規(guī)則等。完成這些基本配置以后就可以進(jìn)行抓取分析操作。
2. 結(jié)構(gòu)化數(shù)據(jù)采集
為了充分利用現(xiàn)有資源,提高數(shù)據(jù)檢索效率,我們把收錄了100多萬(wàn)條電子元器件產(chǎn)品、1000多萬(wàn)條特性參數(shù)信息的中國(guó)電子元器件產(chǎn)品數(shù)據(jù)庫(kù)和中國(guó)電子廠商數(shù)據(jù)庫(kù)、韓國(guó)電子元器件信息庫(kù)作為結(jié)構(gòu)化數(shù)據(jù)源,向Solr一次全部導(dǎo)入數(shù)據(jù),后續(xù)維護(hù)的部分使用增量導(dǎo)入。用于搜索的表主要涉及產(chǎn)品基本信息表、廠商基本信息表、分類(lèi)表、特性參數(shù)表、參數(shù)模板表、模板信息表、產(chǎn)品特性參數(shù)值表、計(jì)量單位表等。
Solr通過(guò)可配置的方式將數(shù)據(jù)庫(kù)中多列、多表的數(shù)據(jù)生成Solr文檔。配置的方法是在域結(jié)點(diǎn)內(nèi)定義具體的字段(類(lèi)似數(shù)據(jù)庫(kù)中的字段),然后通過(guò)配置文件導(dǎo)入所有數(shù)據(jù),發(fā)現(xiàn)并處理由插入、更新帶來(lái)的變化。
3. 中文搜索支持
Solr的分析包并沒(méi)有直接提供中文搜索支持。這里選用輕量級(jí)的中文分詞工具包IK Analyzer來(lái)配合工作。IK Analyzer基于Java開(kāi)源,如今新版本的IKAnalyzer 3.2.0已發(fā)展為面向Java 的公用分詞組件,獨(dú)立于Lucene 項(xiàng)目,同時(shí)提供了對(duì)Solr的專(zhuān)用接口。
電子元器件搜索引擎系統(tǒng)利用的IK Analyzer特性包括: 特有的“正向迭代最細(xì)粒度切分算法”具有60 萬(wàn)字/秒的高速處理能力; 多詞元處理器分析模式,支持英文字母(IP 地址、Email、URL)、數(shù)字(日期、常用中文數(shù)量詞、羅馬數(shù)字、科學(xué)計(jì)數(shù)法),中文詞匯(姓名、地名處理)等分詞處理; 優(yōu)化的詞典存儲(chǔ)更小占內(nèi)存用; 針對(duì)Lucene 全文檢索優(yōu)化的查詢(xún)分析器IKQueryParser; 采用歧義分析算法優(yōu)化查詢(xún)關(guān)鍵字的搜索排列組合,可極大地提高檢索的命中率。
由于電子元器件垂直搜索應(yīng)用面向特定的專(zhuān)業(yè)領(lǐng)域,IK Analyzer本身雖然已經(jīng)提供很豐富的常用詞匯,但對(duì)于專(zhuān)業(yè)性強(qiáng)的應(yīng)用仍然顯得捉衿見(jiàn)肘。好在IK Analyzer提供了良好的擴(kuò)展能力,我們利用配置文件輕易實(shí)現(xiàn)了用戶(hù)詞典的擴(kuò)展與定制,這樣就可以搜索到如“精密薄膜柱狀無(wú)引線(xiàn)電阻器”、“半波隨機(jī)型固體繼電器”這些專(zhuān)業(yè)詞匯了。
搜索結(jié)果呈現(xiàn)
Solr的搜索結(jié)果通常以XML格式返回,這對(duì)于普通用戶(hù)而言不合適,不過(guò)Solr提供了多種途徑(如正則表達(dá)式和文本解析)將搜索返回的結(jié)果信息進(jìn)行重新布局,以產(chǎn)生用戶(hù)易于理解的可視頁(yè)面,但都需要大量的編碼工作。在系統(tǒng)中我們利用XSLT把XML格式的結(jié)果文件轉(zhuǎn)換成HTML文件。經(jīng)過(guò)轉(zhuǎn)換后,就可以得到能看到搜索結(jié)果的頁(yè)面了。
Solr提供了層面瀏覽(facet)功能,它類(lèi)似于一種分類(lèi)篩選。運(yùn)行層面無(wú)需在Solr 中進(jìn)行配置,但可能需要按照新的方式對(duì)應(yīng)用程序內(nèi)容進(jìn)行索引。在已索引的字段中完成分層,層面對(duì)未進(jìn)行斷詞的非小寫(xiě)詞最為有效。Facet 字段通常不需要存儲(chǔ),因?yàn)榉謱用娴目傮w思想就是將可讀的值顯示給用戶(hù)。要注意的是, Solr 沒(méi)有在層面中創(chuàng)建類(lèi)別,必須由應(yīng)用程序自身在索引期間進(jìn)行添加,正如在索引應(yīng)用程序時(shí)給文檔指派關(guān)鍵字一樣。如果存在層面字段,Solr 就提供了查明這些層面及其計(jì)數(shù)的邏輯。
另外,為了在搜索結(jié)果中取得最匹配的一段文本并突出顯示出來(lái),有必要對(duì)搜索結(jié)果進(jìn)行高亮顯示。高亮顯示可修改配置文件實(shí)現(xiàn)。該配置中包括了高亮文本時(shí)使用的前綴和后綴(通常在此指定突出顯示文本的字體、字號(hào)、顏色或其他風(fēng)格)。
如果搜索結(jié)果較多還需要分頁(yè),但我們不希望自行編寫(xiě)復(fù)雜的代碼實(shí)現(xiàn)分頁(yè)。我們?cè)谙到y(tǒng)中使用了一個(gè)開(kāi)源的分頁(yè)插件,專(zhuān)門(mén)為Solr量身定制,由它對(duì) Solr 的搜索結(jié)果進(jìn)行分頁(yè)處理。
實(shí)際上,Solr的功能遠(yuǎn)不止以上這些,還有很多通過(guò)簡(jiǎn)單配置和少量修改即可實(shí)現(xiàn)的搜索功能有待研究開(kāi)發(fā)。目前,我們圍繞以Solr為主體的探索以及各項(xiàng)功能的實(shí)現(xiàn)仍在繼續(xù),力求在保證系統(tǒng)功能與性能的前提下,充分利用開(kāi)源軟件的優(yōu)勢(shì),降低開(kāi)發(fā)成本。
圖注:電子元器件垂直搜索引擎系統(tǒng)結(jié)構(gòu)圖
(作者單位:董婭為電子工業(yè)出版社、周峻松為工業(yè)和信息化部電子科學(xué)技術(shù)情報(bào)研究所)
- 1廈門(mén)OA軟件
- 2合肥OA軟件行業(yè)資訊
- 3杭州OA軟件
- 4鄭州OA軟件
- 5濟(jì)南OA軟件
- 6青島OA軟件
- 7太原OA軟件
- 8上海OA軟件
- 9上海OA軟件行業(yè)資訊
- 10石家莊OA軟件
- 11天津OA軟件
- 12沈陽(yáng)OA軟件
- 1IT治理,為保險(xiǎn)信息系統(tǒng)“保險(xiǎn)”
- 2解決Hyper-V高可用集群服務(wù)和網(wǎng)絡(luò)問(wèn)題
- 3重復(fù)數(shù)據(jù)刪除 為何最吸引CIO的眼球
- 4高清監(jiān)控存儲(chǔ)瓶頸 H.264欲統(tǒng)一編碼標(biāo)準(zhǔn)
- 5淘寶數(shù)據(jù)庫(kù)專(zhuān)家深入解析數(shù)據(jù)倉(cāng)庫(kù)架構(gòu)
- 6長(zhǎng)沙OA軟件的信息門(mén)戶(hù)的應(yīng)用需求
- 7固態(tài)硬盤(pán)取代旋轉(zhuǎn)磁盤(pán),難!
- 8OA辦公系統(tǒng)必須為企業(yè)解決業(yè)務(wù)管理需求為上
- 9協(xié)同管理軟件在集團(tuán)中的公文管理解決方案
- 10六大方法讓云計(jì)算部署如虎添翼
- 11IIS部署虛擬化時(shí)需要考慮的四件事
- 12綠色I(xiàn)T技術(shù)促進(jìn)IT節(jié)能升級(jí)
- 13數(shù)據(jù)中心里的創(chuàng)新之舉
- 14融合通信平臺(tái)或?yàn)閼?yīng)急通信之必然歸宿?
- 15企業(yè)應(yīng)用架構(gòu)為什么仍然重要
- 16三網(wǎng)融合加速VoIP取代傳統(tǒng)電話(huà)的進(jìn)程
- 17讓企業(yè)SOA項(xiàng)目更可控之必備十大戒條
- 18什么是統(tǒng)一存儲(chǔ)?
- 19OA辦公系統(tǒng)與Oracle人員組織集成應(yīng)用
- 20虛擬化響起安全警報(bào)
- 21云計(jì)算實(shí)施性中的技術(shù)問(wèn)題
- 22數(shù)據(jù)中心6大技術(shù)創(chuàng)新
- 23PDM工作流管理技術(shù)
- 24通過(guò)配置虛擬產(chǎn)品來(lái)管理供應(yīng)鏈
- 25基站回傳,3G網(wǎng)絡(luò)建設(shè)的基石
- 26電信級(jí)技術(shù)已悄然在網(wǎng)絡(luò)視頻監(jiān)控中啟動(dòng)
- 27智能企業(yè)網(wǎng)產(chǎn)品分析:HP ProCurve
- 28實(shí)施統(tǒng)一存儲(chǔ)
- 29電子證帶來(lái)的監(jiān)管變革 具有里程碑意義
- 30如何為Windows7創(chuàng)建系統(tǒng)恢復(fù)盤(pán)
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓