Data Modeling & Transformation Flashcards
7 cards from real DBT practice questions. Tap to flip, then mark Knew It or Still Learning โ missed cards come back until you master them.
Read the first 7 Data Modeling & Transformation flashcards as text
Which macro filters rows in an incremental model so only new data is processed on subsequent runs?
Answer: {{ is_incremental() }}
is_incremental() returns true when the model already exists, is configured incremental, and no full refresh is requested.
In an incremental model's SQL, which relation does {{ this }} refer to?
Answer: The currently building model's existing table in the warehouse
{{ this }} resolves to the already-built relation of the model, used to find the max timestamp.
What does running `dbt run --full-refresh` do to an incremental model?
Answer: Drops and rebuilds it from scratch
Full refresh rebuilds incremental models as if they did not exist, ignoring is_incremental() logic.
Which config tells an incremental model how to match existing rows for updating?
Answer: unique_key
unique_key identifies rows to update or replace, depending on the incremental strategy.
Which materialization creates no object in the warehouse and inlines the model as a CTE in downstream models?
Answer: ephemeral
Ephemeral models are interpolated as CTEs into dependent models and are not built.
What does the on_schema_change config control for an incremental model?
Answer: How new or removed columns in the source query are handled
Options such as ignore, fail, append_new_columns, and sync_all_columns govern schema drift.
Which is a typical drawback of using the view materialization for a heavily queried, complex model?
Answer: It reruns the underlying query every time it is queried
Views store only the query, so each downstream query pays the compute cost.
How this page was made: written with AI tools. We have not yet matched this exam's facts to an official source, so confirm fees, dates and rules with the exam body. Not reviewed by a subject-matter expert. Editorial policy