Source schemas change. Columns get added, renamed, or removed. Your pipelines must handle this.
Strategies:
- Schema-on-read: Store raw JSON, parse at query time. Flexible but slower.
- Schema evolution: Managed tools like Fivetran auto-add new columns.
- Schema registry: For Kafka, enforce compatibility rules.
Breaking changes:
- Column removed: Downstream queries fail
- Type changed: Casts may error
- Column renamed: Treated as remove + add
Document your contracts with source teams. Alert on unexpected schema changes before they break production.