Expand description
Layout trees, layout readers, scan planning, and segment IO.
A Layout is the serialized, row-counted representation of an array tree. It records logical
dtype, child layout relationships, segment ids, and encoding metadata; it does not own the
segment bytes. A LayoutReader pairs a layout with a SegmentSource
and session so scans can evaluate projections and filters.
Most users enter this crate through file APIs, but extension authors implement VTable and
LayoutStrategy to add new on-disk organizations.
Scanning is built with scan::scan_builder::ScanBuilder. It accepts a bound projection,
optional bound filter, optional row range, Selection,
split strategy, and task concurrency settings, then produces array streams or iterators.
Modules§
- aliases
- display
- layouts
- A collection of built-in layouts for Vortex
- scan
- segments
- Segment access abstractions for layouts.
- sequence
- session
Structs§
- Buffered
Bytes Reservation - An outstanding claim on a
BufferedBytesTracker, released when dropped. - Buffered
Bytes Tracker - A shared counter of the bytes that layout strategies are holding but have not yet emitted.
- Layout
- A typed layout node.
- Layout
Build Context - Context shared while recursively deserializing layouts.
- Layout
Deserialize Args - Common fields available while deserializing layout-specific data.
- Layout
Parts - Pieces used to construct a typed layout.
- Layout
Reader Context - Per-reader-tree dependency context, threaded through
crate::VTable::new_reader. - Layout
Strategy Encoding Validator - A layout strategy wrapper that rejects arrays containing encodings outside an allow-list.
- Layout
Writer Context - State shared by every strategy participating in a single layout write.
- Lazy
Reader Children - Lazily constructs and caches child readers while preserving reader context.
- RowSplits
- A collection of root-coordinate row split points.
- Split
Range - A row range used when registering natural scan splits.
Enums§
- Layout
Child Type - Identifies how a layout child relates to its parent.
Traits§
- Array
Future Ext - Helpers for futures that resolve to arrays.
- DynLayout
- Erased layout behavior used by
LayoutRef. - Layout
Children - Abstract way of accessing the children of a layout.
- Layout
Encoding - Object-safe plugin registered for a layout ID.
- Layout
Reader - Stateful reader for a
crate::Layout. - Layout
Strategy - Writes an ordered array stream into a layout tree and segment sink.
- LayoutV
Table Plugin - Object-safe plugin registered for a layout ID.
- VTable
- Layout-specific behavior for a typed
Layout.
Functions§
- layout_
children - Create an in-memory child adapter from owned layout references.
- layout_
from_ flatbuffer - Parse a
LayoutReffrom a layout flatbuffer. - layout_
from_ flatbuffer_ with_ options - Parse a
LayoutReffrom a layout flatbuffer with unknown-encoding behavior control.
Type Aliases§
- Array
Future - Future resolving to a projected Vortex array.
- Layout
Context - Layout
Encoding Id - Backwards-compatible name for a layout ID.
- Layout
Encoding Ref - Backwards-compatible name for a layout-vtable reference.
- Layout
Id - A unique identifier for a layout encoding.
- Layout
Reader Ref - Shared handle to a stateful layout reader.
- Layout
Ref - Shared, erased handle to a layout tree node.
- LayoutV
Table Ref - Shared reference to a registered layout-vtable plugin.