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

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

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

    Lucene 學習第一天

    Lucene提供的服務實際包含兩部分:
         1) 寫入:將你提供的源寫入索引或者將其從索引中刪除
              寫入流程:
              (1)源字符串首先經過analyzer處理,分成一個個單詞,去除可選(stopword)
              (2)將源中需要的信息加入Document的各個field中,并把需要索引的field索引起來,把需要存儲的
                   field存儲起來
              (3)將索引寫入存儲器,存儲器可以是內存或者磁盤
         2) 讀出:向用戶提供全文搜索服務,讓用戶通過關鍵字定位源
              讀出流程:
              (1)用戶提供搜索關鍵詞,經過analyzer處理
              (2)對處理后的關鍵字搜索索引找出對應的Document
              (3)用戶根據需要從找到的Docement中提取需要的Field
    概念:
             Analyzer   :分析器:把一個字符串按照某種規則劃分成一個個的詞語,并去除其中的無效詞語.
             Document :用戶提供的源是一條條記錄,它們可以是文本文件、字符串或者數據庫表的一條記錄等等。
                                一條記錄經過索引后,就是以 一個Document的形式存儲在索引文件中。用戶進行搜索也
                                是以Document列表的形式返回。
              field         :  一個Docuement可以包含多個信息域,這些信息域就是通過Field在Document中存儲的。它
                                有兩個屬性可以選擇:存儲和索引。
              term        :  搜索的最小單位,表示文檔的一個詞語,由兩部分組成:它表示的詞語和這個詞語出現的
                                 field
              tocken      :  是term的第一次出現,它包含term文本和相應的起止偏移以及一個類型的字符串
              segment   : (小文件)添加索引時,document首先寫入不同的小文件然后再合并成一個大索引文件

    如何建立索引:

          
    IndexWriter writer = new IndexWriter(“/data/index/”, new StandardAnalyzer(), true); 
    Document doc = new Document();
    doc.add(new Field("title", "lucene introduction", Field.Store.YES, Field.Index.TOKENIZED));
    doc.add(new Field("content", "lucene works well", Field.Store.YES, Field.Index.TOKENIZED));
    writer.addDocument(doc);
    writer.optimize();
    writer.close();
         下面我們分析一下這段代碼。
                首先我們創建了一個writer,并指定存放索引的目錄為“/data/index”,使用的分析器為StandardAnalyzer,第三個
          參數說明如果已經有索引文件在索引目錄下,我們將覆蓋它們。然后我們新建一個document。
              我們向document添加一個field,名字是“title”,內容是“lucene introduction”,對它進行存儲并索引。再添加一個名
          字是“content”的field,內容是“lucene works well”,也是存儲并索引。然后我們將這個文檔添加到索引中,如果有多個文
          檔,可以重復上面的操作,創建document并添加。
                添加完所有document,我們對索引進行優化,優化主要是將多個segment合并到一個,有利于提高索引速度。隨后將
          writer關閉,這點很重要。
                如果你想把純文本文件索引起來,而不想自己將它們讀入字符串創建field,你可以用下面的代碼創建
          field: Field field = new Field("content", new FileReader(file));
          這里的file就是該文本文件。該構造函數實際上是讀去文件內容,并對其進行索引,但不存儲。





    posted on 2012-09-19 17:22 Nirvana reborn 閱讀(396) 評論(0)  編輯  收藏 所屬分類: ★搜索引擎


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2012年9月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456

    導航

    統計

    公告

    我好喜歡它,
    我的 QQ 66013804
    我想做技術流,可是我很懶,
    博客新地址:<a href="

    隨筆分類(19)

    文章檔案(1)

    博主鏈接

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: WWW国产成人免费观看视频| 亚洲国产无线乱码在线观看 | 亚洲AV永久无码区成人网站| 一级做a爱过程免费视| 亚洲精品国自产拍在线观看| 五月天国产成人AV免费观看| 亚洲人成无码网站久久99热国产| 日韩毛片免费一二三| 亚洲中文字幕无码一区| 日本三级在线观看免费| 亚洲好看的理论片电影| 18成禁人视频免费网站| 亚洲日本乱码卡2卡3卡新区| 大学生a级毛片免费观看| www亚洲精品久久久乳| 亚洲国产小视频精品久久久三级| 韩国免费A级毛片久久| 久久精品国产亚洲AV麻豆不卡 | 亚洲午夜电影在线观看| 免费可以看黄的视频s色| 亚洲av中文无码字幕色不卡| 亚洲av成人一区二区三区在线观看| 国产裸体美女永久免费无遮挡| 久久亚洲国产午夜精品理论片| **aaaaa毛片免费| 亚洲欧美日韩中文字幕一区二区三区 | 一本色道久久综合亚洲精品蜜桃冫| 免费看美女被靠到爽的视频| 黄页免费视频播放在线播放| 亚洲乱码无码永久不卡在线| 18女人毛片水真多免费| 日韩欧美亚洲国产精品字幕久久久 | 亚洲精品无码久久久影院相关影片 | 色天使亚洲综合一区二区| 亚洲熟妇中文字幕五十中出| 国产成人精品免费视频大| 美女又黄又免费的视频| 亚洲精品线在线观看| 日本不卡视频免费| 一级毛片aaaaaa免费看| 日本亚洲欧美色视频在线播放|