DE Mastery GitHub

Streamhouse · STH-05

Streaming dimensional modeling — SCD2 dim + fct with temporal (as-of) join

From your world. Your core strength: Kimball SCD2 dimensions and point-in-time fact enrichment, now built on a streaming CDC feed

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

1You build an SCD2 dim_customer from a CDC changelog. How do you derive the valid_to of each version?
2An order placed at t=30 belongs to customer Alice. She was 'std' until t=100 and 'gold' after. The pipeline reprocesses the order next week. Which tier should fct_orders record?
3Which join condition expresses a point-in-time (as-of) match between an order and an SCD2 dimension version?
4You order CDC change events to build SCD2 validity intervals. Which timestamp should you order by?
5What makes a streaming dimensional model trustworthy (TESTING.md G6)?
6Why is it unsafe to join a fact to the dimension row where is_current = true (instead of the as-of version)?
7Which statements about an SCD2 dimension built from CDC are correct? (choose all) (select all that apply)
8In Flink SQL, you use a temporal join FOR SYSTEM_TIME AS OF o.order_ts. What must the versioned (dimension) table have?