Expand description
Unified database facade for LaminarDB.
Provides a single entry point (LaminarDB) that ties together
the SQL parser, query planner, DataFusion context, and streaming API.
§Example
ⓘ
use laminar_db::LaminarDB;
let db = LaminarDB::open()?;
db.execute("CREATE SOURCE trades (
symbol VARCHAR, price DOUBLE, ts TIMESTAMP,
WATERMARK FOR ts AS ts - INTERVAL '1' SECOND
)").await?;
let query = db.execute("SELECT symbol, AVG(price)
FROM trades GROUP BY symbol, TUMBLE(ts, INTERVAL '1' MINUTE)
").await?;Re-exports§
pub use checkpoint_coordinator::CheckpointConfig;pub use checkpoint_coordinator::CheckpointCoordinator;pub use checkpoint_coordinator::CheckpointPhase;pub use checkpoint_coordinator::CheckpointRequest;pub use checkpoint_coordinator::CheckpointResult;pub use checkpoint_coordinator::CheckpointStats;pub use engine_metrics::EngineMetrics;pub use profile::Profile;pub use profile::ProfileError;pub use recovery_manager::RecoveredState;pub use recovery_manager::RecoveryManager;
Modules§
- api
- FFI-friendly API for language bindings.
- checkpoint_
coordinator - Unified checkpoint coordination. Unified checkpoint coordinator.
- engine_
metrics - Prometheus metrics for the streaming engine. Prometheus metrics for the streaming engine.
- ffi
- C FFI layer for LaminarDB.
- pipeline
- Thread-per-core connector pipeline.
Streaming connector pipeline. Each source connector runs as a tokio task
pushing batches via crossfire mpsc to the
StreamingCoordinator, which drives SQL execution cycles, routes results to sinks, and manages checkpoint barriers. See thestreaming_coordinatorsubmodule for the runtime topology. - profile
- Deployment profiles.
Deployment profiles for
LaminarDB. - rebalance
- Dynamic vnode rebalance control plane.
Dynamic vnode rebalance control plane. See
docs/plans/cluster-production-readiness.md. - recovery_
manager - Unified recovery manager. Unified recovery manager.
Structs§
- Arrow
Record - Record type for Arrow-based streaming subscriptions.
- Connector
Registry - Re-export the connector registry for custom connector registration.
Registry of available connector implementations. Connectors register
a factory per type string; the runtime looks up by the
connectorproperty inCREATE SOURCE/SINKDDL. - DdlInfo
- Information about a completed DDL statement.
- Laminar
Config - Configuration for a
LaminarDBinstance. - LaminarDB
- The main
LaminarDBdatabase handle. - Laminar
DbBuilder - Fluent builder for constructing a
LaminarDBinstance. - Pipeline
Edge - A directed edge in the pipeline topology graph.
- Pipeline
Metrics - Pipeline-wide metrics snapshot.
- Pipeline
Node - A node in the pipeline topology graph.
- Pipeline
Topology - The complete pipeline topology: nodes and edges.
- Query
Handle - Handle to a running streaming query.
- Query
Info - Information about a running query.
- Sink
Info - Information about a registered sink.
- Source
Catalog - Central registry of sources, sinks, streams, and queries.
- Source
Entry - A registered source in the catalog.
- Source
Handle - Typed handle for pushing data into a registered source.
- Source
Info - Information about a registered source.
- Source
Metrics - Metrics for a single registered source.
- Stream
Info - Metadata about a registered stream.
- Stream
Metrics - Metrics for a single registered stream.
- Tiering
Config - S3 storage class tiering for checkpoint cost optimization.
- Typed
Subscription - Typed subscription that deserializes
RecordBatchrows. - Untyped
Source Handle - Untyped handle for pushing raw
RecordBatchdata.
Enums§
- Backpressure
Policy - What to do when an operator’s input buffer exceeds its cap.
- DbError
- Errors from database operations.
- Execute
Result - Result of executing a SQL statement.
- Identifier
Case Sensitivity - How unquoted SQL identifiers are matched against Arrow schema field names.
- Pipeline
Node Type - Type of a node in the pipeline topology.
- Pipeline
State - The state of a streaming pipeline.
Traits§
- From
Batch - Deserialize rows from a
RecordBatch. Auto-generated by#[derive(FromRecordBatch)].