Module org.apache.lucene.core
Class Lucene99FlatVectorsReader
java.lang.Object
org.apache.lucene.codecs.KnnVectorsReader
org.apache.lucene.codecs.hnsw.FlatVectorsReader
org.apache.lucene.codecs.lucene99.Lucene99FlatVectorsReader
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Accountable
Reads vectors from the index segments.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final record
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final FieldInfos
private final IntObjectHashMap
<Lucene99FlatVectorsReader.FieldEntry> private static final long
private final IndexInput
Fields inherited from class org.apache.lucene.codecs.hnsw.FlatVectorsReader
vectorScorer
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Checks consistency of this reader.void
close()
void
Optional: reset or close merge resources used in the readergetByteVectorValues
(String field) Returns theByteVectorValues
for the givenfield
.getFieldEntry
(String field, VectorEncoding expectedEncoding) getFloatVectorValues
(String field) Returns theFloatVectorValues
for the givenfield
.Returns an instance optimized for merging.getRandomVectorScorer
(String field, byte[] target) Returns aRandomVectorScorer
for the given field and target vector.getRandomVectorScorer
(String field, float[] target) Returns aRandomVectorScorer
for the given field and target vector.private static IndexInput
openDataInput
(SegmentReadState state, int versionMeta, String fileExtension, String codecName, IOContext context) long
Return the memory usage of this object in bytes.private void
readFields
(ChecksumIndexInput meta, FieldInfos infos) private int
readMetadata
(SegmentReadState state) Methods inherited from class org.apache.lucene.codecs.hnsw.FlatVectorsReader
getFlatVectorScorer, search, search
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
Field Details
-
SHALLOW_SIZE
private static final long SHALLOW_SIZE -
fields
-
vectorData
-
fieldInfos
-
-
Constructor Details
-
Lucene99FlatVectorsReader
public Lucene99FlatVectorsReader(SegmentReadState state, FlatVectorsScorer scorer) throws IOException - Throws:
IOException
-
-
Method Details
-
readMetadata
- Throws:
IOException
-
openDataInput
private static IndexInput openDataInput(SegmentReadState state, int versionMeta, String fileExtension, String codecName, IOContext context) throws IOException - Throws:
IOException
-
readFields
- Throws:
IOException
-
ramBytesUsed
public long ramBytesUsed()Description copied from interface:Accountable
Return the memory usage of this object in bytes. Negative values are illegal. -
checkIntegrity
Description copied from class:KnnVectorsReader
Checks consistency of this reader.Note that this may be costly in terms of I/O, e.g. may involve computing a checksum value against large data files.
- Specified by:
checkIntegrity
in classKnnVectorsReader
- Throws:
IOException
-
getMergeInstance
Description copied from class:FlatVectorsReader
Returns an instance optimized for merging. This instance may only be consumed in the thread that calledFlatVectorsReader.getMergeInstance()
.The default implementation returns
this
- Overrides:
getMergeInstance
in classFlatVectorsReader
-
getFieldEntry
private Lucene99FlatVectorsReader.FieldEntry getFieldEntry(String field, VectorEncoding expectedEncoding) -
getFloatVectorValues
Description copied from class:KnnVectorsReader
Returns theFloatVectorValues
for the givenfield
. The behavior is undefined if the given field doesn't have KNN vectors enabled on itsFieldInfo
. The return value is nevernull
.- Specified by:
getFloatVectorValues
in classKnnVectorsReader
- Throws:
IOException
-
getByteVectorValues
Description copied from class:KnnVectorsReader
Returns theByteVectorValues
for the givenfield
. The behavior is undefined if the given field doesn't have KNN vectors enabled on itsFieldInfo
. The return value is nevernull
.- Specified by:
getByteVectorValues
in classKnnVectorsReader
- Throws:
IOException
-
getRandomVectorScorer
Description copied from class:FlatVectorsReader
Returns aRandomVectorScorer
for the given field and target vector.- Specified by:
getRandomVectorScorer
in classFlatVectorsReader
- Parameters:
field
- the field to searchtarget
- the target vector- Returns:
- a
RandomVectorScorer
for the given field and target vector. - Throws:
IOException
- if an I/O error occurs when reading from the index.
-
getRandomVectorScorer
Description copied from class:FlatVectorsReader
Returns aRandomVectorScorer
for the given field and target vector.- Specified by:
getRandomVectorScorer
in classFlatVectorsReader
- Parameters:
field
- the field to searchtarget
- the target vector- Returns:
- a
RandomVectorScorer
for the given field and target vector. - Throws:
IOException
- if an I/O error occurs when reading from the index.
-
finishMerge
Description copied from class:KnnVectorsReader
Optional: reset or close merge resources used in the readerThe default implementation is empty
- Overrides:
finishMerge
in classKnnVectorsReader
- Throws:
IOException
-
close
- Throws:
IOException
-