Home / Companies / QuestDB / Blog / Post Details
Content Deep Dive

DuckLake and QuestDB: the same Parquet, a different table format

Blog post from QuestDB

Post Details
Company
Date Published
Author
Javier Ramirez
Word Count
1,693
Company Posts That Month
2
Language
English
Hacker News Points
-
Post removed?
No
Summary

QuestDB’s cold storage uses plain Hive-partitioned Parquet files, allowing the same data to be registered without copying into multiple table formats, including Iceberg and DuckLake, while remaining directly queryable through Parquet readers. Both formats provide metadata for file membership, schemas, snapshots, and statistics, but Iceberg stores metadata files alongside data in object storage and supports broad lakehouse interoperability, whereas DuckLake 1.0 stores metadata as rows in a SQL catalog such as SQLite, PostgreSQL, or DuckDB, enabling indexed metadata queries and avoiding manifest-file maintenance. DuckLake can register QuestDB files with `ducklake_add_data_files`, infer schemas from Parquet, and query the resulting table in DuckDB, although DuckDB may expose QuestDB nanosecond timestamps at microsecond precision. Catalog synchronization is required when QuestDB adds or removes cold partitions because neither format automatically discovers files; DuckLake registrations must be carefully diffed to avoid duplicate row counts, while removals require re-registering the surviving file set. Since DuckLake maintenance may otherwise rewrite or delete registered files, compaction should be disabled and storage access can be limited to read-only credentials. Iceberg is positioned for broad organizational and multi-engine lakehouse access, while DuckLake is suited to simpler, fast DuckDB-centric analysis, illustrating how open Parquet storage lets table formats remain a flexible per-use-case metadata choice rather than a permanent data commitment.

Trends Found in this Post

No tracked trend matches for this post yet.

Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.