Adatok átalakítása Databricks-jegyzetfüzet futtatásával
A KÖVETKEZŐKRE VONATKOZIK: Azure Data Factory Azure Synapse Analytics
Tipp
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás vállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésekig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyen!
A folyamatban lévő Azure Databricks-jegyzetfüzettevékenység egy Databricks-jegyzetfüzetet futtat az Azure Databricks-munkaterületen. Ez a cikk az adatátalakítási tevékenységekről szóló cikkre épül, amely általános áttekintést nyújt az adatátalakításról és a támogatott átalakítási tevékenységekről. Az Azure Databricks egy felügyelt platform az Apache Spark futtatásához.
A Databricks-jegyzetfüzeteket egy ARM-sablonnal JSON használatával, vagy közvetlenül a Azure Data Factory Studio felhasználói felületén hozhatja létre. A Databricks-jegyzetfüzetek felhasználói felülettel történő létrehozásának részletes útmutatójához tekintse meg a Databricks-jegyzetfüzet futtatása a Databricks-jegyzetfüzet-tevékenységgel a Azure Data Factory-ban című oktatóanyagot.
Jegyzetfüzet-tevékenység hozzáadása az Azure Databrickshez felhasználói felülettel rendelkező folyamathoz
Ha jegyzetfüzet-tevékenységet szeretne használni az Azure Databrickshez egy folyamatban, hajtsa végre az alábbi lépéseket:
Keresse meg a jegyzetfüzetet a folyamat Tevékenységek paneljén, és húzza a Jegyzetfüzet-tevékenységet a folyamatvászonra.
Jelölje ki az új jegyzetfüzet-tevékenységet a vásznon, ha még nincs kijelölve.
Válassza az Azure Databricks lapot egy új Azure Databricks társított szolgáltatás kiválasztásához vagy létrehozásához, amely végrehajtja a notebooktevékenységet.
Válassza a Beállítások lapot, és adja meg az Azure Databricksen végrehajtandó jegyzetfüzet elérési útját, a jegyzetfüzetnek átadandó választható alapparamétereket, valamint a fürtre telepíteni kívánt további kódtárakat a feladat végrehajtásához.
Databricks Notebook-tevékenységdefiníció
Íme egy Databricks Notebook-tevékenység JSON-mintadefiníciója:
{
"activity": {
"name": "MyActivity",
"description": "MyActivity description",
"type": "DatabricksNotebook",
"linkedServiceName": {
"referenceName": "MyDatabricksLinkedservice",
"type": "LinkedServiceReference"
},
"typeProperties": {
"notebookPath": "/Users/user@example.com/ScalaExampleNotebook",
"baseParameters": {
"inputpath": "input/folder1/",
"outputpath": "output/"
},
"libraries": [
{
"jar": "dbfs:/docs/library.jar"
}
]
}
}
}
A Databricks Notebook-tevékenység tulajdonságai
Az alábbi táblázat a JSON-definícióban használt JSON-tulajdonságokat ismerteti:
Tulajdonság | Leírás | Kötelező |
---|---|---|
name | A folyamatban lévő tevékenység neve. | Igen |
leírás | A tevékenység tevékenységeit leíró szöveg. | Nem |
típus | A Databricks Notebook-tevékenység esetében a tevékenység típusa a DatabricksNotebook. | Igen |
linkedServiceName | Annak a Databricks társított szolgáltatásnak a neve, amelyen a Databricks-jegyzetfüzet fut. A társított szolgáltatásról további információt a Társított szolgáltatások számítása című cikkben talál. | Igen |
notebookPath | A Databricks-munkaterületen futtatandó jegyzetfüzet abszolút elérési útja. Ennek az elérési útnak perjellel kell kezdődnie. | Igen |
baseParameters | Key-Value párok tömbje. Az alapparaméterek minden tevékenységfuttatáshoz használhatók. Ha a jegyzetfüzet nem megadott paramétert használ, a rendszer a jegyzetfüzet alapértelmezett értékét használja. További információt a Databricks-jegyzetfüzetek paramétereiről talál. | Nem |
kódtárak | A feladatot végrehajtó fürtre telepíteni kívánt kódtárak listája. Ez lehet egy sztringből, objektumból> álló <tömb. | Nem |
A Databricks-tevékenységekhez támogatott kódtárak
A fenti Databricks-tevékenységdefinícióban a következő kódtártípusokat adja meg: jar, egg, whl, maven, pypi, cran.
{
"libraries": [
{
"jar": "dbfs:/mnt/libraries/library.jar"
},
{
"egg": "dbfs:/mnt/libraries/library.egg"
},
{
"whl": "dbfs:/mnt/libraries/mlflow-0.0.1.dev0-py2-none-any.whl"
},
{
"whl": "dbfs:/mnt/libraries/wheel-libraries.wheelhouse.zip"
},
{
"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"
}
}
]
}
További információt a Databricks könyvtártípusokkal kapcsolatos dokumentációjában talál.
Paraméterek továbbítása jegyzetfüzetek és folyamatok között
A databricks tevékenység baseParameters tulajdonságával paramétereket adhat át a jegyzetfüzeteknek.
Bizonyos esetekben előfordulhat, hogy vissza kell adnia bizonyos értékeket a jegyzetfüzetből a szolgáltatásnak, amelyek felhasználhatók a szolgáltatás vezérlési folyamatához (feltételes ellenőrzésekhez), vagy az alárendelt tevékenységek használhatják fel (a méretkorlát 2 MB).
A jegyzetfüzetben meghívhatja a dbutils.notebook.exit("returnValue") parancsot, és a rendszer visszaadja a megfelelő "returnValue" értéket a szolgáltatásnak.
A szolgáltatás kimenetét a következő kifejezéssel
@{activity('databricks notebook activity name').output.runOutput}
használhatja: .Fontos
Ha JSON-objektumot ad át, a tulajdonságnevek hozzáfűzésével lekérheti az értékeket. Például:
@{activity('databricks notebook activity name').output.runOutput.PropertyName}
Tár feltöltése a Databricksben
A munkaterület felhasználói felületét használhatja:
A Databricks-munkaterület felhasználói felületének használata
A felhasználói felülettel hozzáadott kódtár dbfs elérési útjának lekéréséhez használhatja a Databricks parancssori felületét.
A Jar-kódtárak általában a dbfs:/FileStore/jars alatt vannak tárolva a felhasználói felület használata során. A parancssori felület összes elemét listázhatja: databricks fs ls dbfs:/FileStore/job-jars
Vagy használhatja a Databricks parancssori felületét:
A Databricks parancssori felületének használata (telepítési lépések)
Példaként egy JAR-t a dbfs-be másolhat:
dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar