Udostępnij przez


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 skonfigurowanej głównej tożsamości 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:

  1. Kliknij pozycję Dodaj zadanie.

  2. Wprowadź nazwę w polu Nazwa zadania .

  3. W menu rozwijanym Typ wybierz pozycję dbt.

  4. 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.

  5. 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?.

  6. W magazynie SQL wybierz magazyn SQL, aby uruchomić kod SQL wygenerowany przez dbt. W menu rozwijanym magazynu SQL wyświetlane są tylko bezserwerowe i profesjonalne magazyny SQL.

  7. Określ katalog magazynu. Jeśli nie zostanie ustawiona, zostanie użyta wartość domyślna obszaru roboczego.

  8. Określ schemat magazynu. Domyślnie jest używany schemat default .

  9. Wybierz środowisko obliczeniowe CLI dbt, aby uruchomić dbt Core. Usługa Databricks zaleca używanie bezserwerowych obliczeń dla zadań lub obliczeń klasycznych skonfigurowanych z klastrem z jednym węzłem.

  10. 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 Konfigurowanie środowiska bezserwerowego.

    W przypadku wszystkich innych konfiguracji obliczeniowych pole Bibliotek zależnych 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 zarówno w środowisku rozwoju, jak i produkcji. Usługa Databricks zaleca wersję 1.6.0 lub nowszą pakietu dbt-databricks.

  11. 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 CLI dbt, zobacz dokumentację dbt.

Zapoznaj się z dokumentacją dbt, aby uzyskać polecenia obsługiwane przez określoną wersję dbt.

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 uruchomieniu. Polecenia, takie jak run i build akceptują flagi, w tym --select i --exclude. Zobacz dokumentację dotyczącą przeglądu składni dbt, aby uzyskać pełny opis.

Dodatkowe flagi konfiguracji kontrolują sposób, w jaki dbt uruchamia Twój projekt. 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 są ciągami. 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.

JSON otoczony pojedynczymi cudzysłowami jest przekazywany 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

Pracując z dbt, można odwoływać się do wartości zadań, parametrów zadań i dynamicznych parametrów zadań. Wartości są zastępowane jako zwykły tekst w polu poleceń dbt commands 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}}"}'