DE Mastery GitHub

Streamhouse · STH-04

Iceberg as streaming storage — commit interval vs small files

From your world. Your Iceberg tables: the small-files problem you already fight with compaction, now caused by streaming commit frequency

Practice quiz with instant feedback. For a scored run that counts toward your local progress, use uv run de quiz STH-04.

1In a Flink → Iceberg streaming pipeline, when does the sink commit a new Iceberg snapshot?
2A team sets a 1-second checkpoint interval to make an Iceberg table 'as fresh as possible'. A day later, Trino queries are slow. What is the most likely cause?
3A streaming job writes to an Iceberg sink. It runs forever and never commits a snapshot. The source is a datagen (unbounded) table with no checkpointing. What fixes it for a one-shot backfill?
4A Flink Iceberg sink must apply the updates and deletes of a CDC changelog by key (not only append). How must you declare the target table?
5Which maintenance operation directly addresses the small-files problem that frequent streaming commits create?
6You mirror a high-churn OLTP table (mostly updates to the same keys) onto the lake. Why might Apache Paimon be a better fit than Iceberg v2 for this feed?
7Which statements about commit cadence on a Flink → Iceberg table are correct? (choose all) (select all that apply)
8Both Iceberg and Paimon land on object storage and commit per checkpoint. What is the key architectural difference in how they handle updates?