Java 搜索引擎 Lucene 3.5 发布
jopen 13年前
<p><strong>Lucene</strong>是一套用于全文检索和<span class="mw-redirect">搜寻</span>的<span class="mw-redirect">开源</span><span class="mw-redirect">程式库</span>,由Apache软件基金会支持和提供。Lucene提供了一个简单确强大的应用程式接口,能够做全文索引和搜寻,在Java开发环境里Lucene是一个成熟的免费开放源代码工具;就其本身而论,Lucene是现在并且是这几年,最受欢迎的免费java资讯检索程式库。人们经常提到资讯检索程式库,就像是搜寻引擎,但是不应该将资讯检索程式库与网搜索引擎相混淆。</p> <p>Lucene最初是由Doug Cutting所撰写的,是一位资深全文索引/检索专家,曾经是V-Twin搜索引擎的主要开发者,后来在Excite担任高级系统架构设计师,目前从事 于一些INTERNET底层架构的研究。他贡献出Lucene的目标是为各种中小型应用程式加入全文检索功能。<br /> <img title="Lucene" border="0" alt="Lucene" src="https://simg.open-open.com/show/94679b2dea4dcebf549271a5976c1b10.gif" width="300" height="46" /><br /> <span style="font-weight:bold;">项目地址:<a href="/misc/goto?guid=4958185765343622769" target="_blank">http://lucene.apache.org/</a></span><br /> </p> <p style="font-weight:bold;">Apache Lucene 3.5 发布了,该版本包含大量的bug修复、优化以及改进,下载地址:</p> <p><a href="/misc/goto?guid=4958190510803368115" target="_blank">http://www.apache.org/dyn/closer.cgi/lucene/java</a></p> <p>完整改进内容请看下载后的 CHANGES.txt 文件。</p> <p>Lucene 3.5.0 值得关注的改进:</p> <ul> <li>Added a very substantial (3-5X) RAM reduction required to hold the terms index on opening an IndexReader. (LUCENE-2205)</li> <li>Added IndexSearcher.searchAfter which returns results after a specified ScoreDoc (e.g. last document on the previous page) to support deep paging use cases. (LUCENE-2215)</li> <li>Added SearcherManager to manage sharing and reopening IndexSearchers across multiple search threads. Underlying IndexReader instances are safely closed if not referenced anymore. (LUCENE-3445, LUCENE-3558)</li> <li>Added SearcherLifetimeManager which safely provides a consistent view of the index across multiple requests (e.g. paging/drilldown). (LUCENE-3558, LUCENE-3486)</li> <li>Renamed IndexWriter.optimize to forceMerge to discourage use of this method since it is horribly costly and rarely justified anymore. (LUCENE-3439)</li> <li>Added NGramPhraseQuery that speeds up phrase queries 30-50% when n-gram analysis is used. (LUCENE-3426)</li> <li>Added a new reopen API (IndexReader.openIfChanged) that returns null instead of the old reader if there are no changes in the index. (LUCENE-3464)</li> <li>Improvements to vector highlighting: support for more queries such as wildcards and boundary analysis for generated snippets (LUCENE-1824, LUCENE-1889)</li> <li>IndexSearcher and IndexReader now perform additional checks to throw AlreadyClosedExceptions if searches are performed on a closed IndexReader. Performing searches on already closed reader can cause JVM crashes when invalid memory mapped files are referenced.</li> <li>Several bugfixes, including a bug where closing an NRT reader after the writer was closed was incorrectly invoking the DeletionPolicy. </li> </ul>