Expand description
Multi-Mode Query Executors
Specialized executors for each query language mode:
- Gremlin: Traverser-based execution with path state tracking
- SPARQL: Pattern matching with variable bindings
- Natural: Translation + execution with explanation
- Vector: HNSW-based similarity search with metadata filtering
- Hybrid: Combined structured + vector search with fusion strategies
Each executor converts its native AST to execution operations, leveraging the unified executor for common operations.
Re-exports§
pub use cte::inline_ctes;pub use cte::split_union_parts;pub use cte::CteContext;pub use cte::CteExecutor;pub use cte::CteStats;pub use gremlin::GremlinExecutor;pub use hybrid::HybridExecutor;pub use hybrid::InMemoryHybridExecutor;pub use natural::NaturalExecutor;pub use sparql::SparqlExecutor;pub use vector::InMemoryVectorExecutor;pub use vector::VectorExecutor;
Modules§
- agg_
spill - Hash-aggregation spill helper — Fase 4 P4 building block.
- aggregation
- Aggregation Framework
- bitmap_
scan - Bitmap heap scan — Fase 5 P6 consumer of
TidBitmap. - cte
- CTE (Common Table Expression) executor.
- gremlin
- Gremlin Traversal Executor
- hybrid
- Hybrid Query Executor
- join
- JOIN Executor Algorithms
- natural
- Natural Language Query Executor
- parallel_
scan - Parallel scan coordinator — Fase 4 P5 building block.
- set_ops
- Set Operations Executor
- sparql
- SPARQL Query Executor
- subquery
- Subquery Executor
- vector
- Vector Query Executor
- window
- Window Functions Executor
Structs§
- Aggregation
Def - Definition of an aggregation to compute
- AvgAggregator
- AVG aggregator
- Count
Aggregator - COUNT aggregator
- Count
Distinct Aggregator - COUNT DISTINCT aggregator
- Execute
Result - Result of executing a query with mode information
- Frame
Spec - Frame specification for window function
- Group
Concat Aggregator - GROUP_CONCAT aggregator
- Join
Stats - Statistics for choosing join strategy
- MaxAggregator
- MAX aggregator
- MinAggregator
- MIN aggregator
- Multi
Mode Executor - Multi-mode executor that routes to specialized executors
- Percentile
Aggregator - Percentile aggregator
- Sample
Aggregator - SAMPLE aggregator (returns first non-null value)
- SetOp
Stats - Statistics for set operations
- StdDev
Aggregator - Standard deviation aggregator
- Subquery
Def - A subquery definition
- Subquery
Executor - Subquery executor handles evaluation of nested queries
- SumAggregator
- SUM aggregator
- Value
Hash - Hashable wrapper for Value (for HashSet storage)
- Variance
Aggregator - Variance aggregator
- Window
Def - Complete window definition
- Window
Executor - Window function executor
- Window
Func - A window function to apply
- Window
Order By - Order-by specification for window
Enums§
- Compare
Op - Comparison operator for ANY/ALL
- Frame
Bound - Frame boundary specification
- Frame
Exclude - Frame exclusion option
- Frame
Type - Frame type for window functions
- Join
Condition - Join condition for filtering matches
- Join
Strategy - Strategy to use for executing the join
- Join
Type - Type of JOIN operation
- Nulls
Order - Null handling in sorting
- SetOp
Type - Type of set operation
- Sort
Direction - Sort direction
- Subquery
Cache - Cached result of a non-correlated subquery
- Subquery
Type - Type of subquery
- Window
Func Type - Type of window function
Traits§
- Aggregator
- Trait for aggregation functions
Functions§
- bind_
outer_ refs - Check if a binding satisfies correlation constraints
- choose_
strategy - Choose optimal join strategy based on statistics
- create_
aggregator - Create an aggregator by name
- detect_
correlation - Detect outer variable references in a subquery
- execute_
group_ by - 1-pass streaming GROUP BY.
- execute_
having - Execute HAVING clause (filter on aggregated results)
- execute_
join - Execute a join operation using the optimal strategy
- execute_
set_ op - Execute a set operation on two binding vectors
- hash_
join - Execute a hash join
- merge_
join - Execute a merge join (for sorted inputs)
- nested_
loop_ join - Execute a nested loop join (O(n*m) but works with any condition)
- set_
except - EXCEPT operation (set difference)
- set_
intersect - INTERSECT operation
- set_
union - UNION operation