dbt'de hiyerarşik modeller

dbt'ye Giriş

Mike Metzger

Data Engineer

dbt’de hiyerarşi nedir?

  • Bir dbt projesindeki bağımlılıkları gösterir
  • Yönlendirilmiş çevrimsiz grafik (DAG) veya soyağacı grafiği olarak da bilinir
    • Bu, genel DAG’den ziyade dbt’ye özgüdür
  • Modellerin bağımlılıklara göre oluşturulmasını/güncellenmesini sağlar

dbt DAG / Soyağacı grafiği

dbt'ye Giriş

Hiyerarşi ayrıntıları

  • avg_fare_per_day ve total_creditcard_riders_per_day, taxi_rides_raw’a bağlıdır
  • dbt önce taxi_rides_raw’ı oluşturur
  • Soyağacı grafiği olmadan dbt girdileri alfabetik oluşturur
    • taxi_rides_raw olmadan avg_fare_per_day başarısız olurdu

dbt DAG / Soyağacı grafiği

dbt'ye Giriş

Hiyerarşiler nasıl tanımlanır?

  • Model dosyalarında Jinja şablon diliyle kurulur
  • En sık ref işlevi kullanılır
  • SQL’de tablo adını {{ ref('model_name') }} ile değiştirin
  • Tabloyu dbt run ile (yeniden) malzemeleştirin
  • ref şablonları gerçek tablo adlarıyla değiştirilir
dbt'ye Giriş

Hiyerarşi örneği

SELECT 
  first_name, last_name
FROM taxi_rides_raw
SELECT 
  first_name, last_name
FROM {{ ref('taxi_rides_raw') }}
dbt'ye Giriş

Hadi pratik yapalım!

dbt'ye Giriş

Preparing Video For Download...