原创 lucene的索引文件結構

lucene的索引文件結構     Lucene的索引文件存在一個索引目錄中。 文件共有10種:*.f(n), *.fdt, *.fdx, *.fnm, *.frq, *.prx, *.tii, *.tis, deletable, s

原创 html文件的圖標變成應用程序圖標怎麼辦

    有的電腦可能遇上一些很怪的問題,比如,html本應該是的圖標,可是卻變成的未知程序的樣子。很苦惱,怎麼辦呢?        顯然問題肯定與IE有關。       一般情況下,使用360修復IE,或者使用一些流氓軟件專殺都不起效果,

原创 理解static執行順序

class Bowl { Bowl(int marker) { ---------------------3,5構造 System.out.println("Bowl(" + marker + ")"); }

原创 Lucene學習總結之三:Lucene的索引文件格式(3)

四、具體格式 4.2. 反向信息 反向信息是索引文件的核心,也即反向索引。 反向索引包括兩部分,左面是詞典(Term Dictionary),右面是倒排表(Posting List)。 在Lucene中,這兩部分是分文件存儲的,詞典是

原创 Lucene的查詢語句用法

前面已經對 Lucene 有了一些瞭解,現在我們想象它怎麼去搜索這些數據呢,如果知道倒排索引,你就知道了,其實 lucene 檢索的是它自己建立的索引,從索引中的到數據的指針,從而得到數據。其實就這麼簡單。 提到索引,現在的索引技術中有

原创 基於Lucene的Compass

Compass是基於Lucene的JAVA搜索引擎開源框架。 1.2、Compass相關網上資源 1、官方網站1: http://www.opensymphony.com 2、官方網站2:[url] http://www.compass-

原创 Lucene學習總結之四:Lucene索引過程分析(1)

對於Lucene的索引過程,除了將詞(Term)寫入倒排表並最終寫入Lucene的索引文件外,還包括分詞(Analyzer)和合並段(merge segments)的過程,本次不包括這兩部分,將在以後的文章中進行分析。 Lucene的索

原创 Lucene學習總結之三:Lucene的索引文件格式(2)

四、具體格式 上面曾經交代過,Lucene保存了從Index到Segment到Document到Field一直到Term的正向信息,也包括了從Term到Document映射的反向信息,還有其他一些Lucene特有的信息。下面對這三種信息

原创 Java編碼

常見的JAVA程序包括以下類別:*直接在console上運行的類(包括可視化界面的類)*JSP代碼類(注:JSP是Servlets類的變型)*Servelets類*EJB類*其它不可以直接運行的支持類 這些類文件中,都有可能含有中文字

原创 使用EHCache提升網站性能

在開發高併發量,高性能的網站應用系統時,緩存Cache起到了非常重要的作用。本文主要介紹EHCache的使用,以及使用EHCache的實踐經驗

原创 Lucene學習總結之四:Lucene索引過程分析(3)

5、DocumentsWriter對CharBlockPool,ByteBlockPool,IntBlockPool的緩存管理 在索引的過程中,DocumentsWriter將詞信息(term)存儲在CharBlockPool中,將文檔

原创 Lucene學習總結之二:Lucene的總體架構

Lucene總的來說是: 一個高效的,可擴展的,全文檢索庫。 全部用Java實現,無須配置。 僅支持純文本文件的索引(Indexing)和搜索(Search)。 不負責由其他格式的文件抽取純文本文件,或從網絡中抓取文件的過程。 在Luc

原创 Lucene學習總結之四:Lucene索引過程分析(2)

3、將文檔加入IndexWriter 代碼: writer.addDocument(doc); -->IndexWriter.addDocument(Document doc, Analyzer analyzer)      -->do

原创 Lucene學習總結之四:Lucene索引過程分析(4)

6、關閉IndexWriter對象 代碼: writer.close(); --> IndexWriter.closeInternal(boolean)       --> (1) 將索引信息由內存寫入磁盤: flush(waitFo

原创 Lucene學習總結之五:Lucene段合併(merge)過程分析

一、段合併過程總論 IndexWriter中與段合併有關的成員變量有:   HashSet<SegmentInfo> mergingSegments = new HashSet<SegmentInfo>(); //保存正在合併的段,以防