Aracılığıyla paylaş


işler için dbt görevi

Dbt projelerini Azure Databricks'te yapılandırmak ve çalıştırmak için dbt görevini kullanın.

Önemli

Dbt görevleri çalıştırıldığında Databricks, FarklıDBT_ACCESS_TOKENsorumlu için öğesini ekler.

Dbt görevini yapılandırma

Aşağıdakileri yaparak İşler kullanıcı arabirimindeki dbt sekmesinden bir görev ekleyin:

  1. Tür açılan menüsünde öğesini seçindbt.

  2. Kaynak açılan menüsünde, Uzak Git deposunda bulunan bir proje için Azure Databricks çalışma alanı klasöründe veya Git sağlayıcısında bulunan bir dbt projesini kullanmak için Çalışma Alanı'nı seçebilirsiniz.

    • Çalışma Alanı'nı seçerseniz, project dizinini seçmek için sağlanan dosya gezginini kullanın.

    • Git sağlayıcısı'nı seçerseniz, proje deposunun Git bilgilerini girmek için Düzenle'ye tıklayın. Bkz . Git'i işlerle kullanma.

      Projeniz deponun kök dizininde değilse, project dizini alanını kullanarak yolunu belirtin.

  3. dbt komutları metin kutuları varsayılan olarak dbt deps, dbt seed ve dbt run komutlarıdır. Sağlanan komutlar sıralı olarak çalışır. bu alanları iş akışınız için gerektiği şekilde ekleyin, kaldırın veya düzenleyin. Bkz. dbt komutları nedir?.

  4. SQL ambarında, dbt tarafından oluşturulan SQL'i çalıştırmak için bir SQL ambarı seçin. SQL ambarı açılan menüsünde yalnızca sunucusuz ve profesyonel SQL ambarları gösterilir.

  5. Bir Ambar kataloğu belirtin. Ayar kaldırılırsa, çalışma alanı varsayılanı kullanılır.

  6. Bir Ambar şeması belirtin. Varsayılan olarak şema default kullanılır.

  7. dbt Core'u çalıştırmak için dbt CLI işlemini seçin. Databricks, tek düğümlü kümeyle yapılandırılmış işler veya klasik işler için sunucusuz işlem kullanılmasını önerir.

  8. Görev için bir dbt-databricks sürüm belirtin.

    İşlem kullanıyorsanızServerless, yeni bir ortam seçmek, düzenlemek veya eklemek için Ortam ve Kitaplıklar alanını kullanın. Bkz . Not defteri bağımlılıklarını yükleme.

    Diğer tüm işlem yapılandırmaları için, Bağımlı kitaplıklar alanı varsayılan olarak'a dbt-databricks>=1.0.0,<2.0.0 doldurulur. Bir sürümü sabitlemek için bu ayarı silin ve + PyPi kitaplığı ekleyin.

    Not

    Databricks, geliştirme ve üretim çalıştırmalarında aynı sürümün kullanıldığından emin olmak için dbt görevlerinizi dbt-databricks paketinin belirli bir sürümüne sabitlemenizi önerir. Databricks, dbt-databricks paketinin 1.6.0 veya üzeri bir sürümünü önerir.

  9. Görev oluştur'a tıklayın.

dbt komutları nelerdir?

dbt komutları alanı, dbt komut satırı arabirimini (CLI) kullanarak çalıştırılacak komutları belirtmenize olanak tanır. dbt CLI ile ilgili tüm ayrıntılar için dbt belgelerine bakın.

Belirtilen dbt sürümü tarafından desteklenen komutlar için dbt belgelerine bakın.

Dbt komutlarına seçenekleri geçirme

dbt düğümü seçimi söz dizimi, belirli bir çalıştırmaya dahil olacak veya hariç tutulacak kaynakları belirtmenize olanak tanır. ve gibi run komutlar ve build--selectdahil olmak üzere --exclude bayrakları kabul eder. Tam bir açıklama için dbt söz dizimine genel bakış belgelerine bakın.

Ek yapılandırma bayrakları dbt'nin projenizi nasıl çalıştır çalıştığını denetler. Kullanılabilir bayrakların listesi için resmi dbt belgelerindeki Komut satırı seçenekleri sütununa bakın.

Bazı bayraklar konumsal bağımsız değişkenler alır. Bayraklar için bazı bağımsız değişkenler dizelerdir. Örnekler ve açıklamalar için dbt belgelerine bakın.

Değişkenleri dbt komutlarına geçirme

dbt komutları alanlarındaki --varskomutlara statik veya dinamik değerler geçirmek için bayrağını kullanın.

Tek tırnakla ayrılmış bir JSON'yi öğesine --varsgeçirirsiniz. Aşağıdaki örnekte olduğu gibi, JSON'daki tüm anahtarların ve değerlerin iki tırnak ayrılmış olması gerekir:

dbt run --vars '{"volume_path": "/Volumes/path/to/data", "date": "2024/08/16"}'

Parametreli dbt komutları örnekleri

dbt ile çalışırken görev değerlerine, iş parametrelerine ve dinamik iş parametrelerine başvurabilirsiniz. Değerler, komut çalışmadan önce dbt komutları alanına düz metin olarak değiştirilir. Görevler arasında değer geçirme veya iş meta verilerine başvurma hakkında bilgi için bkz . İşleri parametreleştirme.

Bu örneklerde aşağıdaki iş parametrelerinin yapılandırıldığı varsayılır:

Parametre adı Parametre değeri
volume_path /Volumes/path/to/data
table_name my_table
select_clause --select "tag:nightly"
dbt_refresh --full-refresh

Aşağıdaki örneklerde bu parametrelere başvurmanın geçerli yolları gösterilmektedir:

dbt run '{"volume_path": "{{job.parameters.volume_path}}"}'
dbt run --select "{{job.parameters.table_name}}"
dbt run {{job.parameters.select_clause}}
dbt run {{job.parameters.dbt_refresh}}
dbt run '{"volume_path": "{{job.parameters.volume_path}}"}' {{job.parameters.dbt_refresh}}

Aşağıdaki örneklerde olduğu gibi dinamik parametrelere ve görev değerlerine de başvurabilirsiniz:

dbt run --vars '{"date": "{{job.start_time.iso_date}}"}'
dbt run --vars '{"sales_count": "{{tasks.sales_task.values.sales_count}}"}'