Skip to content
Lucas Lessa
Voltar para as notícias
SnowflakeGAImpacto: Médio

Partition evolution for Apache Iceberg tables in Snowflake

You can now change the partition specification of Snowflake-managed Iceberg tables without rewriting historical data.

O que mudou

Partition evolution allows modifying the partitioning strategy of Snowflake-managed Apache Iceberg tables after creation by adding, dropping, or replacing partition fields without rewriting existing data. New data written uses the updated specification, while existing data stays in place.

Use cases

Imagine your data volume grew and your current daily partitioning is no longer efficient for queries, requiring an hourly or bucketed strategy.

  • Add new partition fields to existing tables.
  • Drop partition fields that are no longer needed.
  • Replace existing partition rules with new specifications without rewrite costs.

How to use

ALTER ICEBERG TABLE myTable ADD PARTITION BY (BUCKET(10, col1));

What happens in this code:

  1. The command alters the partition specification of the target table.
  2. A new bucket-based partition field is added.
  3. Only data inserted after execution starts using the new rule.
ALTER ICEBERG TABLE myTable REPLACE PARTITION BY (BUCKET(10, col1)) WITH (BUCKET(20, col1));

What happens in this code:

  1. The command targets the existing partition field using 10 buckets.
  2. The rule is replaced with a new division of 20 buckets.
  3. Old data remains under the previous spec and new data uses the new count.

Limitations and requirements

  • Feature is generally available (GA).
  • Supported only for Snowflake-managed Iceberg tables.
  • Execution requires the OWNERSHIP privilege on the table.
  • Exactly one partition field can be changed per command.
  • You cannot enable clustering on a table that currently has or has ever had partition transforms defined.
  • Dropping a column that is part of the current or historical partition spec is not supported.

Using it in a pipeline

Useful in the Silver or Gold layer to adjust the storage strategy of large lakehouse tables as query consumption patterns evolve, avoiding the effort of recreating the table from scratch.

Ver nota oficial do Snowflake

Apache Iceberg™ tables: Partition evolution (General availability)

Resumo e explicação gerados por IA a partir da release note oficial. Em caso de dúvida, a documentação oficial da plataforma prevalece.

Relacionadas