Skip to main content

graphos_core/execution/
mod.rs

1//! Execution primitives for vectorized query processing.
2//!
3//! This module provides the core data structures for vectorized execution:
4//!
5//! - [`chunk`] - DataChunk for batched tuple processing
6//! - [`vector`] - ValueVector for columnar storage
7//! - [`selection`] - SelectionVector for filtering
8//! - [`operators`] - Physical operators (scan, filter, project, join)
9//! - [`pipeline`] - Push-based execution pipeline
10//! - [`sink`] - Common sink implementations
11//! - [`memory`] - Memory-aware execution context
12//! - [`parallel`] - Morsel-driven parallel execution
13//! - [`spill`] - Transparent spilling for out-of-core processing
14
15pub mod chunk;
16pub mod memory;
17pub mod operators;
18pub mod parallel;
19pub mod pipeline;
20pub mod selection;
21pub mod sink;
22pub mod source;
23pub mod spill;
24pub mod vector;
25
26pub use chunk::DataChunk;
27pub use memory::{ExecutionMemoryContext, ExecutionMemoryContextBuilder};
28pub use parallel::{
29    CloneableOperatorFactory, MorselScheduler, ParallelPipeline, ParallelPipelineConfig,
30    ParallelSource, RangeSource,
31};
32pub use pipeline::{ChunkCollector, ChunkSizeHint, Pipeline, PushOperator, Sink, Source};
33pub use selection::SelectionVector;
34pub use sink::{CollectorSink, CountingSink, LimitingSink, MaterializingSink, NullSink};
35pub use source::{ChunkSource, EmptySource, GeneratorSource, OperatorSource, VectorSource};
36pub use spill::{SpillFile, SpillFileReader, SpillManager};
37pub use vector::ValueVector;