Verwenden von MapReduce mit Apache Hadoop in HDInsight über SSH

In diesem Artikel wird erläutert, wie MapReduce-Jobs aus einer Secure Shell-Verbindung (SSH) an HDInsight übermittelt werden können.

Hinweis

Falls Sie bereits mit der Verwendung von Linux-basierten Apache Hadoop-Servern vertraut sind, aber noch keine Erfahrung mit HDInsight haben, finden Sie weitere Informationen unter Tipps zu Linux-basiertem HDInsight.

Voraussetzungen

Ein Apache Hadoop-Cluster in HDInsight. Siehe Erstellen von Apache Hadoop-Clustern im Azure-Portal.

Verwenden von Hadoop-Befehlen

  1. Verwenden Sie einen ssh-Befehl zum Herstellen der Verbindung mit dem Cluster. Bearbeiten Sie den folgenden Befehl, indem Sie CLUSTERNAME durch den Namen Ihres Clusters ersetzen, und geben Sie den Befehl dann ein:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. Nachdem die Verbindung mit dem HDInsight-Cluster hergestellt wurde, verwenden Sie den folgenden Befehl, um einen MapReduce-Auftrag zu starten:

    yarn jar /usr/hdp/current/hadoop-mapreduce-client/hadoop-mapreduce-examples.jar wordcount /example/data/gutenberg/davinci.txt /example/data/WordCountOutput
    

    Dieser Befehl ruft die wordcount-Klasse auf, die sich in der Datei hadoop-mapreduce-examples.jar befindet. Der Befehl verwendet das Dokument /example/data/gutenberg/davinci.txt als Eingabe, und die Ausgabe wird in /example/data/WordCountOutput gespeichert.

    Hinweis

    Weitere Informationen zu diesem MapReduce-Auftrag und die Beispieldaten finden Sie unter Verwenden von MapReduce mit Apache Hadoop in HDInsight.

    Der Auftrag gibt während der Verarbeitung Details aus und gibt ähnliche Informationen wie den folgenden Text zurück, wenn der Auftrag abgeschlossen ist:

    File Input Format Counters
    Bytes Read=1395666
    File Output Format Counters
    Bytes Written=337623
    
  3. Wenn der Auftrag abgeschlossen ist, verwenden Sie den folgenden Befehl zum Auflisten der Ausgabedateien:

    hdfs dfs -ls /example/data/WordCountOutput
    

    Dieser Befehl zeigt die beiden Dateien, _SUCCESS und part-r-00000 an. Die Datei part-r-00000 enthält die Ausgabe für diesen Auftrag.

    Hinweis

    Einige MapReduce-Aufträge teilen die Ergebnisse möglicherweise auf mehrere part-r-##### -Dateien auf. Verwenden Sie in diesem Fall das Suffix "#####", um die Reihenfolge der Dateien anzugeben.

  4. Verwenden Sie den folgenden Befehl, um die Ausgabe anzuzeigen:

    hdfs dfs -cat /example/data/WordCountOutput/part-r-00000
    

    Dieser Befehl zeigt eine Liste mit in der Datei wasbs://example/data/gutenberg/davinci.txt enthaltenen Wörtern und die Häufigkeit ihres jeweiligen Vorkommens an. Im folgenden Text finden Sie ein Beispiel für die in der Datei enthaltenen Daten:

    wreathed        3
    wreathing       1
    wreaths         1
    wrecked         3
    wrenching       1
    wretched        6
    wriggling       1
    

Nächste Schritte

Wie Sie sehen können, bieten Hadoop-Befehle eine einfache Möglichkeit zum Ausführen von MapReduce-Aufträgen in einem HDInsight-Cluster und dem anschließenden Anzeigen der Auftragsausgabe. Informationen zu anderen Möglichkeiten, wie Sie mit Hadoop in HDInsight arbeiten können: