Theory
Features that fall out of immutable storage
Because micro-partitions are immutable and metadata-tracked, Snowflake gets several superpowers almost for free:
- Time Travel — Query a table as it was up to N days ago (
AT(OFFSET => -3600)or a timestamp), orUNDROPa table you deleted by accident. Recovery from a badUPDATEbecomes a one-liner instead of a restore-from-backup incident. - Zero-copy cloning —
CREATE TABLE prod_clone CLONE prodcreates an instant, full-size copy that initially stores no new bytes — both names just point at the same micro-partitions. New storage is only used for rows you change in the clone. This makes full-prod dev/test environments cheap and instant. - Snowpark — Write Python/Java/Scala DataFrame code that Snowflake pushes down into its SQL engine, so heavy transforms run next to the data on a warehouse instead of pulling rows out to a separate Spark cluster. It's how Snowflake answers 'but I want to code in Python, not SQL'.
Use Case Example: An engineer runs UPDATE customers SET tier = ... with a bad WHERE and corrupts 2M rows at 14:55. Instead of a panicked backup restore, they CREATE TABLE customers_fixed CLONE customers AT(OFFSET => -600) (state from 10 min ago), validate it, and swap — minutes, not hours, and zero extra storage for the clone.