LLKV SQL
Work in Progress
llkv-sql is the SQL interface for the LLKV toolkit.
Purpose
- Parse SQL statements and convert them to execution plans.
- Provide the primary user-facing interface for database operations.
- Execute SQL with full transaction support via
llkv-runtime.
Design Notes
- Uses sqlparser for SQL parsing and AST generation.
- Uses sqllogictest for SQL testing.
- Converts AST to execution plans and delegates to
llkv-runtimefor execution. - Returns results as Arrow
RecordBatchinstances for SELECT queries. - The runtime handles all operation types and coordinates with
llkv-transactionfor MVCC support. - Correlated subqueries reuse the shared [
llkv_plan::correlation] utilities so that placeholder generation and column mapping logic remain centralized in the planning layer. - Scalar subqueries materialize into
SelectPlan::scalar_subqueries, allowing the executor to bind correlated inputs without re-parsing SQL.
License
Licensed under the Apache-2.0 License.