dbt — zadanie dla zadań
Użyj zadania dbt, aby skonfigurować i uruchomić projekty dbt w usłudze Azure Databricks.
Ważne
Po uruchomieniu zadań dbt usługa Databricks wprowadza element DBT_ACCESS_TOKEN
dla podmiotu zabezpieczeń skonfigurowanego w polu Uruchom jako .
Konfigurowanie zadania dbt
dbt
Dodaj zadanie z karty Zadania w interfejsie użytkownika zadań, wykonując następujące czynności:
W menu rozwijanym Typ wybierz pozycję
dbt
.W menu rozwijanym Źródło możesz wybrać pozycję Obszar roboczy, aby użyć projektu dbt znajdującego się w folderze obszaru roboczego usługi Azure Databricks lub dostawcy git dla projektu znajdującego się w zdalnym repozytorium Git.
Jeśli wybierzesz pozycję Obszar roboczy, użyj dostarczonego nawigatora plików, aby wybrać katalog Project.
Jeśli wybierzesz dostawcę git, kliknij przycisk Edytuj , aby wprowadzić informacje o usłudze Git dla repozytorium projektów. Zobacz Używanie usługi Git z zadaniami.
Jeśli projekt nie znajduje się w katalogu głównym repozytorium, użyj pola Katalog projektu, aby określić ścieżkę do niego.
Pola tekstowe polecenia dbt są domyślne dla poleceń dbt deps, dbt seed i dbt run. Podane polecenia są uruchamiane w kolejności sekwencyjnej. Dodaj, usuń lub zmodyfikuj te pola zgodnie z potrzebami dla przepływu pracy. Zobacz Co to są polecenia dbt?.
W usłudze SQL Warehouse wybierz usługę SQL Warehouse, aby uruchomić bazę danych SQL wygenerowaną przez bazę danych. W menu rozwijanym usługi SQL Warehouse są wyświetlane tylko bezserwerowe i pro magazyny SQL.
Określ katalog magazynu. Jeśli nie zostanie ustawiona, zostanie użyta wartość domyślna obszaru roboczego.
Określ schemat magazynu. Domyślnie jest używany schemat
default
.Wybierz środowisko obliczeniowe interfejsu wiersza polecenia dbt, aby uruchomić bazę danych dbt Core. Usługa Databricks zaleca używanie bezserwerowych obliczeń dla zadań lub obliczeń klasycznych skonfigurowanych z klastrem z jednym węzłem.
dbt-databricks
Określ wersję zadania.Jeśli używasz
Serverless
obliczeń, użyj pola Środowisko i biblioteki , aby wybrać, edytować lub dodać nowe środowisko. Zobacz Instalowanie zależności notesu.W przypadku wszystkich innych konfiguracji obliczeniowych pole Biblioteki zależne jest domyślnie wypełniane
dbt-databricks>=1.0.0,<2.0.0
. Usuń to ustawienie i + Dodaj bibliotekę PyPi, aby przypiąć wersję.Uwaga
Usługa Databricks zaleca przypinanie zadań dbt do określonej wersji pakietu dbt-databricks, aby upewnić się, że ta sama wersja jest używana do uruchamiania programowania i produkcji. Usługa Databricks zaleca wersję 1.6.0 lub nowszą pakietu dbt-databricks.
Kliknij pozycję Utwórz zadanie.
Co to są polecenia dbt?
Pole dbt commands umożliwia określenie poleceń do uruchomienia przy użyciu interfejsu wiersza polecenia (CLI) dbt. Aby uzyskać szczegółowe informacje na temat interfejsu wiersza polecenia dbt, zobacz dokumentację bazy danych.
Zapoznaj się z dokumentacją dbt, aby uzyskać polecenia obsługiwane przez określoną wersję bazy danych.
Przekazywanie opcji do poleceń dbt
Składnia wyboru węzła dbt umożliwia określenie zasobów do uwzględnienia lub wykluczenia w określonym przebiegu. Polecenia, takie jak run
i build
akceptują flagi, w tym --select
i --exclude
. Aby uzyskać pełny opis, zobacz dokumentację dotyczącą składni dbt.
Dodatkowe flagi konfiguracji kontrolują sposób uruchamiania projektu przez bazę danych. Zobacz kolumnę Opcje wiersza polecenia w oficjalnej dokumentacji dbt, aby uzyskać listę dostępnych flag.
Niektóre flagi przyjmują argumenty pozycyjne. Niektóre argumenty flag to ciągi. Zapoznaj się z dokumentacją dbt, aby zapoznać się z przykładami i wyjaśnieniami.
Przekazywanie zmiennych do poleceń dbt
Użyj flagi --vars
, aby przekazać wartości statyczne lub dynamiczne do poleceń w polach poleceń dbt.
Jednopostrofowe dane JSON są przekazywane do --vars
. Wszystkie klucze i wartości w formacie JSON muszą być rozdzielane podwójnym cudzysłowem, jak w poniższym przykładzie:
dbt run --vars '{"volume_path": "/Volumes/path/to/data", "date": "2024/08/16"}'
Przykłady sparametryzowanych poleceń dbt
Podczas pracy z bazą danych można odwoływać się do wartości zadań, parametrów zadania i parametrów zadania dynamicznego. Wartości są zastępowane jako zwykły tekst w polu polecenia dbt przed uruchomieniem polecenia. Aby uzyskać informacje na temat przekazywania wartości między zadaniami lub odwoływania się do metadanych zadań, zobacz Parametryzowanie zadań.
W poniższych przykładach przyjęto założenie, że skonfigurowano następujące parametry zadania:
Nazwa parametru | Wartość parametru |
---|---|
volume_path |
/Volumes/path/to/data |
table_name |
my_table |
select_clause |
--select "tag:nightly" |
dbt_refresh |
--full-refresh |
W poniższych przykładach przedstawiono prawidłowe sposoby odwołowania się do tych parametrów:
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}}
Możesz również odwoływać się do parametrów dynamicznych i wartości zadań, jak w następujących przykładach:
dbt run --vars '{"date": "{{job.start_time.iso_date}}"}'
dbt run --vars '{"sales_count": "{{tasks.sales_task.values.sales_count}}"}'