5. Current data architecture
● Multi-engine
○ Spark for ETL, ML
○ Trino for ad-hoc, ETL
○ Flink for streaming
○ Druid for aggregates
● In the cloud (or moving)
● Hive Metastore
○ No metastore?
● Investing in data
○ In people
○ In tools
○ In infrastructure
8. What is Iceberg?
● A table format
○ Akin to columnar file formats
○ Transactional guarantees
○ Performance enhancements
● A standard for analytic tables
○ Open source spec and library
○ Integrated into query engines
11. Shared storage requirements
Technical:
● Must handle concurrent writes
● Must be scalable, performant
● Must be cloud native
Practical:
● Must be open source
● Must be neutral
● Must address productivity
18. Usability improvements
● Schema evolution
○ Instantaneous – no rewrites
○ Safe – no undead columns 🧟
○ Saves days of headache
ALTER TABLE db.tab
RENAME COLUMN
id TO customer_id
● Layout evolution
○ Lazy – only rewrite if needed
○ Partitioning mistakes are okay
○ Changes with your data
○ Saves a month of headache
ALTER TABLE db.tab
ADD PARTITION FIELD
bucket(256, id)
19. Practical improvements
● Hidden partitioning
○ No silent correctness bugs
○ No conversion mistakes
○ Query without understanding
a tableʼs physical layout
● Reliable updates
○ Stop manual cleanup
○ Use any query engine
○ Automate maintenance
20. Performance improvements
● Indexed metadata
○ Fast job planning
○ Fast query execution
○ Faster iteration
● Table configuration
○ Tune tables, not jobs
○ Automate table tuning
○ Cluster and sort from config