Unity Catalog and Apache Iceberg: What the Format Convergence Means for Your Stack
Databricks announced full Iceberg support in Unity Catalog at DAIS — managed Iceberg tables, the Iceberg REST Catalog API, read/write from external engines like Spark, Flink, and Kafka. The format wars between Delta Lake and Iceberg have been running for years. This announcement doesn't end them, but it does change what you have to decide when you're building a new data platform.
Previously the choice was architectural: pick Delta, get Unity Catalog governance and Databricks optimization features; pick Iceberg, get broader engine compatibility but give up some of the Databricks-specific tooling. Now the choice is narrower: it's mostly about which format your existing data already lives in.
What Iceberg in Unity Catalog Actually Enables
The Iceberg REST Catalog API means any engine that speaks Iceberg — Flink, Trino, Kafka, dbt — can read and write Unity Catalog-managed tables without going through a Databricks cluster. That's the real interoperability unlock. Your streaming pipeline in Flink can write directly to a UC-governed Iceberg table and the lineage, access control, and audit log all work the same as if a Databricks job wrote it.
For organizations that have invested in Flink for streaming or Trino for interactive queries, this removes the "we'd use Unity Catalog if only it supported our engine" objection.
The Practical Implication for Existing Delta Tables
If your lakehouse is already built on Delta Lake, there's nothing urgent to do. Delta isn't going anywhere and Databricks will keep optimizing it. The Iceberg support is additive — it lets you bring new workloads and new engines into the governance umbrella without requiring a format migration. The decision framework hasn't changed: use the format your workload naturally produces, govern both through Unity Catalog. I'm here to help think through the edge cases.