通过 SSH 将 MapReduce 与 HDInsight 上的 Apache Hadoop 配合使用
了解如何从安全外壳 (SSH) 将 MapReduce 作业提交到 HDInsight。
注意
如果已熟悉如何使用基于 Linux 的 Apache Hadoop 服务器,但刚接触 HDInsight,请参阅基于 Linux 的 HDInsight 提示。
先决条件
HDInsight 中的 Apache Hadoop 群集。 请参阅使用 Azure 门户创建 Apache Hadoop 群集。
使用 Hadoop 命令
使用 ssh 命令连接到群集。 编辑以下命令,将 CLUSTERNAME 替换为群集的名称,然后输入该命令:
ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.cn
连接到 HDInsight 群集后,使用以下命令启动 MapReduce 作业:
yarn jar /usr/hdp/current/hadoop-mapreduce-client/hadoop-mapreduce-examples.jar wordcount /example/data/gutenberg/davinci.txt /example/data/WordCountOutput
此命令启动
hadoop-mapreduce-examples.jar
文件中包含的wordcount
类。 它使用/example/data/gutenberg/davinci.txt
文档作为输入,并将输出存储在/example/data/WordCountOutput
中。注意
有关此 MapReduce 作业和示例数据的详细信息,请参阅在 Apache Hadoop on HDInsight 中使用 MapReduce。
作业在处理时提供详细信息,并在完成时返回类似于以下文本的信息:
File Input Format Counters Bytes Read=1395666 File Output Format Counters Bytes Written=337623
作业完成后,使用以下命令列出输出文件:
hdfs dfs -ls /example/data/WordCountOutput
此命令显示两个文件(
_SUCCESS
和part-r-00000
)。part-r-00000
文件包含此作业的输出。注意
某些 MapReduce 作业可能会将结果拆分成多个 part-r-##### 文件。 如果是这样,请使用 ##### 后缀指示文件的顺序。
若要查看输出,请使用以下命令:
hdfs dfs -cat /example/data/WordCountOutput/part-r-00000
此命令会显示 wasbs://example/data/gutenberg/davinci.txt 文件中包含的单词以及每个单词出现的次数的列表。 以下文本是文件中所含数据的示例:
wreathed 3 wreathing 1 wreaths 1 wrecked 3 wrenching 1 wretched 6 wriggling 1
后续步骤
如你所见,Hadoop 命令提供简单的方法让你在 HDInsight 群集上运行 MapReduce 作业,并查看作业输出。 有关 HDInsight 上的 Hadoop 的其他使用方法的信息: