<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    laoding
    本來我以為,隱身了別人就找不到我,沒有用的,像我這樣拉風的男人,無論走到哪里,都像在黑暗中的螢火蟲一樣,那樣的鮮明,那樣的出眾。我那憂郁的眼神,稀疏的胡茬,那微微隆起的將軍肚和親切的笑容......都深深吸引了眾人......
    posts - 0,  comments - 37,  trackbacks - 0
     

    1.     什么是lucene

    Apache Lucene是一個開放源程序的搜尋器引擎,利用它可以輕易地為Java軟件加入全文搜尋功能。Lucene的最主要工作是替文件的每一個字作索引,索引讓搜尋的效率比傳統的逐字比較大大提高,Lucen提供一組解讀,過濾,分析文件,編排和使用索引的API,它的強大之處除了高效和簡單外,是最重要的是使使用者可以隨時應自已需要自訂其功能。 Luceneapache軟件基金會項目組的一個子項目,是一個開放源代碼的全文檢索引擎工具包,即它不是一個完整的全文檢索引擎,而是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎,部分文本分析引擎。Lucene的目的是為軟件開發人員提供一個簡單易用的工具包,以方便的在目標系統中實現全文檢索的功能,或者是以此為基礎建立起完整的全文檢索引擎。

    2.     Lucene能做什么

    Lucene使你可以為你的應用程序添加索引和搜索能力。Lucene可以索引并能使得可以轉換成文本格式的任何數據能夠被搜索。Lucene并不關心數據的來源、格式甚至它的語言,只要你能將它轉換為文本。這就意味著你可經索引并搜索存放于文件中的數據:在遠程服務器上的web頁面,存于本地文件系統的文檔,簡單的文本文件,微軟Word文檔,HTMLPDF文件或任何其它能夠提取出文本信息的格式。

    同樣,利用Lucene你可以索引存放于數據庫中的數據,提供給用戶很多數據庫沒有提供的全文搜索的能力。一旦你集成了Lucene,你的應用程序的用戶就能夠像這樣來搜索:+George +Rice –eat –pudding, Apple –pie +Tiger, animal:monkey AND food:banana等等。利用Lucene,你可以索引和搜索email郵件,郵件列表檔案,即時聊天記錄,你的Wiki頁面……等等更多。

    3.     Lucene的優點

    1)索引文件格式獨立于應用平臺。Lucene定義了一套以8位字節為基礎的索引文件格式,使得兼容系統或者不同平臺的應用能夠共享建立的索引文件。

    2)在傳統全文檢索引擎的倒排索引的基礎上,實現了分塊索引,能夠針對新的文件建立小文件索引,提升索引速度。然后通過與原有索引的合并,達到優化的目的。Lucene提供了索引的擴展機制,因此索引可以動態擴展。

    4)設計了獨立于語言和文件格式的文本分析接口,索引器通過接受Token流完成索引文件的創立,用戶擴展新的語言和文件格式,只需要實現文本分析的接口。

    5)已經默認實現了一套強大的查詢引擎,用戶無需自己編寫代碼即使系統可獲得強大的查詢能力,Lucene的查詢實現中默認實現了布爾操作、模糊查詢、分組查詢等等。

    6搜索過程優化。Lucene面向全文檢索的優化在于首次索引檢索后,并不把所有的記錄(Document)具體內容讀取出來,而起只將所有結果中匹配度最高的頭100條結果(TopDocs)的ID放到結果集緩存中并返回。

    7Lucene的另外一個特點是在收集結果的過程中將匹配度低的結果自動過濾掉了。這也是和數據庫應用需要將搜索的結果全部返回不同之處

    4.     查詢相關

    Analyzer是分析器,它的作用是把一個字符串按某種規則劃分成一個個詞語,并去除其中的無效詞語,這里說的無效詞語是指英文中的“of”、 the”,中文中的“的”、“地”等詞語,這些詞語在文章中大量出現,但是本身不包含什么關鍵信息,去掉有利于縮小索引文件、提高效率、提高命中率。

    分詞的規則千變萬化,但目的只有一個:按語義劃分。這點在英文中比較容易實現,因為英文本身就是以單詞為單位的,已經用空格分開;而中文則必須以某種方法將連成一片的句子劃分成一個個詞語。

    (1)      用通配符進行搜索

    單個任意字符匹配的是所有可能單個字符。例如,搜索"text或者"test",可以這樣:te?t

    多個任意字符匹配的是0個及更多個可能字符。例如,搜索test, tests 或者 tester,可以這樣:test*

    您也可以在字符竄中間使用多個任意字符通配符。te*t

    注意:您不能在搜索的項開始使用*或者?符號。

    (2)      模糊查詢

    Lucene支持基于Levenshtein DistanceEdit Distance算法的模糊搜索。要使用模糊搜索只需要在單獨項的最后加上符號"~"。例如搜索拼寫類似于"roam"的項這樣寫:roam~

    這次搜索將找到形如foamroams的單詞。

    注意:使用模糊查詢將自動得到增量因子(boost factor)為0.2的搜索結果.

    (3)      布爾操作符

    布爾操作符可將項通過邏輯操作連接起來。Lucene支持AND, "+", OR, NOT "-"這些操作符。(注意:布爾操作符必須全部大寫)

    (4)      轉義特殊字符

    Lucene支持轉義特殊字符,因為特殊字符是查詢語法用到的。現在,特殊字符包括

    + - && || ! ( ) { } [ ] ^ " ~ * ? : "

    轉義特殊字符只需在字符前加上符號",例如搜索(1+1):2,使用查詢

    "(1"+1")":2

    5.     一些使用經驗

    (1)      關鍵詞區分大小寫

    OR AND TO等關鍵詞是區分大小寫的,lucene只認大寫的,小寫的當做普通單詞。

    (2)      讀寫互斥性

    同一時刻只能有一個對索引的寫操作,在寫的同時可以進行搜索。

    (3)      文件鎖

    在寫索引的過程中強行退出將在tmp目錄留下一個lock文件,使以后的寫操作無法進行,可以將其手工刪除。

    (4)       時間格式

    lucene只支持一種時間格式yyMMddHHmmss,所以你傳一個yy-MM-dd HH:mm:ss的時間給lucene它是不會當作時間來處理的。

    (5)      索引更新

    lucene不支持索引更新,必須是先刪除再新建索引,如果數據量很大且更新快則相當麻煩,本身建立索引是個漫長的過程,同時相當耗內存且很傷disk,不能實時的滿足查詢。

    (6)      中間取索引

    lucene不支持從中間取索引。例如:用戶取第十頁,lucene需要把前面所有的內容都要檢索出,然后所有的排序,過濾掉前面的然后返回。

    (7)      英文查詢

    若查詢英文,比如有一句話:jiangxi strong 如果你輸入jiang或者stron等不完整的一個詞,將不能查詢出結果,當你輸入jiangxi或者strong才能查詢出結果。

    posted on 2008-10-31 17:33 老丁 閱讀(2688) 評論(0)  編輯  收藏 所屬分類: 搜索引擎 lucene
    本博客主為學習和復習之用,無關其他,想罵人的繞道
    Email:dkm123456@126.com
    大家一起交流進步
    QQ:283582761


    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    留言簿(4)

    我參與的團隊

    文章分類(50)

    文章檔案(48)

    相冊

    朋友

    搜索

    •  

    積分與排名

    • 積分 - 96431
    • 排名 - 600

    最新評論

    主站蜘蛛池模板: 亚洲色图激情文学| 亚洲精品中文字幕乱码| 羞羞漫画页面免费入口欢迎你| 三年片在线观看免费观看高清电影| 亚洲最大的视频网站| 四虎1515hh永久久免费| 亚洲小说图片视频| 无码永久免费AV网站| 亚洲色大18成人网站WWW在线播放| 曰批视频免费40分钟试看天天| 亚洲一卡2卡三卡4卡有限公司| 四虎影视成人永久免费观看视频| 亚洲AV无码日韩AV无码导航| 亚洲色在线无码国产精品不卡| 好男人视频在线观看免费看片| 理论亚洲区美一区二区三区| www国产亚洲精品久久久日本| 男女一边摸一边做爽的免费视频| 亚洲国产精品无码AAA片| 无码av免费网站| 亚洲 暴爽 AV人人爽日日碰| 国产女高清在线看免费观看| 国产精品免费观看视频| 亚洲AV第一页国产精品| 最近最好的中文字幕2019免费 | AV激情亚洲男人的天堂国语| 免费国产成人午夜私人影视| 在线免费观看h片| 亚洲国产视频一区| 国产片免费在线观看| 成人无码精品1区2区3区免费看| 亚洲AV无码一区二区三区系列| 成年人视频免费在线观看| 亚洲色大网站WWW永久网站| 亚洲精品无码你懂的网站| 日本免费一区二区久久人人澡| 自拍偷区亚洲国内自拍| 国产亚洲?V无码?V男人的天堂| 国产大片91精品免费观看不卡| 粉色视频成年免费人15次| 久久久久亚洲AV片无码下载蜜桃|