Class VectorizedDeltaEncodedValuesReader

java.lang.Object
org.apache.parquet.column.values.ValuesReader
org.apache.iceberg.arrow.vectorized.parquet.VectorizedDeltaEncodedValuesReader

public class VectorizedDeltaEncodedValuesReader extends org.apache.parquet.column.values.ValuesReader
A VectorizedValuesReader implementation for the encoding type DELTA_BINARY_PACKED. This is adapted from Spark's VectorizedDeltaBinaryPackedReader.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
    static final int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    initFromPage(int valueCount, org.apache.parquet.bytes.ByteBufferInputStream in)
     
    org.apache.parquet.io.api.Binary
    readBinary(int len)
    DELTA_BINARY_PACKED only supports INT32 and INT64
    boolean
    Read a single boolean
    byte
    DELTA_BINARY_PACKED only supports INT32 and INT64
    double
    Read a single double
    void
    readDoubles(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
    DELTA_BINARY_PACKED only supports INT32 and INT64
    float
    Read a single float
    void
    readFloats(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
    DELTA_BINARY_PACKED only supports INT32 and INT64
    int
     
    void
    readIntegers(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
     
    long
     
    void
    readLongs(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
     
    short
    DELTA_BINARY_PACKED only supports INT32 and INT64
    void
    The Iceberg reader currently does not do skipping

    Methods inherited from class org.apache.parquet.column.values.ValuesReader

    getNextOffset, initFromPage, initFromPage, readBoolean, readBytes, readDouble, readFloat, readValueDictionaryId, skip, updateNextOffset

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • VectorizedDeltaEncodedValuesReader

      public VectorizedDeltaEncodedValuesReader()
  • Method Details

    • initFromPage

      public void initFromPage(int valueCount, org.apache.parquet.bytes.ByteBufferInputStream in) throws IOException
      Overrides:
      initFromPage in class org.apache.parquet.column.values.ValuesReader
      Throws:
      IOException
    • readByte

      public byte readByte()
      DELTA_BINARY_PACKED only supports INT32 and INT64
    • readShort

      public short readShort()
      DELTA_BINARY_PACKED only supports INT32 and INT64
    • readInteger

      public int readInteger()
      Overrides:
      readInteger in class org.apache.parquet.column.values.ValuesReader
    • readLong

      public long readLong()
      Overrides:
      readLong in class org.apache.parquet.column.values.ValuesReader
    • skip

      public void skip()
      The Iceberg reader currently does not do skipping
      Specified by:
      skip in class org.apache.parquet.column.values.ValuesReader
    • readBinary

      public org.apache.parquet.io.api.Binary readBinary(int len)
      DELTA_BINARY_PACKED only supports INT32 and INT64
    • readIntegers

      public void readIntegers(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
    • readLongs

      public void readLongs(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
    • readFloats

      public void readFloats(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
      DELTA_BINARY_PACKED only supports INT32 and INT64
    • readDoubles

      public void readDoubles(int total, org.apache.arrow.vector.FieldVector vec, int rowId)
      DELTA_BINARY_PACKED only supports INT32 and INT64
    • readBoolean

      boolean readBoolean()
      Read a single boolean
    • readFloat

      float readFloat()
      Read a single float
    • readDouble

      double readDouble()
      Read a single double