SwanLake is an Arrow Flight SQL server backed by DuckDB, enabling fast data analytics and ingestion with datalake support.
First start the SwanLake server:
# From the swanlake root directory
RUST_LOG=info cargo run --bin swanlake
# Or using Docker
docker run --rm -p 4214:4214 ghcr.io/swanlake-io/swanlake:latestThen run the Rust interactive client example:
cargo run --bin swanlake-cli --features="cli"- Arrow Flight SQL Server: High-performance SQL interface over gRPC for efficient querying.
- DuckLake: Extensions for datalake integrations, supporting scalable storage solutions.
- Building datalakes on Postgres and S3 for unified data access.
- Rapid ingestion of logs, metrics, and streaming data.
- High-speed querying using DuckDB and Arrow for analytics.
SwanLake includes a built-in status page for real-time monitoring of your server. Access it at http://localhost:4215 (default) to view:
- Active sessions and uptime
- Query and update latency metrics (average, P95, P99)
- Slow queries and recent errors
Configure the status page using environment variables:
SWANLAKE_STATUS_ENABLED(default:true)SWANLAKE_STATUS_HOSTandSWANLAKE_STATUS_PORT(default:0.0.0.0:4215)
See CONFIGURATION.md for more details.
SwanLake supports serverless deployment via Docker. Pull the latest image from GitHub Container Registry.
Customize with environment variables; see CONFIGURATION.md for details.
Licensed under the MIT License. See LICENSE for details.

