airlayer Pre-aggregation Demo

10M ramen shop daily sales in ClickHouse (Docker) — cached locally as tiny Parquet files

Loading SDK...

PRECOMPUTED Airlayer with DuckDB

Query resolved from local Parquet file via DuckDB in the browser

RAW ClickHouse Direct

Same SQL sent to ClickHouse, scanning 10M daily sales rows

Show generated SQL

How it works

Cached path: The airlayer JS SDK loads your .view.yml definitions via WASM, resolves the query against a pre-aggregate manifest, then reads a tiny Parquet file (~3KB) using DuckDB WASM — all in the browser, no server round-trip.

Raw path: The same semantic query is compiled to ClickHouse SQL, then sent to the local ClickHouse via a proxy server, where it scans all 10,000,000 daily sales rows.

Result: Both return identical data, but the cached path skips the warehouse entirely — making it free to embed in any client, with no per-query warehouse cost.