Interface BlockEncoding

All Known Implementing Classes:
ArrayBlockEncoding, ByteArrayBlockEncoding, DictionaryBlockEncoding, Fixed12BlockEncoding, Int128ArrayBlockEncoding, IntArrayBlockEncoding, LazyBlockEncoding, LongArrayBlockEncoding, MapBlockEncoding, RowBlockEncoding, RunLengthBlockEncoding, ShortArrayBlockEncoding, VariableWidthBlockEncoding

public interface BlockEncoding
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the unique name of this encoding.
    readBlock(BlockEncodingSerde blockEncodingSerde, io.airlift.slice.SliceInput input)
    Read a block from the specified input.
    default Optional<Block>
    This method allows the implementor to specify a replacement object that will be serialized instead of the original one.
    void
    writeBlock(BlockEncodingSerde blockEncodingSerde, io.airlift.slice.SliceOutput sliceOutput, Block block)
    Write the specified block to the specified output
  • Method Details

    • getName

      String getName()
      Gets the unique name of this encoding.
    • readBlock

      Block readBlock(BlockEncodingSerde blockEncodingSerde, io.airlift.slice.SliceInput input)
      Read a block from the specified input. The returned block should begin at the specified position.
    • writeBlock

      void writeBlock(BlockEncodingSerde blockEncodingSerde, io.airlift.slice.SliceOutput sliceOutput, Block block)
      Write the specified block to the specified output
    • replacementBlockForWrite

      default Optional<Block> replacementBlockForWrite(Block block)
      This method allows the implementor to specify a replacement object that will be serialized instead of the original one.