Bir dbt projesi oluşturma

dbt'ye Giriş

Mike Metzger

Data Engineer

dbt projesi nedir

  • dbt’de veriyle çalışmaya yönelik bileşenleri içerir

    • Proje yapılandırması
    • Veri kaynakları ve hedefleri
    • SQL sorguları
    • Şablonlar
    • Dokümantasyon
  • Klasör yapısı olarak uygulanır

dbt klasör yapısı

dbt'ye Giriş

Yeni proje nasıl oluşturulur

  • dbt init komutunu kullanın
    • Proje adını sorar
    • Hangi veritabanı / veri ambarı tipini sorar
  • dbt init <projectname> ile kısaltılabilir
  • Üst düzey proje klasörünü ve gereken yapıyı oluşturur
repl:~/workspace$ dbt init
16:38:37  Running with dbt=1.8.4
Enter a name for your project (letters, digits, underscore): test_project
Which database would you like to use? [1] duckdb
Enter a number: 1
...
dbt'ye Giriş

Proje profilleriyle yapılandırma tanımlama

  • Profil, belirli bir dağıtım senaryosunu temsil eder
    • Geliştirme
    • Staging / Test
    • Üretim
  • Bir dbt projesinde birden çok profil olabilir
  • profiles.yml dosyasında tanımlanır
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
dbt'ye Giriş

YAML

  • Yet Another Markup Language
  • Metin dosyasıdır; boşluklar önemlidir (Python gibi)
  • Birçok geliştirme senaryosunda yapılandırma için kullanılır
  • Kurallar zor olabilir; örneklerdeki gibi satırları hizalı tutun
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
dbt'ye Giriş

DuckDB

  • Açık kaynak sunucusuz veritabanı
    • sqlite’a benzer
  • Analitik için tasarlanmıştır
  • Vektörize (yani HIZLI)
  • Kullanımı kolay

duckdb logosu

dbt'ye Giriş

Hadi pratik yapalım!

dbt'ye Giriş

Preparing Video For Download...