Class ColumnRegionObjectCodecVariable<T,​ATTR extends Attributes.Any>

java.lang.Object
com.illumon.iris.db.v2.sources.regioned.ColumnRegionObjectCodecVariable<T,​ATTR>
Type Parameters:
T - The realized type of the encoded objects within this region
ATTR - The Chunk attribute for this region
All Implemented Interfaces:
ChunkSource<ATTR>, DefaultChunkSource<ATTR>, FillContextMaker, GetContextMaker, Page<ATTR>, Page.WithDefaults<ATTR>, PagingChunkSource<ATTR>, ColumnRegion<ATTR>, ColumnRegionObject<T,​ATTR>, Releasable

public final class ColumnRegionObjectCodecVariable<T,​ATTR extends Attributes.Any>
extends Object
implements ColumnRegionObject<T,​ATTR>, Page.WithDefaults<ATTR>
A ColumnRegion for non-primitive types that have a variable size. Objects are stored within two underlying files.

The Offset file contains the byte offsets within the binary file for each index within the region. When reading from the binary file, we use offset at the previous index as the starting offset for the object and the offset at the current index as the ending offset within the binary file for the object.

The binary file contains the raw bytes of each object as encoded by the ObjectDecoder, which is typically defined as the codec at the schema level for a table.