Transformace dat pomocí aktivity Hadoop MapReduce ve službě Azure Data Factory nebo Synapse Analytics

PLATÍ PRO: Azure Data Factory Azure Synapse Analytics

Tip

Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.

Aktivita MAPReduce SLUŽBY HDInsight v kanálu Azure Data Factory nebo Synapse Analytics vyvolá program MapReduce ve vašem vlastním clusteru HDInsight nebo clusteru HDInsight na vyžádání. Tento článek vychází z článku o aktivitách transformace dat, který představuje obecný přehled transformace dat a podporovaných transformačních aktivit.

Další informace najdete v úvodních článcích pro Azure Data Factory a Synapse Analytics a kurz: Kurz: Transformace dat před přečtením tohoto článku.

Podrobnosti o spouštění skriptů Pig/Hive v clusteru HDInsight z kanálu pomocí aktivit Pig a Hive najdete v tématu Pig a Hive .

Přidání aktivity MapReduce SLUŽBY HDInsight do kanálu s uživatelským rozhraním

Pokud chcete pro kanál použít aktivitu MAPReduce SLUŽBY HDInsight, proveďte následující kroky:

  1. Vyhledejte MapReduce v podokně Aktivity kanálu a přetáhněte aktivitu MapReduce na plátno kanálu.

  2. Vyberte novou aktivitu MapReduce na plátně, pokud ještě není vybraná.

  3. Výběrem karty Cluster HDI vyberte nebo vytvořte novou propojenou službu s clusterem HDInsight, který se použije ke spuštění aktivity MapReduce.

    Shows the UI for a MapReduce activity.

  4. Vyberte kartu Jar a vyberte nebo vytvořte novou propojenou službu Jar s účtem Azure Storage, který bude hostovat váš skript. Zadejte název třídy, který se tam má spustit, a cestu k souboru v umístění úložiště. Můžete také nakonfigurovat pokročilé podrobnosti, včetně umístění knihovny Jar, konfigurace ladění a argumentů a parametrů, které se mají předat skriptu.

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

Syntaxe

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

Podrobnosti o syntaxi

Vlastnost Popis Povinní účastníci
name Název aktivity Ano
description Text popisující, k čemu se aktivita používá No
type U aktivity MapReduce je typ aktivity HDinsightMapReduce. Ano
linkedServiceName Odkaz na cluster HDInsight zaregistrovaný jako propojená služba Další informace o této propojené službě najdete v článku o propojených službách Compute. Ano
Classname Název třídy, která se má spustit Ano
jarLinkedService Odkaz na propojenou službu Azure Storage, která se používá k ukládání souborů Jar. Tady jsou podporované jenom propojené služby Azure Blob Storage a ADLS Gen2. Pokud tuto propojenou službu nezadáte, použije se propojená služba Azure Storage definovaná v propojené službě HDInsight. No
jarFilePath Zadejte cestu k souborům Jar uloženým ve službě Azure Storage, na kterou odkazuje jarLinkedService. V názvu souboru se rozlišují malá a velká písmena. Ano
jarlibs Řetězcové pole cesty k souborům knihovny Jar, na které odkazuje úloha uložená ve službě Azure Storage definovaná v jarLinkedService. V názvu souboru se rozlišují malá a velká písmena. No
getDebugInfo Určuje, kdy se soubory protokolu zkopírují do služby Azure Storage používané clusterem HDInsight (nebo) určeným službou jarLinkedService. Povolené hodnoty: Žádné, Vždy nebo Selhání. Výchozí hodnota: Žádný. No
Argumenty Určuje pole argumentů pro úlohu Hadoop. Argumenty se předávají každému úkolu jako argumenty příkazového řádku. No
Definuje Zadejte parametry jako páry klíč/hodnota pro odkazování v rámci skriptu Hive. No

Příklad

Aktivitu MapReduce SLUŽBY HDInsight můžete použít ke spuštění libovolného souboru Jar MapReduce v clusteru HDInsight. V následující ukázkové definici JSON kanálu je aktivita HDInsight nakonfigurovaná tak, aby spustila soubor Mahout JAR.

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

V oddílu argumentů můžete zadat libovolné argumenty pro program MapReduce. Za běhu uvidíte několik dalších argumentů (například mapreduce.job.tags) z architektury MapReduce. Pokud chcete odlišit argumenty s argumenty MapReduce, zvažte použití možnosti i hodnoty jako argumenty, jak je znázorněno v následujícím příkladu (-s,--input,--output atd., jsou možnosti bezprostředně následované jejich hodnotami).

Podívejte se na následující články, které vysvětlují, jak transformovat data jinými způsoby: