โ† All DBT Flashcard Decks

Project Development 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 Project Development flashcards as text
  1. An incremental model must only process new rows on subsequent runs. Which Jinja construct correctly wraps the filter so it is skipped on the first build?

    Answer: {% if is_incremental() %}

    is_incremental() returns true only when the target table exists, the model is materialized incrementally, and --full-refresh was not passed.

  2. Inside an incremental model, which relation reference points to the already-built target table so you can compare against its max timestamp?

    Answer: {{ this }}

    {{ this }} resolves to the database relation of the model currently being built.

  3. A source table occasionally gets new columns, and you want your incremental model to add them automatically without failing. Which config achieves this?

    Answer: on_schema_change='append_new_columns'

    append_new_columns adds new columns to the existing target table while leaving removed columns in place.

  4. You need a model's logic to be inlined as a CTE into downstream models without creating any object in the warehouse. Which materialization should you choose?

    Answer: ephemeral

    Ephemeral models are not built in the database; dbt interpolates them as CTEs into dependent models.

  5. Where should you define a source so that {{ source('stripe', 'payments') }} resolves correctly?

    Answer: In a .yml file under a sources: block with name: stripe and a table named payments

    Sources are declared in property YAML files using a sources: block listing the source name and its tables.

  6. A teammate hardcodes analytics.dbt_prod.customers in a model's SQL. What is the main project-development problem this causes?

    Answer: dbt cannot infer the dependency in the DAG and the reference won't adapt across environments

    Using ref() lets dbt build the DAG in the correct order and resolve the right schema per target.

  7. Which command builds and tests models, seeds, snapshots, and tests together in DAG order, skipping downstream nodes when an upstream test fails?

    Answer: dbt build

    dbt build runs all resource types in DAG order and skips children of failed nodes.

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