通过远程桌面在 HDInsight 上的 Hadoop 中使用 MapReduce

本文介绍如何使用远程桌面连接到 HDInsight 群集上的 Hadoop,并使用 Hadoop 命令运行 MapReduce 作业。

Note

在 Azure 中国区,HDInsight Linux 仅支持 3.5 或更高版本。 在 Azure 中国区无法创建 HDInsight Linux 3.2、3.3 和 3.4。 但是,可以通过 HDInsight 模拟器使用这些版本。

Important

远程桌面只能在基于 Windows 的 HDInsight 群集上使用。 Linux 是在 HDInsight 3.4 版或更高版本上使用的唯一操作系统。 有关详细信息,请参阅 HDInsight 在 Windows 上停用

有关 HDInsight 3.4 或更高版本,请参阅将 MapReduce 与 SSH 配合使用,了解如何连接到 HDInsight 群集以及如何运行 MapReduce 作业。

先决条件

要完成本文中的步骤,需要:

  • 基于 Windows 的 HDInsight(HDInsight 上的 Hadoop)群集
  • 运行 Windows 10、Windows 8 或 Windows 7 的客户端计算机

使用远程桌面进行连接

为 HDInsight 群集启用远程桌面,然后根据使用 RDP 连接到 HDInsight 群集中的说明连接到该群集。

使用 Hadoop 命令

连接到 HDInsight 群集的桌面之后,请按照以下步骤,使用 Hadoop 命令运行 MapReduce 作业:

  1. 从 HDInsight 桌面启动“Hadoop 命令行”。 这将在 c:\apps\dist\hadoop-<version number> 目录中打开新的命令提示符。

    Note

    Hadoop 更新时,版本号也会发生变化。 HADOOP_HOME 环境变量可用于查找路径。 例如,cd %HADOOP_HOME% 会将目录更改为 Hadoop 目录,而不需要你知道版本号。

  2. 若要使用 Hadoop 命令运行示例 MapReduce 作业,请使用以下命令:

     hadoop jar hadoop-mapreduce-examples.jar wordcount wasb:///example/data/gutenberg/davinci.txt wasb:///example/data/WordCountOutput
    

    这将启动 wordcount 类(包含在当前目录中的 hadoop-mapreduce-examples.jar 文件内)。 作为输入,它使用 wasbs://example/data/gutenberg/davinci.txt 文档,输出的存储位置:wasbs:///example/data/WordCountOutput。

    Note

    有关此 MapReduce 作业和示例数据的详细信息,请参阅在 HDInsight Hadoop 中使用 MapReduce

  3. 作业在处理时提供详细信息,并在完成时返回如下信息:

     File Input Format Counters
     Bytes Read=1395666
     File Output Format Counters
     Bytes Written=337623
    
  4. 作业完成之后,使用以下命令行列出存储在 wasbs://example/data/WordCountOutput 的输出文件:

     hadoop fs -ls wasb:///example/data/WordCountOutput
    

    这应会显示两个文件:_SUCCESSpart-r-00000part-r-00000 文件包含此作业的输出。

    Note

    某些 MapReduce 作业可能会将结果拆分成多个 part-r-##### 文件。 如果是这样,请使用 ##### 后缀指示文件的顺序。

  5. 若要查看输出,请使用以下命令:

     hadoop fs -cat wasb:///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 中的 MapReduce 作业的一般信息:

有关 HDInsight 上 Hadoop 的其他使用方法的信息: