Versiebeheerde broncode gebruiken in een Azure Databricks-taak
U kunt taken uitvoeren met behulp van notebooks of Python-code in een externe Git-opslagplaats of een Databricks Git-map. Deze functie vereenvoudigt het maken en beheren van productietaken en automatiseert continue implementatie:
- U hoeft geen afzonderlijke productieopslagplaats te maken in Azure Databricks, de bijbehorende machtigingen te beheren en deze up-to-date te houden.
- U kunt onbedoelde wijzigingen in een productietaak voorkomen, zoals lokale bewerkingen in de productieopslagplaats of wijzigingen van een vertakking.
- Het taakdefinitieproces heeft één bron van waarheid in de externe opslagplaats en elke taakuitvoering wordt gekoppeld aan een commit-hash.
Als u broncode wilt gebruiken in een externe Git-opslagplaats, moet u Databricks Git-mappen (opslagplaatsen) instellen.
Notitie
Als uw taak wordt uitgevoerd met behulp van een service-principal als de identiteit, kunt u de service-principal configureren in de Git-map met de broncode van de taak. Zie Een service-principal gebruiken met Databricks Git-mappen.
Een notebook gebruiken vanuit een externe Git-opslagplaats
Een taak maken met een notebook in een externe Git-opslagplaats:
Klik op Werkstromen in de zijbalk en klik of ga naar een bestaande taak en voeg een nieuwe taak toe.
Als dit een nieuwe taak is, vervangt u Een naam voor uw taak toevoegen... door uw taaknaam.
Voer een naam in voor de taak in het veld Taaknaam .
Selecteer Notitieblok in het vervolgkeuzemenu Type.
Selecteer git-provider in de vervolgkeuzelijst Bron en klik op Bewerken of Een Git-verwijzing toevoegen. Het dialoogvenster Git-gegevens wordt weergegeven.
Voer in het dialoogvenster Git-gegevens details in voor de opslagplaats, inclusief de URL van de opslagplaats, de Git-provider en de Git-verwijzing. Deze Git-verwijzing kan een vertakking, een tag of een doorvoering zijn.
Voer voor Pad een relatief pad in naar de locatie van het notitieblok, zoals
etl/notebooks/
.Wanneer u het relatieve pad invoert, begint u het niet met
/
of./
en neemt u de bestandsextensie van het notitieblok niet op, zoals.py
. Als het absolute pad voor het notitieblok dat u wilt openen bijvoorbeeld is/notebooks/covid_eda_raw.py
, voertnotebooks/covid_eda_raw
u dit in het veld Pad in.Klik op Create.
Python-code gebruiken vanuit een externe Git-opslagplaats
Een taak maken met Python-code in een externe Git-opslagplaats:
Klik op Werkstromen in de zijbalk en klik of ga naar een bestaande taak en voeg een nieuwe taak toe.
Als dit een nieuwe taak is, vervangt u Een naam voor uw taak toevoegen... door uw taaknaam.
Voer een naam in voor de taak in het veld Taaknaam .
Selecteer Python-script in het vervolgkeuzemenu Type.
Selecteer git-provider in de vervolgkeuzelijst Bron en klik op Bewerken of Een Git-verwijzing toevoegen. Het dialoogvenster Git-gegevens wordt weergegeven.
Voer in het dialoogvenster Git-gegevens details in voor de opslagplaats, inclusief de URL van de opslagplaats, de Git-provider en de Git-verwijzing. Deze Git-verwijzing kan een vertakking, een tag of een doorvoering zijn.
Voer voor Pad een relatief pad in naar de bronlocatie, zoals
etl/python/python_etl.py
.Wanneer u het relatieve pad invoert, begint u het niet met
/
of./
. Als het absolute pad voor de Python-code die u wilt openen bijvoorbeeld is/python/covid_eda_raw.py
, voertpython/covid_eda_raw.py
u het veld Pad in.Klik op Create.
Wanneer u de uitvoeringsgeschiedenis van een taak bekijkt waarop Python-code wordt uitgevoerd die is opgeslagen in een externe Git-opslagplaats, bevat het deelvenster Taakuitvoeringsgegevens Git-details, inclusief de doorvoer-SHA die is gekoppeld aan de uitvoering.
SQL-query's gebruiken vanuit een externe Git-opslagplaats
Notitie
Er wordt slechts één SQL-instructie ondersteund in een bestand. Meerdere SQL-instructies gescheiden door puntkomma's (;) zijn niet toegestaan.
Query's uitvoeren die zijn opgeslagen in .sql
bestanden in een externe Git-opslagplaats:
Klik op Werkstromen in de zijbalk en klik of ga naar een bestaande taak en voeg een nieuwe taak toe.
Als dit een nieuwe taak is, vervangt u Een naam voor uw taak toevoegen... door uw taaknaam.
Voer een naam in voor de taak in het veld Taaknaam .
Selecteer SQL in het vervolgkeuzemenu Type.
Selecteer Bestand in het vervolgkeuzemenu van de SQL-taak.
Selecteer git-provider in de vervolgkeuzelijst Bron en klik op Bewerken of Een Git-verwijzing toevoegen. Het dialoogvenster Git-gegevens wordt weergegeven.
Voer in het dialoogvenster Git-gegevens details in voor de opslagplaats, inclusief de URL van de opslagplaats, de Git-provider en de Git-verwijzing. Deze Git-verwijzing kan een vertakking, een tag of een doorvoering zijn.
Voer voor Pad een relatief pad in naar de bronlocatie, zoals
queries/sql/myquery.sql
.Wanneer u het relatieve pad invoert, begint u het niet met
/
of./
. Als het absolute pad voor de SQL-query die u wilt openen bijvoorbeeld is/sql/myqeury.sql
, voertsql/myquery.sql
u dit in het veld Pad in.Selecteer een SQL-warehouse. U moet een serverloos SQL Warehouse of een pro SQL Warehouse selecteren.
Klik op Create.
Aanvullende taken toevoegen vanuit een externe Git-opslagplaats
Aanvullende taken in een multitask-taak kunnen op een van de volgende manieren verwijzen naar dezelfde doorvoer in de externe opslagplaats:
sha
van$branch/head
wanneergit_branch
is ingesteldsha
van$tag
wanneergit_tag
is ingesteld- de waarde van
git_commit
U kunt notebook- en Python-taken combineren in een Azure Databricks-taak, maar ze moeten dezelfde Git-verwijzing gebruiken.
Een Databricks Git-map gebruiken
Als u liever de Gebruikersinterface van Azure Databricks gebruikt om uw broncode te beheren, kloont u uw opslagplaats in een Git-map van Databricks. Zie Optie 2 voor meer informatie: Een Git-productiemap en Git-automatisering instellen.
Als u een notebook of Python-code wilt toevoegen vanuit een Git-map in een taaktaak, selecteert u In de vervolgkeuzelijst Bron werkruimte en voert u het pad in naar de notebook- of Python-code in Path.
Toegang tot notebooks vanuit een IDE
Als u toegang wilt krijgen tot notebooks vanuit een geïntegreerde ontwikkelomgeving, controleert u of u de opmerking # Databricks notebook source
bovenaan het broncodebestand van het notebook hebt. Databricks voegt de regel # Databricks notebook source
boven aan het broncodebestand van het notebook toe om onderscheid te maken tussen een gewoon Python-bestand en een Python-taalnotitieblok dat is geëxporteerd in broncode-indeling in Azure Databricks. Wanneer u het notebook importeert, herkent Azure Databricks het en importeert het als een notebook, niet als een Python-module.
Probleemoplossing
Notitie
Git-taken bieden geen ondersteuning voor schrijftoegang tot werkruimtebestanden. Als u gegevens naar een tijdelijke opslaglocatie wilt schrijven, gebruikt u stuurprogrammaopslag. Als u permanente gegevens van een Git-taak wilt schrijven, gebruikt u een UC-volume of DBFS.
Foutbericht:
Run result unavailable: job failed with error message Notebook not found: path-to-your-notebook
Mogelijke oorzaken:
In het notitieblok ontbreekt de opmerking # Databricks notebook source
boven aan het broncodebestand van het notitieblok, of in de opmerking, notebook
wanneer deze moet beginnen met kleine letters n
.
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor