Samenvatting: dbt-casestudy

Casestudy: e-commercedatamodellen bouwen met dbt

Susan Sun

Freelance Data Scientist

Hoofdstuk 1: dbt instellen

  1. Set-up:

    • Controleer installatie: dbt --versions, which dbt
    • dbt initialiseren: dbt init
  2. Data laden:

    • dbt seed-bestanden laden (bv. distributiecentrum): dbt seed
    • dbt source-bestanden laden. Bv. {{ source('looker_ecommerce', 'orders') }}
  3. dbt-subcommando’s: dbt run, dbt test, dbt build

  4. dbt-projectbestand en mapstructuur bekijken

Casestudy: e-commercedatamodellen bouwen met dbt

Hoofdstuk 2: dbt-modellen bouwen

  1. Bouw dbt staging-, mart- en snapshotmodellen
  2. Voeg tabel-/kolomdocumentatie en dbt-datatests toe

Een gerichte acyclische graaf met alle dbt-sources en -modellen en hun relaties. Sources zijn groen. Modellen en marts zijn blauw.

Casestudy: e-commercedatamodellen bouwen met dbt

Hoofdstuk 3: Jinja met dbt

  1. Minder herhaling met Jinja: set, loop, macros
  2. Gebruik dbt compile en whitespacebeheer voor ontwikkeling
{%- set order_statuses = ['Shipped', 'Complete', 'Processing'] -%}

SELECT 
    user_id,
    {%- for order_status in order_statuses %}
        COUNT(DISTINCT CASE WHEN status = '{{ order_status }}' THEN order_id END) 
        AS num_orders_{{ order_status }}
    {%- endfor %}
FROM {{ ref('stg_looker__orders') }}
GROUP BY 1
Casestudy: e-commercedatamodellen bouwen met dbt

Gefeliciteerd!

Casestudy: e-commercedatamodellen bouwen met dbt

Preparing Video For Download...