Iceberg evolves schema and partitions in place without rewriting data
Evolution - Apache Iceberg™
Apache Iceberg docs on metadata-only schema changes and partition evolution that leave existing files intact.
Based on
Iceberg supports in-place table evolution: evolve a schema like SQL, including nested structures, or change partition layout when volume changes, without rewriting table data or migrating to a new table. The extract contrasts this with Hive, where partition layout changes require a new table and query rewrites, and where even renames may be unsupported or unsafe. Schema evolution operations listed are add, drop, rename, type widen (update), and reorder.
Schema updates are metadata changes, so data files need not be rewritten; map keys disallow add/drop of struct fields that would change equality. Correctness guarantees say adds never read another column’s values, drops and updates do not alter other columns, and reordering does not change values tied to a field name. Unique column IDs prevent mistaken reuse of names or positions that break those guarantees in other formats.
Partition evolution updates the spec on an existing table because queries do not reference partition values directly; old data stays on the prior spec while new data uses the new layout, with metadata kept per version. For data platforms sharing tables across engines, this keeps the logical schema continuous while physical layout changes. Stable identity for columns is the governed meaning that lets contracts and consumers survive evolution without silent corruption.
Put this to work on CoreModels
Related connectors and recipes
Take the next step
Try CoreModels, talk with our team, or explore more resources.