Scan like Parquet. Write like Postgres.

Fall in love with analytical storage all over

IcefallDB turns ordinary filesystem objects into a cold, immutable table layer for analytics: plain Parquet files, plain JSON metadata, native DataFusion execution, DuckDB read access, and a warm-aggregate cache for the queries that keep coming back.

Rust corefast execution path
DELETE / UPDATE / MERGErow-level mutations
Zero-copy ingestfilesystem-native
Compaction + GCoffline maintenance
/lakehouse/events/_manifests/0048.json
Data falling into IcefallDB Glacier blocks cascade into a crystalline database cylinder with snapshot rings.

native DataFusion engine

immutable snapshot committed

warm aggregate cache primed

Plain ParquetJSON metadataImmutable snapshotsTime-travel readsRow-level DELETEUPDATEMERGECrash-safe commitsDataFusionDuckDB readsPython adapterOffline compaction

The glacier model

Massive like a glacier. Structured like a table. Open like files.

Filesystem-native tables

Tables live as plain Parquet data and plain JSON metadata, so the storage layer stays inspectable, durable, and easy to move.

Row-level mutations

DELETE, UPDATE, and MERGE workflows land as controlled deltas, then settle into compacted immutable snapshots.

Warm aggregate cache

Repeated analytical cuts stay close to the surface, creating a warmer path through otherwise cold, immutable data.

Open core materials

A native engine without hiding the lake.

IcefallDB is designed around transparent storage primitives and a fast Rust core: zero-copy ingest when files are already where they need to be, DataFusion for native execution, DuckDB read access for exploration, plus offline compaction and garbage collection for long-lived tables.

Rust core The pressure layer

The Rust core coordinates snapshots, mutations, compaction, and query planning while leaving table data in ordinary files.

More in the core

Production plumbing, still on plain files.

Secondary indexes

Point and range lookups through a B-tree index, plus a tiny learned index for affine integer keys. Derived sidecars that accelerate reads without ever becoming the source of truth.

Per-table encryption

Optional Parquet Modular Encryption, table by table. Protect sensitive tables at rest while the rest of the lake stays plain and inspectable.

Iceberg export

One-way export to Apache Iceberg v2 for tools that speak it, while IcefallDB metadata stays the source of truth.

Read from object storage

Read-only access over S3-compatible object storage, so the same plain-file tables serve from local disk or the cloud.

HTTP SQL server

An optional server speaks SQL over HTTP and amortizes table-open and engine-startup across many operations, with an optional mutation daemon.

Verify and repair

Hash-chained manifests keep history auditable; built-in check and doctor commands validate every link and can repair derived state.

Interactive query face

Switch workloads and watch the ice route change.

DELETE / UPDATE / MERGE
import icefalldb
con = icefalldb.attach("/lakehouse", engine="icefalldb")

# row-level DELETE / UPDATE / MERGE over plain Parquet files
con.sql("DELETE FROM events WHERE tenant_id = 'acme' AND ts < TIMESTAMP '2024-01-01'")
con.sql("UPDATE events SET tier = 'cold' WHERE tenant_id = 'acme'")
files delta snapshot cache

Mutations become controlled cascades.

Rows can change, but the table history stays frozen into immutable layers. IcefallDB lets the fall happen, then preserves the strata.

Immutable strata

Slide through frozen table history.

Every commit forms a new layer. Old files can be compacted or collected offline while readers keep a stable view of the table they asked for.

Viewing snapshot 0048: fresh aggregates, compacted deltas, and a frozen manifest.

0044base parquet
0045merge delta
0046delete vector
0047compacted
0048warm cache
0049next freeze

Build flexibily with IcefallDB

Lake-native, open format & fast, performant mutations.

IcefallDB is shaped for analytical workloads that need transparent storage, immutable history, native execution, and practical row-level change.

IcefallDB.com is © 2026 VisorCraft, LLC. IcefallDB is dual-licensed under your choice of MIT or Apache-2.0.

DuckDB and PostgreSQL are trademarks of their respective owners. VisorCraft, LLC is not affiliated with, endorsed by, or sponsored by them.