Browse documentation
Before you start
Igloo is an experimental, single-node SQL query engine. It runs SQL with Apache DataFusion and represents results as Apache Arrow record batches. The source currently requires Rust 1.88 or later and a linker/toolchain for your operating system.
The fastest way to explore the engine is crypto-demo. It generates deterministic sample market data and runs a suite of analytical queries. No PostgreSQL server, configuration file, or ADBC driver is needed for this mode.
For coding agents, the separate Build with AI agents guide covers native MCP, JSON commands and an in-memory demo in the agent interface update. That update may not yet be in a published release.
1. Run the self-contained demo
Clone the engine repository and run the demo. The first build compiles DataFusion and its dependencies, so allow time and disk space for a substantial Rust build.
git clone https://github.com/igloodb/igloodb.git
cd igloodb
cargo run --locked -- crypto-demo2. Explore the results
The demo synthesizes one week of hourly OHLCV candles for BTC, ETH, and SOL, then computes latest close, daily volume, daily VWAP, SMA(24), rolling 24-hour log-return volatility, and maximum drawdown.
These are deterministic example data, rather than live prices. Existing Parquet files in the target directory are reused. The crypto_ohlcv schema and SQL builders are defined in src/crypto_metrics.rs.
IGLOO_CRYPTO_PARQUET_PATH=/path/to/ohlcv \
cargo run --locked -- crypto-demo3. Connect your own data
To query PostgreSQL and Parquet together, configure sources and start the PostgreSQL wire server. Follow the PostgreSQL guide for a complete setup, or read the configuration reference for multi-source catalogs.
The current Docker Compose setup starts the one-shot demo rather than the SQL server, ships no Parquet fixture, and uses a Rust image older than the declared minimum. The source-based workflows here avoid presenting that setup as a ready-to-run server.
Grounded in the engine source at 1633204 . Check the repository for subsequent changes.
Suggest an improvement