Adatok átalakítása Jar-tevékenység futtatásával a Azure Databricks

Vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Data Factory a Microsoft Fabric a Azure Data Factory következő generációja, egyszerűbb architektúrával, beépített AI-vel és új funkciókkal. Ha még nem ismerkedik az adatintegrációval, kezdje a Fabric Data Factoryvel. A meglévő ADF-számítási feladatok frissíthetők Fabric használatával, hogy elérjék az adatkutatás, a valós idejű elemzés és a jelentéskészítés új képességeit.

Az Azure Databricks Jar-tevékenység egy pipeline-ben egy Spark Jar-t futtat az Azure Databricks-fürtben. 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. Azure Databricks egy felügyelt platform az Apache Spark futtatásához.

Az alábbi videóban a funkció bemutatását és ismertetését tekintheti meg tizenegy percben:

Jar-tevékenység hozzáadása egy folyamathoz az Azure Databricks felhasználói felületével

Ha Jar-tevékenységet szeretne használni Azure Databricks egy folyamatban, hajtsa végre a következő lépéseket:

  1. Keresse meg a Jart a folyamattevékenységek panelen, és húzzon egy Jar-tevékenységet a folyamatvászonra.

  2. Jelölje ki az új Jar-tevékenységet a vásznon, ha még nincs kijelölve.

  3. Válassza a 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 Jar-tevékenységet.

    Egy Jar-tevékenység felhasználói felületét jeleníti meg.

  4. Válassza a Settings lapot, és adja meg a Azure Databricks végrehajtandó osztálynevet, a Jarnak átadandó opcionális paramétereket, valamint a fürtre telepíteni kívánt kódtárakat a feladat végrehajtásához.

    Egy Jar-tevékenység Beállítások lapjának felhasználói felületét jeleníti meg.

Databricks Jar tevékenység-definíció

A Databricks Jar-tevékenység JSON-mintadefiníciója a következő:

{
    "name": "SparkJarActivity",
    "type": "DatabricksSparkJar",
    "linkedServiceName": {
        "referenceName": "AzureDatabricks",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "mainClassName": "org.apache.spark.examples.SparkPi",
        "parameters": [ "10" ],
        "libraries": [
            {
                "jar": "dbfs:/docs/sparkpi.jar"
            }
        ]
    }
}

Databricks Jar-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 Szükséges
név A folyamat tevékenységének neve. Igen
leírás A tevékenység célját leíró szöveg. Nem
típus A Databricks Jar-tevékenység esetében a tevékenység típusa a DatabricksSparkJar. Igen
KapcsoltSzolgáltatásNév Annak a Databricks társított szolgáltatásnak a neve, amelyen a Jar-tevékenység fut. A társított szolgáltatással kapcsolatos további információkért tekintse meg a társított számítási szolgáltatásokról szóló cikket. Igen
mainClassName A végrehajtandó fő metódust tartalmazó osztály teljes neve. Ezt az osztályt egy kódtárként megadott JAR-ben kell tárolni. A JAR-fájlok több osztályt is tartalmazhatnak. Mindegyik osztály tartalmazhat fő metódust. Igen
paraméterek A fő metódusnak átadott paraméterek. Ez a tulajdonság sztringek tömbje. Nem
könyvtárak A feladatot végrehajtó fürtre telepíteni kívánt könyvtárak listája. Ez lehet sztringek, objektumok tömbje <> Igen (legalább egy a mainClassName metódust tartalmazza)

Feljegyzés

Ismert probléma – Ha ugyanazt interaktív fürtöt használja egyidejű Databricks Jar-tevékenységek futtatásához (fürt újraindítása nélkül), ismert probléma merül fel a Databricksben, ahol az első tevékenység paraméterei véletlenül alkalmazásra kerülnek a következő tevékenységeknél is. Emiatt a program helytelen paramétereket ad át a következő feladatoknak. A Job cluster használatával csökkentse ezt a problémát.

A databricks-tevékenységekhez támogatott kódtárak

Az előző Databricks-tevékenységdefinícióban a következő kódtártípusokat adta meg: jar, , , egg, mavenpypi. 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"
            }
        }
    ]
}

További információkért tekintse meg a Databricks könyvtártípusokkal kapcsolatos dokumentációját .

Tár feltöltése a Databricksben

A munkaterület felhasználói felületét használhatja:

  1. A Databricks-munkaterület felhasználói felületének használata

  2. A felhasználói felületen hozzáadott kódtár adatbázis-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ületen az összes adatot listázhatja: databricks fs ls dbfs:/FileStore/job-jars

Vagy használhatja a Databricks parancssori felületét:

  1. Kövesse a könyvtár másolását a Databricks parancssori felületével

  2. A Databricks parancssori felületének használata (telepítési lépések)

    Például egy JAR másolása a dbfs-be: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar

A funkció 11 perces felvezetéséhez és bemutatásához tekintse meg a videót.