Reviewed by Aditya Kumar · Last reviewed 2026-03-24
**Patterns:** (1) Incremental: watermark (max id/updated_at), query WHERE id > watermark. (2) CDC: Debezium, AWS DMS—log-based, low latency. (3) Hash/checksum: compare batches. (4) MERGE: upsert by key. **Snowflake:** Stage + MERGE. Store last watermark in state table. Use...
Patterns: (1) Incremental: watermark (max id/updated_at), query WHERE id > watermark. (2) CDC: Debezium, AWS DMS—log-based, low latency. (3) Hash/checksum: compare batches. (4) MERGE: upsert by key.
Snowflake: Stage + MERGE. Store last watermark in state table. Use event time, not process time, for late arrivals. Idempotent design: rerun same date = same result.
SELECT * FROM source WHERE updated_at > :last_run
-- Store last_run after successful load
Red Flag: Full refresh for incremental use case. Pro-Move: 'We use watermark table + MERGE; CDC for real-time; batch for history.'
According to DataEngPrep.tech, this is one of the most frequently asked SQL interview questions, reported at 1 company. DataEngPrep.tech maintains an editor-reviewed database of 1,863 data engineering interview questions across 7 categories.