Șabloane Jinja

Introducere în dbt

Mike Metzger

Data Engineer

Ce este un șablon?

  • Format predefinit care permite substituirea informațiilor
  • De obicei un fișier text
  • Simplifică accesul și reutilizarea
Introducere în dbt

Ce este Jinja?

  • Limbaj de șablonare bazat pe text
  • Utilizat în multe instrumente, nu doar dbt
  • {{ ... }} reprezintă o substituție de șablon
  • dbt oferă multe funcții Jinja disponibile în proiecte
  • Permite utilizarea dinamică a dbt
  • Poate folosi bucle for pentru a simplifica codul
Introducere în dbt

Funcții Jinja în dbt

  • Câteva dintre funcțiile Jinja disponibile
    • ref: Accesarea modelelor după nume
    • config: Accesarea setărilor de configurare
    • docs: Accesarea informațiilor din documentație
    • Calcule, bucle etc.
Introducere în dbt

Exemplu Jinja

  • Fără Jinja
    SELECT
    COALESCE(start_date, '2025-01-01') as start_date,
    COALESCE(update_date, '2025-01-01') as update_date,
    COALESCE(end_date, '2025-01-01') as end_date
    FROM Events
    
  • Cu Jinja
    SELECT
    {% for column in ['start_date', 'update_date', 'end_date'] %}
    COALESCE({{column}}, '2025-01-01') as {{column}}
    {% endfor %}
    FROM Events
    
Introducere în dbt

Să exersăm!

Introducere în dbt

Preparing Video For Download...