Adatok átalakítása Hadoop MapReduce-tevékenység használatával a Azure Data Factory vagy a Synapse Analyticsben

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.

A HDInsight MapReduce-tevékenység egy Azure Data Factory vagy Synapse Analytics pipeline megoldásban meghívja a MapReduce programot a saját vagy az 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.

Ha többet szeretne megtudni, olvassa el a Azure Data Factory és Synapse Analytics bevezető cikkeit, és végezze el a következő oktatóanyagot: Tutorial: adatok átalakítása a cikk elolvasása előtt.

Tekintse meg a Pig és Hive részleteit a Pig/Hive szkriptek HDInsight-fürtön való futtatásáról egy folyamatban a HDInsight Pig és Hive tevékenységek segítségével.

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.

    Megjeleníti a MapReduce-tevékenység felhasználói felületét.

  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 olyan 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.

    Megjeleníti a MapReduce-tevékenység Jar lapjának felhasználói felületét.

Szintaxis

{
    "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

Tulajdonság Leírás Szükséges
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
KapcsoltSzolgáltatásNév Hivatkozás a HDInsight-fürtre, amely regisztrálva van, mint társított szolgáltatás. 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
className 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 Azure Blob Storage és ADLS Gen2 társított szolgáltatások 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 tárolt Jar-fájlok elérési útját. A fájlnév kis- és nagybetűérzékeny. Igen
jarlibs A sztring tömb, amely a jarLinkedService-ben definiált Azure Storage-ban tárolt feladat által hivatkozott Jar-kódtárfájlok elérési útját tartalmazza. A fájlnév kis- és nagybetűérzékeny. Nem
getDebugInfo (a hibakeresési információk lekérése) Azt adja meg, hogy a naplófájlokat mikor másolják az Azure Storage-ba, amelyet a HDInsight-fürt használ, vagy amelyet a jarLinkedService határoz meg. 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: