For a couple of years, "Delta or Iceberg" was a real strategic question — the kind that shaped which query engines a company could realistically use, because most engines committed to reading one table format natively and treated the other as an afterthought. That question matters a lot less than it used to. Unity Catalog now lets you write Delta and have it read as Iceberg — or vice versa — without a second copy of the data or a duplicate ETL pipeline. Here's how that actually works, and where it still isn't a total non-issue.
What UniForm actually does
Delta Lake UniForm (Universal Format) generates Iceberg metadata alongside the Delta metadata your writes already produce, on top of the same underlying Parquet data files. There's no second write of the data itself — Delta and Iceberg both describe the same physical Parquet, just through two different metadata layers, kept in sync automatically on each Delta commit. An engine that only speaks Iceberg — Trino, Snowflake, Redshift Spectrum, Athena — can point at the Iceberg metadata and read the table as if it were natively Iceberg, with no awareness that Databricks wrote it as Delta.
Practically, this means a table your pipelines write with Delta-native features (deletion vectors, liquid clustering, Delta's transaction log) is simultaneously queryable by any Iceberg-compatible engine your organization already runs, without a nightly export job that duplicates storage and drifts out of sync between runs. That single fact removes most of the reason companies used to maintain parallel Delta and Iceberg copies of the same data.
Unity Catalog as an Iceberg REST catalog
The other half of this is Unity Catalog itself exposing an Iceberg REST catalog endpoint, so external engines can discover and query UC-governed tables using the standard Iceberg REST protocol — not just read the files, but resolve table metadata, snapshots, and schema through the same catalog interface Iceberg-native tools expect. That matters for governance: permissions, lineage, and audit logging stay centralized in Unity Catalog even when the consuming engine has never heard of Databricks.
Where the seams still show
This isn't a fully symmetric, zero-latency bridge, and it's worth setting expectations before promising a downstream team instant Iceberg access:
- Metadata generation isn't instantaneous. UniForm's Iceberg metadata is generated after the Delta commit, which means there's a small propagation window rather than true single-transaction atomicity across both formats. For most analytical workloads this is invisible; for anything expecting read-your-writes consistency from an Iceberg-side client, test it rather than assume it.
- Delta remains the primary write path. The practical write pattern today is: write Delta, read Iceberg. Two-way write support directly through Iceberg clients into UC-managed tables is a newer and less battle-tested path than the read side — treat it as something to pilot, not something to build a critical pipeline on without validation.
- Not every Delta feature has an Iceberg-side equivalent. Deletion vectors and liquid clustering are genuinely Delta-native performance features; UniForm makes the table's data readable as Iceberg, it doesn't retroactively give the Iceberg spec those same optimizations. An Iceberg engine reading the table gets correct data, not necessarily every performance characteristic your Delta-side jobs enjoy.
The actual guidance
Don't treat "Delta vs Iceberg" as a platform-wide decision that has to be made once and defended forever. Write Delta on Databricks, because that's where the write-side performance features live and where your pipelines already run. Turn on UniForm for any table an external engine needs to read, and use Unity Catalog's Iceberg REST endpoint to expose it, rather than standing up a separate export pipeline that will inevitably drift. The format war only matters if you're locked into a single-format assumption somewhere in your stack — increasingly, on Databricks, you don't have to be.
Zephico is a Databricks Consulting Partner, and our Databricks-certified engineers set this up for clients who need one governed copy of their data serving both Databricks-native and external Iceberg consumers. If your organization is maintaining duplicate Delta and Iceberg pipelines today, talk to us about collapsing them into one.
Originally published on the Zephico blog.
Top comments (0)