?? January 2023, Apache Lucene™ 9.5 available

The Lucene PMC is pleased to announce the release of Apache Lucene 9.5

Apache Lucene is a high-performance, full-featured search engine library written entirely in Java. It is a technology suitable for nearly any application that requires structured search, full-text search, faceting, nearest-neighbor search on high-dimensionality vectors, spell correction or query suggestions.

This release contains numerous features, optimizations, and improvements, some of which are highlighted below. The release is available for immediate download at:

https://lucene.apache.org/core/downloads.html

Lucene 9.5 Release Highlights

New features

  • Added KnnByteVectorField and ByteVectorQuery that are specialized for indexing and querying byte-sized vectors. Deprecated KnnVectorField, KnnVectorQuery and LeafReader#getVectorValues in favour of the newly introduced KnnFloatVectorField, KnnFloatVectorQuery and LeafReader#getFloatVectorValues that are specialized for float vectors.
  • Added IntField, LongField, FloatField and DoubleField: easy to use numeric fields that perform well both for filtering and sorting.
  • Support for Java 19 foreign memory access ("project Panama") was enabled by default removing the need to provide the "--enable-preview" flag.
  • Added ByteWritesTrackingDirectoryWrapper to expose metrics for bytes merged, flushed, and overall write amplification factor.

Optimizations

  • Improved storage efficiency of connections in the HNSW graph used for vector search

  • Added  new stored fields and term vectors interfaces: IndexReader#storedFields and IndexReader#termVectors. These do not rely upon ThreadLocal storage for each index segment, which can greatly reduce RAM requirements when there are many threads and/or segments.
  • Several improvements were made to IndexSortSortedNumericDocValuesRangeQuery including query execution optimization with points for descending sorts and BoundedDocIdSetIterator construction sped up using bkd binary search.

Other

  • Moved DocValuesNumbersQuery from sandbox to NumericDocValuesField#newSlowSetQuery
  • Fix exponential runtime for nested BooleanQuery#rewrite with non scoring clauses

... plus a number of helpful bug fixes!

Further details of changes are available in the change log available at: https://lucene.apache.org/core/9_5_0/changes/Changes.html.

Please report any feedback to the mailing lists (http://lucene.apache.org/core/discussion.html)

Note: The Apache Software Foundation now uses a content distribution network (CDN) for distributing releases.

  • No labels