Expand description
Columnar dataflow edge support.
Defines ColCollection, the columnar collection that dataflow edges between Plan
nodes carry. Every producer emits this representation.
Within a Plan node, operators may freely materialize Vec collections. Only
the collection edge format is constrained. A node that produces a row-based
collection re-encodes it to the columnar edge at its output leaf via
vec_to_columnar. A node that must consume rows decodes at its input leaf
via columnar_to_vec. Both are named operators (VecToColumnar,
ColumnarToVec), so those leaf seams stay visible in dataflow
introspection.
Functionsยง
- columnar_
consolidate - Consolidates a
ColumnarCollectionnatively, without a row round-trip. - columnar_
leave_ dynamic - Leaves a dynamically created scope that has
leveliteration coordinates. - columnar_
negate - Negates the diff of every record in a
ColumnarCollection. - columnar_
to_ vec - Decodes columnar batches into a row-based collection.
- concat_
many - Concatenates a collection of columnar edges.
- flat_
map_ datums - Applies
logicto each record inedge, exposing the record as a borrowedDatumVecBorrowand giving it ok and err output sessions. - negate_
column ๐ - Negates the diff of every record in
column, rebuilding only the diff column. - truncate_
times ๐ - Truncates every time in
columntolevel - 1iteration coordinates. - vec_
to_ columnar - Repacks a row-based collection into columnar batches.
Type Aliasesยง
- ColCollection
- A columnar collection of
(Row, Diff)updates, which is what a dataflow edge between Plan nodes carries. - Columnar
Collection - A columnar collection of
(D, T, R)updates traveling on a compute dataflow edge. - RecTimestamp
- The timestamp of a scope that carries iteration coordinates.