Class Lucene99ScalarQuantizedVectorsWriter

java.lang.Object
org.apache.lucene.codecs.KnnVectorsWriter
org.apache.lucene.codecs.hnsw.FlatVectorsWriter
org.elasticsearch.index.codec.vectors.Lucene99ScalarQuantizedVectorsWriter
All Implemented Interfaces:
Closeable, AutoCloseable, org.apache.lucene.util.Accountable

public final class Lucene99ScalarQuantizedVectorsWriter extends org.apache.lucene.codecs.hnsw.FlatVectorsWriter
Copied from Lucene 10.3.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.apache.lucene.codecs.KnnVectorsWriter

    org.apache.lucene.codecs.KnnVectorsWriter.MergedVectorValues
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final float
    Dynamic confidence interval

    Fields inherited from class org.apache.lucene.codecs.hnsw.FlatVectorsWriter

    vectorsScorer

    Fields inherited from interface org.apache.lucene.util.Accountable

    NULL_ACCOUNTABLE
  • Constructor Summary

    Constructors
    Constructor
    Description
    Lucene99ScalarQuantizedVectorsWriter(org.apache.lucene.index.SegmentWriteState state, Float confidenceInterval, byte bits, boolean compress, org.apache.lucene.codecs.hnsw.FlatVectorsWriter rawVectorDelegate, org.apache.lucene.codecs.hnsw.FlatVectorsScorer scorer)
     
    Lucene99ScalarQuantizedVectorsWriter(org.apache.lucene.index.SegmentWriteState state, Float confidenceInterval, org.apache.lucene.codecs.hnsw.FlatVectorsWriter rawVectorDelegate, org.apache.lucene.codecs.hnsw.FlatVectorsScorer scorer)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.lucene.codecs.hnsw.FlatFieldVectorsWriter<?>
    addField(org.apache.lucene.index.FieldInfo fieldInfo)
     
    void
     
    void
     
    void
    flush(int maxDoc, org.apache.lucene.index.Sorter.DocMap sortMap)
     
    static org.apache.lucene.util.quantization.ScalarQuantizer
    mergeAndRecalculateQuantiles(org.apache.lucene.index.MergeState mergeState, org.apache.lucene.index.FieldInfo fieldInfo, Float confidenceInterval, byte bits)
    Merges the quantiles of the segments and recalculates the quantiles if necessary.
    void
    mergeOneField(org.apache.lucene.index.FieldInfo fieldInfo, org.apache.lucene.index.MergeState mergeState)
     
    org.apache.lucene.util.hnsw.CloseableRandomVectorScorerSupplier
    mergeOneFieldToIndex(org.apache.lucene.index.FieldInfo fieldInfo, org.apache.lucene.index.MergeState mergeState)
     
    long
     
    static org.apache.lucene.index.DocsWithFieldSet
    writeQuantizedVectorData(org.apache.lucene.store.IndexOutput output, org.apache.lucene.util.quantization.QuantizedByteVectorValues quantizedByteVectorValues, byte bits, boolean compress)
    Writes the vector values to the output and returns a set of documents that contains vectors.

    Methods inherited from class org.apache.lucene.codecs.hnsw.FlatVectorsWriter

    getFlatVectorScorer

    Methods inherited from class org.apache.lucene.codecs.KnnVectorsWriter

    mapOldOrdToNewOrd, merge

    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

    • DYNAMIC_CONFIDENCE_INTERVAL

      public static final float DYNAMIC_CONFIDENCE_INTERVAL
      Dynamic confidence interval
      See Also:
  • Constructor Details

    • Lucene99ScalarQuantizedVectorsWriter

      public Lucene99ScalarQuantizedVectorsWriter(org.apache.lucene.index.SegmentWriteState state, Float confidenceInterval, org.apache.lucene.codecs.hnsw.FlatVectorsWriter rawVectorDelegate, org.apache.lucene.codecs.hnsw.FlatVectorsScorer scorer) throws IOException
      Throws:
      IOException
    • Lucene99ScalarQuantizedVectorsWriter

      public Lucene99ScalarQuantizedVectorsWriter(org.apache.lucene.index.SegmentWriteState state, Float confidenceInterval, byte bits, boolean compress, org.apache.lucene.codecs.hnsw.FlatVectorsWriter rawVectorDelegate, org.apache.lucene.codecs.hnsw.FlatVectorsScorer scorer) throws IOException
      Throws:
      IOException
  • Method Details

    • addField

      public org.apache.lucene.codecs.hnsw.FlatFieldVectorsWriter<?> addField(org.apache.lucene.index.FieldInfo fieldInfo) throws IOException
      Specified by:
      addField in class org.apache.lucene.codecs.hnsw.FlatVectorsWriter
      Throws:
      IOException
    • mergeOneField

      public void mergeOneField(org.apache.lucene.index.FieldInfo fieldInfo, org.apache.lucene.index.MergeState mergeState) throws IOException
      Overrides:
      mergeOneField in class org.apache.lucene.codecs.KnnVectorsWriter
      Throws:
      IOException
    • mergeOneFieldToIndex

      public org.apache.lucene.util.hnsw.CloseableRandomVectorScorerSupplier mergeOneFieldToIndex(org.apache.lucene.index.FieldInfo fieldInfo, org.apache.lucene.index.MergeState mergeState) throws IOException
      Specified by:
      mergeOneFieldToIndex in class org.apache.lucene.codecs.hnsw.FlatVectorsWriter
      Throws:
      IOException
    • flush

      public void flush(int maxDoc, org.apache.lucene.index.Sorter.DocMap sortMap) throws IOException
      Specified by:
      flush in class org.apache.lucene.codecs.KnnVectorsWriter
      Throws:
      IOException
    • finish

      public void finish() throws IOException
      Specified by:
      finish in class org.apache.lucene.codecs.KnnVectorsWriter
      Throws:
      IOException
    • ramBytesUsed

      public long ramBytesUsed()
    • mergeAndRecalculateQuantiles

      public static org.apache.lucene.util.quantization.ScalarQuantizer mergeAndRecalculateQuantiles(org.apache.lucene.index.MergeState mergeState, org.apache.lucene.index.FieldInfo fieldInfo, Float confidenceInterval, byte bits) throws IOException
      Merges the quantiles of the segments and recalculates the quantiles if necessary.
      Parameters:
      mergeState - The merge state
      fieldInfo - The field info
      confidenceInterval - The confidence interval
      bits - The number of bits
      Returns:
      The merged quantiles
      Throws:
      IOException - If there is a low-level I/O error
    • writeQuantizedVectorData

      public static org.apache.lucene.index.DocsWithFieldSet writeQuantizedVectorData(org.apache.lucene.store.IndexOutput output, org.apache.lucene.util.quantization.QuantizedByteVectorValues quantizedByteVectorValues, byte bits, boolean compress) throws IOException
      Writes the vector values to the output and returns a set of documents that contains vectors.
      Throws:
      IOException
    • close

      public void close() throws IOException
      Throws:
      IOException