Skip to main content

Module column

Module column 

Source
Expand description

Columnar data model used by the engine and every consumer of query results.

A column is a typed, possibly-nullable, possibly-dictionary-encoded buffer of values plus statistics, encoding metadata, and a none-bitmap.

Invariant: a column’s RowMask and NoneBitmap are always exactly aligned to its logical row count. Operations that grow or shrink the buffer must update the mask and bitmap atomically with respect to consumers; an off-by-one between length and mask silently produces wrong results in filter and aggregation paths.

Modules§

buffer
ColumnBuffer and its operation surface: the typed-per-primitive buffer that stores actual values.
columns
compressed
data
ColumnData is the polymorphic accessor (type, length, encoding, nullability, statistics, value extraction) that each concrete data implements. Canonical is the dense default data used for primitive-typed columns. The CompareOp and SearchResult enums express search-and-compare operations the engine performs over arrays during selection (binary search and range probing).
encoding
frame
headers
mask
nones
push
Typed Push<T> trait and its blanket implementations for every primitive ColumnBuffer accepts.
row
row_ref
stats
transform
Pure column transforms: append, filter, and take.
view
Read-only, structurally-typed projections over columns.

Structs§

ColumnWithName