Gegevens transformeren door een Python-activiteit uit te voeren in Azure Databricks
VAN TOEPASSING OP: Azure Data Factory Azure Synapse Analytics
Tip
Probeer Data Factory in Microsoft Fabric, een alles-in-één analyseoplossing voor ondernemingen. Microsoft Fabric omvat alles, van gegevensverplaatsing tot gegevenswetenschap, realtime analyses, bedrijfsinformatie en rapportage. Meer informatie over het gratis starten van een nieuwe proefversie .
Met de Azure Databricks Python-activiteit in een pijplijn wordt een Python-bestand uitgevoerd in uw Azure Databricks-cluster. Dit artikel bouwt voort op het artikel activiteiten voor gegevenstransformatie , dat een algemeen overzicht geeft van gegevenstransformatie en de ondersteunde transformatieactiviteiten. Azure Databricks is een beheerd platform voor het uitvoeren van Apache Spark.
Bekijk de volgende video voor een inleiding en demonstratie van deze functie van 11 minuten:
Een Python-activiteit voor Azure Databricks toevoegen aan een pijplijn met gebruikersinterface
Als u een Python-activiteit voor Azure Databricks in een pijplijn wilt gebruiken, voert u de volgende stappen uit:
Zoek naar Python in het deelvenster Activiteiten van de pijplijn en sleep een Python-activiteit naar het pijplijncanvas.
Selecteer de nieuwe Python-activiteit op het canvas als deze nog niet is geselecteerd.
Selecteer het tabblad Azure Databricks om een nieuwe gekoppelde Azure Databricks-service te selecteren of te maken waarmee de Python-activiteit wordt uitgevoerd.
Selecteer het tabblad Instellingen en geef het pad in Azure Databricks op naar een Python-bestand dat moet worden uitgevoerd, naar optionele parameters die moeten worden doorgegeven en eventuele extra bibliotheken die op het cluster moeten worden geïnstalleerd om de taak uit te voeren.
Definitie van Databricks Python-activiteit
Dit is de voorbeeld-JSON-definitie van een Databricks Python-activiteit:
{
"activity": {
"name": "MyActivity",
"description": "MyActivity description",
"type": "DatabricksSparkPython",
"linkedServiceName": {
"referenceName": "MyDatabricksLinkedService",
"type": "LinkedServiceReference"
},
"typeProperties": {
"pythonFile": "dbfs:/docs/pi.py",
"parameters": [
"10"
],
"libraries": [
{
"pypi": {
"package": "tensorflow"
}
}
]
}
}
}
Eigenschappen van Databricks Python-activiteit
In de volgende tabel worden de JSON-eigenschappen beschreven die worden gebruikt in de JSON-definitie:
Eigenschap | Beschrijving | Vereist |
---|---|---|
naam | Naam van de activiteit in de pijplijn. | Yes |
beschrijving | Tekst die beschrijft wat de activiteit doet. | No |
type | Voor Databricks Python-activiteit is het activiteitstype DatabricksSparkPython. | Yes |
linkedServiceName | Naam van de gekoppelde Databricks-service waarop de Python-activiteit wordt uitgevoerd. Zie het artikel Gekoppelde services berekenen voor meer informatie over deze gekoppelde service. | Yes |
pythonFile | De URI van het Python-bestand dat moet worden uitgevoerd. Alleen DBFS-paden worden ondersteund. | Yes |
parameters | Opdrachtregelparameters die worden doorgegeven aan het Python-bestand. Dit is een matrix met tekenreeksen. | No |
bibliotheken | Een lijst met bibliotheken die moeten worden geïnstalleerd op het cluster waarmee de taak wordt uitgevoerd. Het kan een matrix van <tekenreeks, object zijn> | No |
Ondersteunde bibliotheken voor Databricks-activiteiten
In de bovenstaande Databricks-activiteitsdefinitie geeft u de volgende bibliotheektypen op: jar, egg, maven, pypi, cran.
{
"libraries": [
{
"jar": "dbfs:/mnt/libraries/library.jar"
},
{
"egg": "dbfs:/mnt/libraries/library.egg"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2",
"exclusions": [ "slf4j:slf4j" ]
}
},
{
"pypi": {
"package": "simplejson",
"repo": "http://my-pypi-mirror.com"
}
},
{
"cran": {
"package": "ada",
"repo": "https://cran.us.r-project.org"
}
}
]
}
Raadpleeg de Databricks-documentatie voor bibliotheektypen voor meer informatie.
Een bibliotheek uploaden in Databricks
U kunt de gebruikersinterface van de werkruimte gebruiken:
De gebruikersinterface van de Databricks-werkruimte gebruiken
Als u het dbfs-pad van de bibliotheek wilt ophalen die is toegevoegd met behulp van de gebruikersinterface, kunt u Databricks CLI gebruiken.
Normaal gesproken worden de Jar-bibliotheken opgeslagen onder dbfs:/FileStore/jars tijdens het gebruik van de gebruikersinterface. U kunt alles weergeven via de CLI: databricks fs ls dbfs:/FileStore/job-jars
U kunt ook de Databricks CLI gebruiken:
Databricks CLI gebruiken (installatiestappen)
Als u bijvoorbeeld een JAR naar dbfs wilt kopiëren:
dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar