Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie die dbt-Aufgabe, um dbt-Projekte für Azure Databricks zu konfigurieren und auszuführen.
Wichtig
Wenn dbt-Aufgaben ausgeführt werden, fügt Databricks DBT_ACCESS_TOKEN für den im Feld Ausführen als konfigurierten Principal ein.
Konfigurieren einer dbt-Aufgabe
Fügen Sie eine dbt-Aufgabe auf der Registerkarte Aufgaben in der Benutzeroberfläche Jobs hinzu, indem Sie wie folgt vorgehen:
Klicken Sie auf "Aufgabe hinzufügen".
Geben Sie einen Namen in das Feld " Vorgangsname " ein.
Wählen Sie im Dropdownmenü Typ die Option
dbtaus.Im Dropdownmenü Source können Sie Workspace auswählen, um ein dbt-Projekt in einem Azure Databricks Arbeitsbereichsordner oder Git-Anbieter für ein Projekt in einem Remote-Git-Repository zu verwenden.
Wenn Sie Workspace auswählen, verwenden Sie den bereitgestellten Dateinavigator, um das Projektverzeichnis auszuwählen.
Wenn Sie Git-Anbieter auswählen, klicken Sie auf Bearbeiten, um Git-Informationen für das Projekt-Repository einzugeben. Siehe Verwenden von Git mit Lakeflow-Aufträgen.
Wenn sich Ihre project nicht im Stammverzeichnis des Repositorys befindet, verwenden Sie das Feld Project directory, um den Pfad anzugeben.
Die Textfelder für die dbt-Befehle enthalten standardmäßig die Befehle dbt deps, dbt seed und dbt run. Die bereitgestellten Befehle werden in sequenzieller Reihenfolge ausgeführt. Fügen Sie diese Felder nach Bedarf für Ihren Workflow hinzu, entfernen oder bearbeiten Sie sie. Siehe Was sind dbt-Befehle?.
Wählen Sie in SQL-Warehouse ein SQL-Warehouse aus, um das von dbt generierte SQL auszuführen. Das Dropdownmenü SQL-Warehouse zeigt nur SQL-Warehouses der Ebenen „Serverless“ oder „Pro“ an.
Geben Sie einen Warehouse-Katalog an. Ist diese Option nicht gesetzt, wird die Standardeinstellung des Arbeitsbereichs verwendet.
Geben Sie ein Warehouse-Schema an. Standardmäßig wird das Schema
defaultverwendet.Wählen Sie dbt CLI-Compute aus, um dbt Core auszuführen. Databricks empfiehlt die Verwendung von serverlosem Compute für Jobs oder von klassischem Jobs Compute, der mit einem Single-Node-Cluster konfiguriert ist.
Geben Sie eine
dbt-databricksVersion für die Aufgabe an.Wenn Sie
Serverless-Compute einsetzen, verwenden Sie das Feld Umgebung und Bibliotheken, um eine neue Umgebung auszuwählen, zu bearbeiten oder hinzuzufügen. Siehe Konfigurieren der serverlosen Umgebung.Bei allen anderen Compute-Konfigurationen wird das Feld Abhängige Bibliotheken standardmäßig auf
dbt-databricks>=1.0.0,<2.0.0ausgefüllt. Löschen Sie diese Einstellung und fügen Sie mit + Hinzufügen eine PyPi-Bibliothek hinzu, um eine Version festzulegen.Hinweis
Databricks empfiehlt, Ihre dbt-Aufgaben an eine bestimmte Version des dbt-databricks-Pakets anzuheften, um sicherzustellen, dass dieselbe Version für Entwicklungs- und Produktionsausführungen verwendet wird. Databricks empfiehlt Version 1.6.0 oder höher des dbt-databricks-Pakets.
Klicken Sie auf Aufgabe erstellen.
Was sind dbt-Befehle?
Im Feld dbt-Befehle können Sie Befehle angeben, die über die dbt-Befehlszeilenschnittstelle (CLI) ausgeführt werden sollen. Ausführliche Informationen über die dbt CLI finden Sie in der dbt-Dokumentation..
Überprüfen Sie die dbt-Dokumentation auf Befehle, die von der angegebenen Version von dbt unterstützt werden.
Optionen an dbt-Befehle übergeben
Mit der dbt-Knotenauswahlsyntax können Sie Ressourcen angeben, die in einen bestimmten Lauf einbezogen oder ausgeschlossen werden sollen. Befehle wie run und build akzeptieren Flags einschließlich --select und --exclude. Eine vollständige Beschreibung finden Sie in der dbt-Syntaxübersicht.
Zusätzliche Konfigurationsflags steuern, wie dbt Ihr Projekt ausführt. Eine Liste der verfügbaren Flags finden Sie in der Spalte Befehlszeilenoptionen in den offiziellen dbt-Dokumenten.
Einige Flags benötigen positionelle Argumente. Einige Argumente für Flags sind Zeichenketten. Beispiele und Erläuterungen finden Sie in der dbt-Dokumentation.
Übergeben von Variablen an dbt-Befehle
Verwenden Sie das --vars-Flag, um statische oder dynamische Werte an Befehle in dbt-Befehlsfeldern zu übergeben.
Sie übergeben ein durch einfache Anführungszeichen getrenntes JSON an --vars. Alle Schlüssel und Werte im JSON müssen durch doppelte Anführungszeichen getrennt sein, wie im folgenden Beispiel:
dbt run --vars '{"volume_path": "/Volumes/path/to/data", "date": "2024/08/16"}'
Beispiele für parametrisierte dbt-Befehle
Bei der Arbeit mit dbt können Sie auf Aufgabenwerte, Auftragsparameter und dynamische Auftragsparameter verweisen. Die Werte werden als Klartext in das Feld für dbt commands eingetragen, bevor der Befehl ausgeführt wird. Informationen zur Weitergabe von Werten zwischen Aufgaben oder zum Verweis auf Auftragsmetadaten finden Sie unter Aufträge parametrisieren.
In diesen Beispielen wird davon ausgegangen, dass die folgenden Auftragsparameter konfiguriert wurden:
| Parametername | Parameterwert |
|---|---|
volume_path |
/Volumes/path/to/data |
table_name |
my_table |
select_clause |
--select "tag:nightly" |
dbt_refresh |
--full-refresh |
Die folgenden Beispiele zeigen gültige Möglichkeiten, auf diese Parameter zu verweisen:
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}}
Sie können auch auf dynamische Parameter und Aufgabenwerte verweisen, wie in den folgenden Beispielen:
dbt run --vars '{"date": "{{job.start_time.iso_date}}"}'
dbt run --vars '{"sales_count": "{{tasks.sales_task.values.sales_count}}"}'