Adatok átalakítása Hadoop MapReduce-tevékenység használatával az Azure Data Factoryben vagy 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!

Az Azure Data Factory vagy a Synapse Analytics-folyamat HDInsight MapReduce-tevékenysége meghívja a MapReduce programot 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.

További információért olvassa el az Azure Data Factory és a Synapse Analytics bevezető cikkeit, és végezze el az oktatóanyagot: Oktatóanyag: adatok átalakítása a cikk elolvasása előtt.

A Pig és a Hive című cikkben részletesen tájékozódhat a Pig/Hive szkriptek HDInsight-fürtön való futtatásáról egy folyamatról a HDInsight Pig és a Hive tevékenységek használatával.

HDInsight MapReduce-tevékenység hozzáadása egy folyamathoz felhasználói felülettel

Ha HDInsight MapReduce-tevékenységet szeretne használni egy folyamathoz, hajtsa végre a következő lépéseket:

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

  2. Válassza ki az új MapReduce-tevékenységet a vásznon, ha még nincs kijelölve.

  3. A HDI-fürt fülre kattintva válasszon vagy hozzon létre egy új társított szolgáltatást egy HDInsight-fürthöz, amely a MapReduce-tevékenység végrehajtásához lesz használva.

    Shows the UI for a MapReduce activity.

  4. Válassza a Jar lapot egy új Jar-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ó osztálynevet és egy fájl elérési útját a tárolóhelyen belül. Speciális részleteket is konfigurálhat, beleértve a Jar libs helyét, a hibakeresési konfigurációt, valamint a szkriptnek továbbítandó argumentumokat és paramétereket.

    Shows the UI for the Jar tab for a MapReduce activity.

Syntax

{
    "name": "Map Reduce Activity",
    "description": "Description",
    "type": "HDInsightMapReduce",
    "linkedServiceName": {
        "referenceName": "MyHDInsightLinkedService",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "className": "org.myorg.SampleClass",
        "jarLinkedService": {
            "referenceName": "MyAzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "jarFilePath": "MyAzureStorage/jars/sample.jar",
        "getDebugInfo": "Failure",
        "arguments": [
            "-SampleHadoopJobArgument1"
        ],
        "defines": {
            "param1": "param1Value"
        }
    }
}

Szintaxis részletei

Property Leírás Required
név A tevékenység neve Igen
leírás A tevékenység használatát leíró szöveg Nem
típus MapReduce-tevékenység esetén a tevékenység típusa HDinsightMapReduce Igen
linkedServiceName Hivatkozás a társított szolgáltatásként regisztrált HDInsight-fürtre. 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
Osztálynév A végrehajtandó osztály neve Igen
jarLinkedService Hivatkozás a Jar-fájlok tárolására használt Azure Storage társított szolgáltatásra. Itt csak az Azure Blob Storage és az ADLS Gen2 társított szolgáltatásai támogatottak. Ha nem adja meg ezt a társított szolgáltatást, a RENDSZER a HDInsight társított szolgáltatásban definiált Azure Storage társított szolgáltatást használja. Nem
jarFilePath Adja meg a jarLinkedService által hivatkozott Azure Storage-ban tárolt Jar-fájlok elérési útját. A fájlnév megkülönbözteti a kis- és nagybetűk nevét. Igen
jarlibs A jarLinkedService-ben definiált Azure Storage-ban tárolt feladat által hivatkozott Jar-kódtárfájlok elérési útjának sztringtömbje. A fájlnév megkülönbözteti a kis- és nagybetűk nevét. Nem
getDebugInfo Megadja, hogy a naplófájlokat a rendszer a jarLinkedService által megadott HDInsight-fürt (vagy) által használt Azure Storage-ba másolja. Engedélyezett értékek: Nincs, Mindig vagy Hiba. Alapértelmezett érték: Nincs. Nem
Érvek Egy Hadoop-feladat argumentumainak tömbje. Az argumentumokat a rendszer parancssori argumentumként továbbítja az egyes tevékenységeknek. Nem
Meghatározza Adja meg a paramétereket kulcs/érték párként a Hive-szkripten belüli hivatkozáshoz. Nem

Példa

A HDInsight MapReduce-tevékenységgel bármilyen MapReduce jar-fájlt futtathat egy HDInsight-fürtön. A folyamat következő JSON-definíciójában a HDInsight-tevékenység egy Mahout JAR-fájl futtatására van konfigurálva.

{
    "name": "MapReduce Activity for Mahout",
    "description": "Custom MapReduce to generate Mahout result",
    "type": "HDInsightMapReduce",
    "linkedServiceName": {
        "referenceName": "MyHDInsightLinkedService",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "className": "org.apache.mahout.cf.taste.hadoop.similarity.item.ItemSimilarityJob",
        "jarLinkedService": {
            "referenceName": "MyStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "jarFilePath": "adfsamples/Mahout/jars/mahout-examples-0.9.0.2.2.7.1-34.jar",
        "arguments": [
            "-s",
            "SIMILARITY_LOGLIKELIHOOD",
            "--input",
            "wasb://adfsamples@spestore.blob.core.windows.net/Mahout/input",
            "--output",
            "wasb://adfsamples@spestore.blob.core.windows.net/Mahout/output/",
            "--maxSimilaritiesPerItem",
            "500",
            "--tempDir",
            "wasb://adfsamples@spestore.blob.core.windows.net/Mahout/temp/mahout"
        ]
    }
}

A MapReduce program argumentumait az argumentumok szakaszban adhatja meg. Futásidőben a MapReduce-keretrendszerből néhány további argumentum (például mapreduce.job.tags) jelenik meg. Ha meg szeretné különböztetni az argumentumokat a MapReduce-argumentumokkal, fontolja meg a beállítás és az érték argumentumként való használatát az alábbi példában látható módon (-s,--input,--output stb., amelyek azonnal követik az értékeiket.

Tekintse meg az alábbi cikkeket, amelyekből megtudhatja, hogyan alakíthat át adatokat más módokon: