《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作业的统计信息。

相关文章
|
3月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
212 6
|
3月前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
101 4
|
3月前
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
48 3
|
3月前
|
分布式计算 Hadoop Shell
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
71 3
|
3月前
|
SQL 存储 分布式计算
Hadoop-16-Hive HiveServer2 HS2 允许客户端远程执行HiveHQL HCatalog 集群规划 实机配置运行
Hadoop-16-Hive HiveServer2 HS2 允许客户端远程执行HiveHQL HCatalog 集群规划 实机配置运行
72 3
|
3月前
|
SQL 分布式计算 Hadoop
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
107 3
|
3月前
|
分布式计算 资源调度 Hadoop
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
Hadoop-10-HDFS集群 Java实现MapReduce WordCount计算 Hadoop序列化 编写Mapper和Reducer和Driver 附带POM 详细代码 图文等内容
142 3
|
3月前
Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示(二)
Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示(二)
55 3
|
3月前
|
SQL 分布式计算 Hadoop
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
Hadoop-19 Flume Agent批量采集数据到HDFS集群 监听Hive的日志 操作则把记录写入到HDFS 方便后续分析
65 2
|
3月前
|
SQL 存储 数据管理
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
78 2
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等