dbt-taak voor taken
Gebruik de dbt-taak om dbt-projecten te configureren en uit te voeren in Azure Databricks.
Belangrijk
Wanneer dbt-taken worden uitgevoerd, injecteert Databricks de DBT_ACCESS_TOKEN
principal die is geconfigureerd in het veld Uitvoeren als .
Een dbt-taak configureren
Voeg als volgt een dbt
taak toe vanaf het tabblad Taken in de gebruikersinterface taken:
Selecteer in de vervolgkeuzelijst
dbt
.In de vervolgkeuzelijst Bron kunt u Werkruimte selecteren om een dbt-project te gebruiken dat zich in een azure Databricks-werkruimtemap bevindt of Git-provider voor een project dat zich in een externe Git-opslagplaats bevindt.
Als u Werkruimteselecteert, gebruikt u de opgegeven bestandsnavigator om de projectmapte selecteren.
Als u Git-providerselecteert, klikt u op Bewerken om Git-gegevens voor de projectopslagplaats in te voeren. Zie Git gebruiken met taken.
Als uw project zich niet in de hoofdmap van de opslagplaats bevindt, gebruikt u het veld Project-map om het pad naar het project op te geven.
De dbt-opdrachten tekstvakken zijn standaard ingesteld op de opdrachten dbt deps, dbt seed en dbt run. De opgegeven opdrachten worden in opeenvolgende volgorde uitgevoerd. Voeg deze velden toe, verwijder of bewerk deze indien nodig voor uw werkstroom. Zie Wat zijn dbt-opdrachten?
Selecteer in SQL Warehouseeen SQL-warehouse om de SQL uit te voeren die is gegenereerd door dbt. In het vervolgkeuzemenu van SQL Warehouse worden alleen serverloze en pro SQL-warehouses weergegeven.
Geef een Warehouse-catalogus op. Als dit niet is ingesteld, wordt de standaardinstelling van de werkruimte gebruikt.
Geef een magazijnschema op. Standaard wordt het schema
default
gebruikt.Kies dbt CLI-rekenproces om dbt Core uit te voeren. Databricks raadt aan om serverloze rekenkracht te gebruiken voor taken of klassieke taken die zijn geconfigureerd met een cluster met één knooppunt.
Geef een
dbt-databricks
versie op voor de taak.Als u
Serverless
compute gebruikt, gebruikt u het veld Omgeving en bibliotheken om een nieuwe omgeving te selecteren, te bewerken of toe te voegen. Zie Notebook-afhankelijkheden installeren.Voor alle andere rekenconfiguraties wordt het veld Afhankelijke bibliotheken standaard ingevuld
dbt-databricks>=1.0.0,<2.0.0
. Verwijder deze instelling en + Een PyPi-bibliotheek toevoegenom een versie vast te maken.Notitie
Databricks raadt u aan uw dbt-taken vast te maken aan een specifieke versie van het dbt-databricks-pakket om ervoor te zorgen dat dezelfde versie wordt gebruikt voor ontwikkelings- en productieuitvoeringen. Databricks raadt versie 1.6.0 of hoger aan van het dbt-databricks-pakket.
Klik op Taak maken.
Wat zijn dbt-opdrachten?
Met het veld dbt-opdrachten kunt u opdrachten opgeven die moeten worden uitgevoerd met behulp van de dbt-opdrachtregelinterface (CLI). Zie de dbt-documentatie voor meer informatie over de dbt CLI.
Raadpleeg de dbt-documentatie voor opdrachten die worden ondersteund door de opgegeven versie van dbt.
Opties doorgeven aan dbt-opdrachten
Met de syntaxis van de dbt-knooppuntselectie kunt u resources opgeven die in een bepaalde uitvoering moeten worden opgenomen of uitgesloten. Opdrachten zoals run
en build
accepteren vlaggen, waaronder --select
en --exclude
. Zie de overzichtsdocumenten voor dbt-syntaxis voor een volledige beschrijving.
Aanvullende configuratievlagmen bepalen hoe dbt uw project uitvoert. Zie de opdrachtregelopties kolom in de officiële dbt-documenten voor een lijst met beschikbare vlaggen.
Sommige vlaggen hebben positionele argumenten. Sommige argumenten voor vlaggen zijn tekenreeksen. Raadpleeg de dbt-documentatie voor voorbeelden en uitleg.
Variabelen doorgeven aan dbt-opdrachten
Gebruik de vlag --vars
om statische of dynamische waarden door te geven aan opdrachten in dbt-opdrachten velden.
U geeft een door één aanhalingsteken gescheiden JSON door aan --vars
. Alle sleutels en waarden in de JSON moeten worden gescheiden door dubbele aanhalingstekens, zoals in het volgende voorbeeld:
dbt run --vars '{"volume_path": "/Volumes/path/to/data", "date": "2024/08/16"}'
Voorbeelden van geparameteriseerde dbt-opdrachten
U kunt verwijzen naar taakwaarden, taakparameters en dynamische taakparameters wanneer u met dbt werkt. Waarden worden vervangen als tekst zonder opmaak in de dbt-opdrachten veld voordat de opdracht wordt uitgevoerd. Zie Taken parameteriserenvoor informatie over het doorgeven van waarden tussen taken of het verwijzen naar metagegevens van taken.
In deze voorbeelden wordt ervan uitgegaan dat de volgende taakparameters zijn geconfigureerd:
Parameternaam | Parameterwaarde |
---|---|
volume_path |
/Volumes/path/to/data |
table_name |
my_table |
select_clause |
--select "tag:nightly" |
dbt_refresh |
--full-refresh |
In de volgende voorbeelden ziet u geldige manieren om naar deze parameters te verwijzen:
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}}
U kunt ook verwijzen naar dynamische parameters en taakwaarden, zoals in de volgende voorbeelden:
dbt run --vars '{"date": "{{job.start_time.iso_date}}"}'
dbt run --vars '{"sales_count": "{{tasks.sales_task.values.sales_count}}"}'