A lakehouse platform, end to end
Storage, catalogs, a query engine, and the tools to run and watch it — designed so many tenants can share one platform safely.
True multi-tenancy
Every company gets its own isolated namespace, storage prefix, and query results. Tenants never see each other's data — isolation is enforced at query-rewrite time, not by convention.
Serverless DuckDB engine
Each query runs as a fresh, right-sized job on Kubernetes. No warehouse to keep warm — you pay for the compute a query actually uses, down to the CPU-second.
Iceberg + Nessie catalogs
Versioned Apache Iceberg tables backed by a Nessie catalog. Create schemas and tables, branch and roll back, and query them with plain SQL.
Flat files, no ETL
Point a catalog at Parquet, CSV, or JSONL in MinIO, S3, GCS, or Azure Blob and query it in place. We build the views; you write SELECT.
SQL Studio in the browser
A fast editor with autocompletion, a drill-down catalog explorer, formatting, result pagination, and the execution plan — all one click away.
Usage you can see
Per-query execution time, CPU and RAM, row counts, and success/error rates — on a monitoring dashboard you can filter by user and date range.
Multi-tenancy that holds
Every query is rewritten into your company's private namespace before it runs, so analytics.orders can only ever resolve to your orders. Query results are written to a per-company storage prefix, and the catalog explorer only shows what belongs to you. Isolation is a property of the system, not a rule people have to remember.
- Per-company namespaces enforced at query time
- Private storage prefix for every result set
- Shared catalogs for the data you choose to publish
Serverless DuckDB on Kubernetes
Each query is scheduled as its own short-lived job, sized to the work. There is no cluster to keep warm and nothing to scale up front. When the query finishes, the compute goes away — and you're billed for the CPU-seconds and memory it actually used.
- Fresh, right-sized job per query
- CPU, RAM, and runtime metered per execution
- The execution plan captured for every run
Iceberg tables and flat files, together
Create versioned Apache Iceberg tables on the managed Nessie catalog, or point a catalog at Parquet, CSV, and JSONL sitting in object storage. Either way you query with the same catalog.schema.table SQL — thunderduck builds the views and handles the metadata.
- Managed Nessie catalog, or bring a remote one
- Flat files on MinIO, S3, GCS, or Azure Blob
- Schemas and tables you manage from the console
Put it to work on your data.
Book a walkthrough and we'll spin up a workspace with your catalogs.