Lucene 个人领悟 (一)
在上學(xué)的時(shí)候就對(duì)搜索有著極大地興趣,圖書館也借了好多的書看過,也用過Python寫過爬蟲。
有好多人在初步學(xué)習(xí)Lucene的時(shí)候都以為他是一個(gè)搜索引擎,或者搜索工具。
在此我要特別強(qiáng)調(diào)一下,Lucene絕對(duì)不是一個(gè)搜索引擎或者是搜索工具,他就是一個(gè)jar包(一系列),一個(gè)工具,一個(gè)API,而且他是一個(gè)檢索工具,也不是搜索工具。
所謂搜索引擎,比如:百度,搜狗,獵兔,恕我愚昧只知道國內(nèi)的。這才是搜索引擎,搜索引擎,大概(非常宏觀的哦)分為兩部分:
1、爬蟲。也是非常重要的一部分,需要對(duì)互聯(lián)網(wǎng)上的信息非常全面的下載到本地服務(wù)器,比如百度服務(wù)器,那數(shù)據(jù)量真的就海了去了,用爬蟲爬遍互聯(lián)網(wǎng)的每一個(gè)角落,每一個(gè)頁面,將內(nèi)容下載到服務(wù)器本地。
2、檢索。這才是我們Lucene需要干的活,下載到本地之后,我們就需要類似Lucene將海量的數(shù)據(jù)進(jìn)行掃描、分詞,根據(jù)一定的分詞規(guī)則,建立索引,然后,有需要搜索的時(shí)候再去本地索引檢索。
當(dāng)然啊,百度那肯定是一個(gè)非常復(fù)雜的系統(tǒng),比如爬蟲什么時(shí)候爬?怎么爬?怎么做到實(shí)時(shí)更新?爬到的信息權(quán)重怎么算?索引按照什么區(qū)分詞?等等等等。都是非常復(fù)雜的,我肯定不知道,這里只是作為一個(gè)引子,引出我們需要討論的Lucene。
還有一個(gè)問題就是,Lucene.nutch.solr.這三個(gè)東西經(jīng)常一起出現(xiàn),而且特別容易搞混,剛開始的時(shí)候我就比較混。
所以,我也想寫一下,全篇都是個(gè)人理解啊,有問題請(qǐng)您一定指出來(雖然也不一定有人看,手動(dòng)尷尬。。。自娛自樂。。。)
Lucene,正如前文所說,是一個(gè)工具!工具!工具!重要的事情說三遍,他就是一個(gè)API,沒有什么復(fù)雜的應(yīng)用。但是nutch,solr都是從Lucene開發(fā)出來的,或者說進(jìn)一步封裝了一些應(yīng)用在里面。
solr 在Lucene的基礎(chǔ)上封裝了一些功能,或者你就可以理解成為,有人基于Lucene這個(gè)jar包開發(fā)出來了一個(gè)可用的web工程,有頁面,有接口,有一些高亮了其他功能。(暴龍獸進(jìn)化)
nutch 這個(gè)就叼了,這是完全的一個(gè)搜索引擎,你可以叫做“小百度”,搜索引擎的很多功能基本都有了,爬蟲,我們剛說的,對(duì)不對(duì),索引,分詞,查詢對(duì)不對(duì),都有了。搞懂了之后你就可以自己搭一個(gè)搜索引擎了,叼不。呵呵。(暴龍獸超進(jìn)化)
究極進(jìn)化,我也不知道在哪。
這幾天太閑了,繼續(xù)研究,具體怎么玩兒,明天再寫吧,一會(huì)兒三篇好嘞呀,浪一會(huì)兒可以回家了。
總結(jié)
以上是生活随笔為你收集整理的Lucene 个人领悟 (一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JDBC事务案例学习
- 下一篇: OpenCV-Python 轮廓分层 |