?? 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.