The main levers are columnar compression, tiered storage with hot and cold tiers mapped to object storage classes, aggressive time-based partitioning so queries scan only relevant data, and Iceberg table lifecycle policies for compaction and expiration. Budget explicitly for query compute, not just storage — as the Jevons Paradox discussion explains, cheaper storage tends to increase total data retained and queried, so compute costs can grow even as per-GB storage costs fall.