Skip to main content

Module builders

Module builders 

Source
Expand description

Wrapper types that exist to support the creation of dictionary codecs.

These types interpose at the seal() call, to traverse the data that is being sealed and then construct codecs that are used to encode the row-shaped keys and values. There are several variants, corresponding to the RowRow, RowVal, and Row-only spine types.

Structsยง

RowBuilder
RowRowBuilder
RowRowColPagedBuilder
Counterpart of RowRowBuilder that consumes ColumnBody chunks instead of columnation stacks, whether or not the batcher that produced them spills. Mirrors RowRowBuilder::seal: it gathers key and value statistics from the sealed chain and installs codecs directly, then drops the per-container stats gatherer.
RowRowColPagedState
The chain-wide state of RowRowColPagedBuilder: the statistics its key and value codecs are built from, and the container sizes the chain implies.
RowValBuilder
ValRowBuilder
Mirror of RowValBuilder with the roles swapped: arbitrary keys and Row values, so the dictionary codec is built for and installed on the value container.
ValRowColPagedBuilder
Paged counterpart of ValRowBuilder that consumes Column chunks. Keys are arbitrary Columnar values (not Row-shaped) and stay uncompressed; only the value container receives a codec.

Functionsยง

build_codec ๐Ÿ”’
Gather encoding statistics across rows and produce a codec from them.
observe_rows ๐Ÿ”’
Fold rows into stats, the accumulator a codec is built from.