Adatok átalakítása Spark-tevékenység használatával az Azure Data Factoryben és a Synapse Analyticsben
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 a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
A Spark-tevékenység egy adat-előállítóban és a Synapse-folyamatokban egy Spark-programot hajt végre saját vagy igény szerinti HDInsight-fürtön. 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. Igény szerinti Spark-társított szolgáltatás használatakor a szolgáltatás automatikusan létrehoz egy Spark-fürtöt az adatok feldolgozásához, majd a feldolgozás befejezése után törli a fürtöt.
Spark-tevékenység hozzáadása folyamathoz felhasználói felülettel
Ha Spark-tevékenységet szeretne használni egy folyamathoz, hajtsa végre a következő lépéseket:
Keresse meg a Sparkot a folyamattevékenységek panelen, és húzzon egy Spark-tevékenységet a folyamatvászonra.
Jelölje ki az új Spark-tevékenységet a vásznon, ha még nincs kijelölve.
A HDI-fürt lapon válassza ki vagy hozzon létre egy új társított szolgáltatást egy HDInsight-fürthöz, amely a Spark-tevékenység végrehajtásához lesz használva.
Válassza a Szkript/Jar lapot egy új feladathoz társított szolgáltatás kiválasztásához vagy létrehozásához egy Azure Storage-fiókhoz, amely a szkriptet fogja üzemeltetni. Adja meg az ott végrehajtandó fájl elérési útját. Speciális részleteket is konfigurálhat, például proxyfelhasználót, hibakeresési konfigurációt, valamint argumentumokat és Spark-konfigurációs paramétereket, hogy átadják a szkriptnek.
Spark-tevékenység tulajdonságai
Íme a Spark-tevékenység JSON-mintadefiníciója:
{
"name": "Spark Activity",
"description": "Description",
"type": "HDInsightSpark",
"linkedServiceName": {
"referenceName": "MyHDInsightLinkedService",
"type": "LinkedServiceReference"
},
"typeProperties": {
"sparkJobLinkedService": {
"referenceName": "MyAzureStorageLinkedService",
"type": "LinkedServiceReference"
},
"rootPath": "adfspark",
"entryFilePath": "test.py",
"sparkConfig": {
"ConfigItem1": "Value"
},
"getDebugInfo": "Failure",
"arguments": [
"SampleHadoopJobArgument1"
]
}
}
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 tevékenységeit leíró szöveg. | Nem |
típus | A Spark-tevékenység esetében a tevékenység típusa a HDInsightSpark. | Igen |
linkedServiceName | Annak a HDInsight Spark társított szolgáltatásnak a neve, amelyen a Spark-program 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 |
SparkJobLinkedService | A Spark-feladatfájlt, függőségeket és naplókat tartalmazó Azure Storage társított szolgáltatás. Itt csak az Azure Blob Storage és az ADLS Gen2 társított szolgáltatásai támogatottak. Ha nem ad meg értéket ehhez a tulajdonsághoz, a HDInsight-fürthöz társított tároló lesz használatban. Ennek a tulajdonságnak az értéke csak egy Azure Storage társított szolgáltatás lehet. | Nem |
rootPath | A Spark-fájlt tartalmazó Azure Blob-tároló és mappa. A fájlnév megkülönbözteti a kis- és nagybetűk nevét. A mappa szerkezetével kapcsolatos részletekért tekintse meg a mappaszerkezet szakaszát (a következő szakaszt). | Igen |
entryFilePath | A Spark-kód/csomag gyökérmappájának relatív elérési útja. A belépési fájlnak Python-fájlnak vagy .jar fájlnak kell lennie. | Igen |
className | Az alkalmazás Java/Spark főosztálya | Nem |
Érvek | A Spark program parancssori argumentumainak listája. | Nem |
proxyUser | A Spark-program végrehajtásához megszemélyesítendő felhasználói fiók | Nem |
sparkConfig | Adja meg a Spark konfigurációs tulajdonságainak értékeit a következő témakörben: Spark Configuration – Alkalmazástulajdonságok. | Nem |
getDebugInfo | Azt határozza meg, hogy a Spark-naplófájlok a sparkJobLinkedService által megadott HDInsight-fürt (vagy) által használt Azure-tárolóba legyenek másolva. Engedélyezett értékek: Nincs, Mindig vagy Hiba. Alapértelmezett érték: Nincs. | Nem |
Mappastruktúra
A Spark-feladatok bővíthetőbbek, mint a Pig/Hive feladatok. Spark-feladatokhoz több függőséget is megadhat, például jar-csomagokat (a Java CLASSPATH-ban), a Python-fájlokat (a PYTHONPATH-on helyezve) és minden más fájlt.
Hozza létre a következő mappastruktúrát a HDInsight társított szolgáltatás által hivatkozott Azure Blob Storage-ban. Ezután töltse fel a függő fájlokat a megfelelő almappákba a entryFilePath által képviselt gyökérmappában. Például töltse fel a Python-fájlokat a pyFiles almappába, a jar-fájlokat pedig a gyökérmappa Jars almappájába. Futásidőben a szolgáltatás a következő mappastruktúrát várja az Azure Blob Storage-ban:
Elérési út | Leírás | Kötelező | Típus |
---|---|---|---|
. (gyökér) |
A Spark-feladat gyökérútvonala a társított tárolószolgáltatásban | Igen | Mappa |
<felhasználó által definiált > | A Spark-feladat belépési fájljára mutató elérési út | Igen | Fájl |
./Tégelyek | A mappa alatti összes fájl feltöltése és elhelyezése a fürt Java-osztályútvonalán | Nem | Mappa |
./pyFiles | A mappa alatt lévő összes fájl feltöltése és elhelyezése a fürt PYTHONPATH-ján | Nem | Mappa |
./Fájlokat | A mappa alatti összes fájl feltöltése és elhelyezése a végrehajtó munkakönyvtárában | Nem | Mappa |
./levéltár | A mappa összes fájlja tömörítetlen | Nem | Mappa |
./Naplók | A Spark-fürt naplóit tartalmazó mappa. | Nem | Mappa |
Íme egy példa egy tárolóra, amely két Spark-feladatfájlt tartalmaz az Azure Blob Storage-ban a HDInsight társított szolgáltatás által hivatkozott hivatkozással.
SparkJob1
main.jar
files
input1.txt
input2.txt
jars
package1.jar
package2.jar
logs
archives
pyFiles
SparkJob2
main.py
pyFiles
scrip1.py
script2.py
logs
archives
jars
files
Kapcsolódó tartalom
Tekintse meg az alábbi cikkeket, amelyekből megtudhatja, hogyan alakíthat át adatokat más módokon: