New Year Sale Discount Flat 70% Offer - Ends in 0d 00h 00m 00s - Coupon code: 70diswrap

dbt Labs dbt-Analytics-Engineering Dumps

dbt Analytics Engineering Certification Exam Questions and Answers

Question 1

Which two mechanisms allow dbt to write DRY code by reusing logic, preventing writing the same code multiple times?

Choose 2 options.

Options:

A.

Copy/pasting folders containing multiple models

B.

Writing and using dbt macros

C.

Creating singular tests

D.

Using dbt packages

E.

Changing a model materialization from view to ephemeral

Question 2

Examine how freshness is defined at the database level:

- name: raw

database: raw

freshness: # default freshness

warn_after: {count: 12, period: hour}

error_after: {count: 24, period: hour}

loaded_at_field: _etl_loaded_at

How can one table from the source raw be excluded from source freshness?

Options:

A.

Add freshness: null to the table configuration.

B.

Since freshness is defined at the source level, all tables in the source must adhere to the freshness parameters.

C.

Add loaded_at_field: null to the table configuration.

D.

Add error_after: null to the table configuration.

Question 3

A developer has updated multiple models in their dbt project, materialized as tables and views.

They want to run and test all models upstream and downstream from the modified models that are materialized as views.

What command will achieve this? Choose 1 option.

Options:

A.

dbt build --select +state:modified, config.materialized:view+

B.

dbt build --select +state:modified+

C.

dbt build --select @state:modified+, @config.materialized:view+

D.

dbt build --select +state:modified +materialized:view+

E.

dbt build --select +state:modified, +config.materialized:view+

Question 4

Which two dbt commands work with dbt retry?

Choose 2 options.

Options:

A.

run-operation

B.

parse

C.

debug

D.

deps

E.

snapshot

Question 5

Which two code snippets result in a lineage line being shown in the DAG? Choose 2 options.

Options:

A.

{{ source('source', 'table') }}

B.

{{ ref('stg_jaffle_shop__customers') }}

C.

dbt_jsmith.stg_jaffle_shop__customers

D.

{{ target.schema }}

E.

{{ source('jaffle_shop.customers') }}

Question 6

Which two configurations can be applied to a dbt test?

Choose 2 options.

Options:

A.

on_schema_change

B.

tags

C.

enabled

D.

materialized

E.

persist_docs

Question 7

You want to run and test the models, tests, and snapshots you have added or modified in development.

Which will you invoke? Choose 1 option.

Options:

Options:

A.

dbt build --select state:modified --defer

B.

dbt run --select state:modified --defer --state

dbt test --select state:modified --defer --state

C.

dbt build --select state:modified --defer --state

D.

dbt run --select state:modified --state

dbt test --select state:modified --state

E.

dbt build --select state:modified --state

Question 8

as

Options:

Question 9

Examine the code:

select

left(customers.id, 12) as customer_id,

customers.name as customer_name,

case when employees.employee_id is not null then true else false end as is_employee,

event_signups.event_name,

event_signups.event_date,

sum(case when visit_accomodations.type = 'hotel' then 1 end)::boolean as booked_hotel,

sum(case when visit_accomodations.type = 'car' then 1 end)::boolean as booked_ride

from customers

-- one customer can sign up for many events

left join event_signups

on left(customers.id, 12) = event_signups.customer_id

-- an event signup for a single customer can have many types of accommodations booked

left join visit_accomodations

on event_signups.signup_id = visit_accomodations.signup_id

and left(customers.id, 12) = visit_accomodations.customer_id

-- an employee can be a customer

left join employees

on left(customers.id, 12) = employees.customer_id

group by 1, 2

as

Options:

Question 10

You have just executed dbt run on this model:

select * from {{ source("{{ env_var('input') }}", 'table_name') }}

and received this error:

Compilation Error in model my_model

expected token ':', got '}'

line 14

{{ source({{ env_var('input') }}, 'table_name') }}

How can you debug this?

Options:

A.

Incorporate a log function into your macro.

B.

Check your SQL to see if you quoted something incorrectly.

C.

Check your Jinja and see if you nested your curly brackets.

D.

Take a look at the compiled code.

Question 11

You want to configure dbt to prevent tests from running if one or more of their parent models is unselected.

Which test command should you execute?

Choose 1 option.

Options:

A.

dbt test --select "orders" --indirect-selection=empty

B.

dbt test --select "orders"

C.

dbt test --select "orders" --indirect-selection=buildable

D.

dbt test --select "orders" --indirect-selection=cautious

Question 12

Which two statements about Exposures are true?

Choose 2 options.

Options:

A.

Models, sources, and metrics are downstream from Exposures.

B.

Exposures are materialized in the database.

C.

Exposures describe a downstream use of your dbt project.

D.

Exposures are defined in .sql files.

E.

You can run, test, and list resources that feed into your Exposure.

Question 13

Consider these SQL and YAML files for the model model_a:

models/staging/model_a.sql

{{ config(

materialized = "view"

) }}

with customers as (

...

)

dbt_project.yml

models:

my_new_project:

+materialized: table

staging:

+materialized: ephemeral

Which is true about model_a? Choose 1 option.

Options:

Options:

A.

Select statements made from the database on top of model_a and transformation processing within model_a will be quicker, but the data will only be as up to date as the last dbt run.

B.

Select statements made from the database on top of model_a will result in an error.

C.

Select statements made from the database on top of model_a will be slower, but the data will always be up to date.

D.

Select statements made from the database on top of model_a will be quicker, but the data will only be as up to date as the last dbt run.

(Note: A and D are duplicates — typical exam formatting.)

Question 14

Match the macro to the appropriate hook so that the correct execution steps comply with these rules:

    macro_1() needs to be executed after every dbt run.

    macro_2() needs to be executed after a model runs.

    macro_3() needs to execute before every dbt run.

    macro_4() needs to be executed before a model runs.

as

Options:

Question 15

32. You are creating a fct_tasks model with this CTE:

with tasks as (

select * from {{ ref('stg_tasks') }}

)

You receive this compilation error in dbt:

Compilation Error in model fct_tasks (models/marts/fct_tasks.sql)

Model 'model.dbt_project.fct_tasks' (models/marts/fct_tasks.sql) depends on a node named 'stg_tasks' which was not found

Which is correct? Choose 1 option.

Options:

Options:

A.

stg_tasks is configured as ephemeral.

B.

There is no dbt model called stg_tasks.

C.

There is no stg_tasks in the data warehouse.

D.

A stg_tasks has not been defined in schema.yml.

Question 16

Examine the configuration for the source:

sources:

- name: jaffle_shop

schema: jaffle_shop_raw_current

tables:

- name: orders

identifier: customer_orders

Which reference to the source is correct?

Options:

A.

{{ source('jaffle_shop_raw_current', 'customer_orders') }}

B.

{{ source('jaffle_shop_raw_current', 'orders') }}

C.

{{ source('jaffle_shop', 'orders') }}

D.

{{ source('jaffle_shop', 'customer_orders') }}

Question 17

Which two are true for a dbt clone command?

Choose 2 options.

Options:

A.

It requires the reference to a manifest from a previous dbt invocation.

B.

It allows comparison between manifests of source and target dbt runs, but does not create any objects itself.

C.

It allows testing your code changes on downstream dependencies outside of dbt (such as a BI tool).

D.

It can be used to replicate data across different data warehouses.

E.

It creates new versions of your dbt models suffixed with _v#.

Question 18

You work at an e-commerce company and a vendor provides their inventory data via CSV file uploads to an S3 bucket.

How do you prep the data for dbt transformations?

Choose 1 option.

Options:

A.

Create a dbt model with a view querying the external table directly.

B.

Run a pre-hook to create a temporary table and query from it in a staging model.

C.

Use dbt seed to stage the data in your data platform.

D.

Declare the external table as a source using the external configuration.

Question 19

as

Options:

Page: 1 / 7
Total 65 questions