《Hadoop MapReduce实战手册》一1.9 在分布式集群环境中运行WordCount程序

简介:

本节书摘来异步社区《Hadoop MapReduce实战手册》一书中的第1章,第1.9节,作者: 【美】Srinath Perera , Thilina Gunarathne 译者: 杨卓荦 责编: 杨海玲,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.9 在分布式集群环境中运行WordCount程序

Hadoop MapReduce实战手册
本节将描述如何在分布式集群中运行作业。

准备工作
启动Hadoop集群。

操作步骤
现在让我们在分布式的Hadoop环境中运行WordCount示例程序。

  1. 把你的Hadoop发行版目录的README.txt文件复制到HDFS文件系统的/data/input1位置,作为我们前一节中编写的WordCountMapReduce示例的输入数据。
>bin/hadoopdfs -mkdir /data/
>bin/hadoopdfs -mkdir /data/input1
>bin/hadoopdfs -put README.txt /data/input1/README.txt
>bin/hadoopdfs -ls /data/input1

Found 1 items
-rw-r--r-- 1 srinathsupergroup      1366 2012-04-09 08:59 /
data/input1/README.txt
  1. 现在,让我们在HADOOP_HOME目录下运行WordCount示例。
>bin/hadoop jar hadoop-examples-1.0.0.jar wordcount /data/input1/
data/output1

12/04/09 09:04:25 INFO input.FileInputFormat: Total input paths to 
process : 1
12/04/09 09:04:26 INFO mapred.JobClient: Running job:
job_201204090847_0001
12/04/09 09:04:27 INFO mapred.JobClient: map 0% reduce 0%
12/04/09 09:04:42 INFO mapred.JobClient: map 100% reduce 0%
12/04/09 09:04:54 INFO mapred.JobClient: map 100% reduce 100%
12/04/09 09:04:59 INFO mapred.JobClient: Job complete:
job_201204090847_0001
...
  1. 运行下面的命令可列出输出目录的内容,并查看运行结果。
>bin/hadoopdfs -ls /data/output1

Found 3 items
-rw-r--r-- 1 srinathsupergroup   0 2012-04-09 09:04 /
data/output1/_SUCCESS
drwxr-xr-x - srinathsupergroup   0 2012-04-09 09:04 /
data/output1/_logs
-rw-r--r-- 1 srinathsupergroup 1306 2012-04-09 09:04 /
data/output1/part-r-00000

>bin/hadoopdfs -cat /data/output1/*

(BIS), 1
(ECCN) 1
(TSU) 1
(see 1
5D002.C.1, 1
740.13) 1

工作原理
分布式环境的Hadoop作业提交方式与本地安装的Hadoop作业提交方式相似,如1.3节所描述的那样。然而,有两点主要的不同。

首先,Hadoop将作业的输入数据和作业产生的输出数据都存储在HDFS文件系统中。因此,我们使用第1步将输入文件存储在HDFS文件系统中,使用第3步从HDFS文件系统中读取输出文件。

其次,提交作业时,本地Hadoop安装模式将作业放在本地JVM上执行。然而,分布式集群将作业提交给JobTracker,并且使用分布式Hadoop集群中的节点执行该作业。

更多参考
可以通过HDFS监控UI查看WordCount应用程序的结果,如1.6节所描述的那样。同样,也可以像1.10节介绍的那样查看关于WordCount作业的统计信息。

相关文章
|
分布式计算 Hadoop
使用Hadoop ToolRunner 运行wordcount demo
使用Hadoop ToolRunner 运行wordcount demo
147 0
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
375 3
|
分布式计算 资源调度 Hadoop
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
Hadoop-05-Hadoop集群 集群WordCount 超详细 真正的分布式计算 上传HDFS MapReduce计算 YRAN查看任务 上传计算下载查看
294 1
|
缓存 分布式计算 Java
详细解读MapReduce框架中的分布式缓存
【8月更文挑战第31天】
363 2
|
存储 分布式计算 算法
探索Hadoop的三种运行模式:单机模式、伪分布式模式和完全分布式模式
在配置Hadoop集群之前,了解这三种模式的特点、适用场景和配置差异是非常重要的。这有助于用户根据个人需求和资源情况,选择最适合自己的Hadoop运行模式。在最初的学习和开发阶段,单机模式和伪分布式模式能为用户提供便利和成本效益。进而,当用户要处理大规模数据集时,完全分布式模式将是理想的选择。
1170 2
|
分布式计算 Hadoop Java
Hadoop_MapReduce中的WordCount运行详解
MapReduce的WordCount程序在分布式系统中计算大数据集中单词出现的频率时,提供了一个可以复用和可伸缩的解决方案。它体现了MapReduce编程模型的强大之处:简单、可靠且将任务自动分布到一个集群中去执行。它首先运行一系列的Map任务来处理原始数据,然后通过Shuffle和Sort机制来组织结果,最后通过运行Reduce任务来完成最终计算。因此,即便数据量非常大,通过该模型也可以高效地进行处理。
522 1
|
分布式计算 资源调度 Hadoop
在YARN集群上运行部署MapReduce分布式计算框架
主要介绍了如何在YARN集群上配置和运行MapReduce分布式计算框架,包括准备数据、运行MapReduce任务、查看任务日志,并启动HistoryServer服务以便于日志查看。
318 0
|
分布式计算 Hadoop Java
运行Hadoop自带的wordcount单词统计程序
运行Hadoop自带的wordcount单词统计程序
710 3
|
分布式计算 资源调度 Hadoop
MapReduce分布式编程
MapReduce分布式编程
【免费】基于ADMM算法的多微网电能交互分布式运行策略(matlab代码)
【免费】基于ADMM算法的多微网电能交互分布式运行策略(matlab代码)