Skip to main content

Crate vortex_layout

Crate vortex_layout 

Source
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
flatbuffers
Bindings generated from this crate’s flatbuffers schema, checked in under generated/. Regenerate with cargo run -p xtask -- generate-flatbuffers.
layouts
A collection of built-in layouts for Vortex
plan
Physical plans for scans.
scan
segments
Segment access abstractions for layouts.
sequence
session

Structs§

BufferedBytesReservation
An outstanding claim on a BufferedBytesTracker, released when dropped.
BufferedBytesTracker
A shared counter of the bytes that layout strategies are holding but have not yet emitted.
Layout
A typed layout node.
LayoutBuildContext
Context shared while recursively deserializing layouts.
LayoutDeserializeArgs
Common fields available while deserializing layout-specific data.
LayoutParts
Pieces used to construct a typed layout.
LayoutReaderContext
Per-reader-tree dependency context, threaded through crate::VTable::new_reader.
LayoutWriterContext
State shared by every strategy participating in a single layout write.
LazyReaderChildren
Lazily constructs and caches child readers while preserving reader context.
RowSplits
A collection of root-coordinate row split points.
SplitRange
A row range used when registering natural scan splits.

Enums§

LayoutChildType
Identifies how a layout child relates to its parent.

Traits§

ArrayFutureExt
Helpers for futures that resolve to arrays.
DynLayout
Erased layout behavior used by LayoutRef.
LayoutChildren
Abstract way of accessing the children of a layout.
LayoutEncoding
Object-safe plugin registered for a layout ID.
LayoutReader
Stateful reader for a crate::Layout.
LayoutStrategy
Writes an ordered array stream into a layout tree and segment sink.
LayoutVTablePlugin
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 LayoutRef from a layout flatbuffer.
layout_from_flatbuffer_with_options
Parse a LayoutRef from a layout flatbuffer with unknown-encoding behavior control.

Type Aliases§

ArrayFuture
Future resolving to a projected Vortex array.
LayoutContext
LayoutEncodingId
Backwards-compatible name for a layout ID.
LayoutEncodingRef
Backwards-compatible name for a layout-vtable reference.
LayoutId
A unique identifier for a layout encoding.
LayoutReaderRef
Shared handle to a stateful layout reader.
LayoutRef
Shared, erased handle to a layout tree node.
LayoutVTableRef
Shared reference to a registered layout-vtable plugin.