Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Azure Data Factory
Azure Synapse Analytics
Tipp
Data Factory in Microsoft Fabric ist die nächste Generation von Azure Data Factory mit einer einfacheren Architektur, integrierter KI und neuen Features. Wenn Sie mit der Datenintegration noch nicht vertraut sind, beginnen Sie mit Fabric Data Factory. Vorhandene ADF-Workloads können auf Fabric aktualisiert werden, um auf neue Funktionen in der Datenwissenschaft, Echtzeitanalysen und Berichterstellung zuzugreifen.
Die HDInsight MapReduce-Aktivität in einer Azure Data Factory- oder Synapse Analytics-Pipeline ruft ein MapReduce-Programm für Ihren eigenen oder bedarfsgesteuerten HDInsight-Cluster auf. Dieser Artikel baut auf dem Artikel zu Datentransformationsaktivitäten auf, der eine allgemeine Übersicht über die Datentransformation und die unterstützten Transformationsaktivitäten bietet.
Weitere Informationen finden Sie in den Einführungsartikeln für Azure Data Factory und Synapse Analytics, und führen Sie das Lernprogramm aus: Tutorial: Transformieren von Daten bevor Sie diesen Artikel lesen.
Weitere Informationen zum Ausführen von Pig-/Hive-Skripts in einem HDInsight-Cluster über eine Pipeline mithilfe von Pig-/Hive-HDInsight-Aktivitäten finden Sie unter Pig und Hive.
Hinzufügen einer HDInsight MapReduce-Aktivität zu einer Pipeline mit Benutzeroberfläche
Führen Sie die folgenden Schritte aus, um eine HDInsight-MapReduce-Aktivität in einer Pipeline zu verwenden:
Suchen Sie im Bereich mit den Pipelineaktivitäten nach MapReduce, und ziehen Sie eine MapReduce-Aktivität in den Pipelinecanvas.
Wählen Sie die neue MapReduce-Aktivität auf der Leinwand aus, wenn sie noch nicht ausgewählt ist.
Wählen Sie die Registerkarte HDI-Cluster aus, um einen neuen verknüpften Dienst für einen HDInsight-Cluster auszuwählen oder zu erstellen, der zum Ausführen der MapReduce-Aktivität verwendet wird.
Wählen Sie die Registerkarte Jar aus, um einen neuen jar-verknüpften Dienst mit einem Azure Storage Konto auszuwählen oder zu erstellen, das Ihr Skript hosten soll. Geben Sie einen Klassennamen, der dort ausgeführt werden soll, und einen Dateipfad innerhalb des Speicherorts an. Sie können auch erweiterte Details konfigurieren, z. B. einen JAR-Bibliotheksspeicherort, eine Debugkonfiguration sowie Argumente und Parameter, die an das Skript übergeben werden sollen.
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"
}
}
}
Syntaxdetails
| Eigenschaft | Beschreibung | Erforderlich |
|---|---|---|
| Name | Der Name der Aktivität | Ja |
| Beschreibung | Ein Text, der beschreibt, wofür die Aktivität verwendet wird. | Nein |
| Typ | Für die MapReduce-Aktivität ist der Aktivitätstyp „HDInsightMapReduce“. | Ja |
| verknüpfterDienstname | Verweis auf den HDInsight-Cluster, der als verknüpfter Dienst registriert ist. Weitere Informationen zu diesem verknüpften Dienst finden Sie im Artikel Verknüpfte Compute-Dienste. | Ja |
| className | Name der Klasse, die ausgeführt werden soll | Ja |
| jarLinkedService | Verweisen Sie auf einen Azure Storage verknüpften Dienst, der zum Speichern der Jar-Dateien verwendet wird. Hier werden nur Azure Blob Storage und ADLS Gen2 verknüpften Dienste unterstützt. Wenn Sie diesen verknüpften Dienst nicht angeben, wird der im HDInsight Linked Service definierte Azure Storage verknüpfter Dienst verwendet. | Nein |
| jarFilePath | Geben Sie den Pfad zu den Jar-Dateien an, die in der von jarLinkedService referenzierten Azure Storage gespeichert sind. Der Dateiname ist case-sensitive. | Ja |
| jarlibs | Zeichenfolgenarray des Pfads zu der JAR-Bibliotheksdateien, die in dem Auftrag referenziert wird, der in dem Azure Storage-Speicher gespeichert ist, der in „jarLinkedService“ definiert ist. Der Dateiname ist case-sensitive. | Nein |
| getDebugInfo | Gibt an, wann die Protokolldateien entweder in den von einem HDInsight-Cluster verwendeten Azure-Speicher oder in den durch jarLinkedService angegebenen Speicher kopiert werden. Zulässige Werte: „None“, „Always“ oder „Failure“. Standardwert: Keine. | Nein |
| Argumente | Gibt ein Array von Argumenten für einen Hadoop-Auftrag an. Die Argumente werden als Befehlszeilenargumente an jeden Vorgang übergeben. | Nein |
| defines | Geben Sie Parameter als Schlüssel-Wert-Paare für Verweise innerhalb des Hive-Skripts an. | Nein |
Beispiel
Mit der HDInsight-Aktivität „MapReduce“ können Sie beliebige MapReduce-JAR-Dateien auf einem HDInsight-Cluster ausführen. In der folgenden JSON-Beispieldefinition einer Pipeline wird die HDInsight-Aktivität für die Ausführung einer Mahout-JAR-Datei konfiguriert.
{
"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"
]
}
}
Sie können im Abschnitt arguments Argumente für das MapReduce-Programm angeben. Zur Laufzeit werden ein paar zusätzliche Argumente aus dem MapReduce-Framework angezeigt (z.B.: mapreduce.job.tags). Wenn Sie Ihre Argumente mit den MapReduce-Argumenten unterscheiden möchten, sollten Sie erwägen, sowohl die Option als auch den Wert als Argumente zu verwenden, wie im folgenden Beispiel gezeigt wird („-s“, „--input“, „--output“ usw. sind Optionen, auf die unmittelbar die Werte folgen).
Zugehöriger Inhalt
In den folgenden Artikeln erfahren Sie, wie Daten auf andere Weisen transformiert werden: