WEB开发网
开发学院软件开发Java 用 Hadoop 进行分布式数据处理,第 2 部分: 进阶 阅读

用 Hadoop 进行分布式数据处理,第 2 部分: 进阶

 2010-07-06 00:00:00 来源:WEB开发网   
核心提示: 最后一步是探索输出数据,由于您运行了 wordcount MapReduce 作业,用 Hadoop 进行分布式数据处理,第 2 部分: 进阶(10),结果是一个文件(从已处理映射文件缩减而来),该文件包含一个元组列表,第 3 部分,也就是本 Hadoop 系列的最后一期,表示输入文件中找到的单

最后一步是探索输出数据。由于您运行了 wordcount MapReduce 作业,结果是一个文件(从已处理映射文件缩减而来)。该文件包含一个元组列表,表示输入文件中找到的单词和它们在所有输入文件中出现的次数:

清单 15. 检测 MapReduce 作业的输出

root@master:~# hadoop-0.20 fs -ls output 
Found 2 items 
drwxr-xr-x  - root supergroup     0 2010-05-12 19:04 /user/root/output/_logs 
-rw-r--r--  2 root supergroup   30949 2010-05-12 19:05 /user/root/output/part-r-00000 
root@master:~# hadoop-0.20 fs -cat output/part-r-00000 | head -13 
!= 1 
"Atomic 2 
"Cache 2 
"Control 1 
"Examples 1 
"Has 7 
"Inter-CPU 1 
"LOAD 1 
"LOCK" 1 
"Locking 1 
"Locks 1 
"MMIO 1 
"Pending 5 
root@master:~# 

Web 管理界面

尽管 hadoop-0.20 实用程序的功能极其丰富,但有时使用一个 GUI 会更方便。在执行文件系统检测时,您可以通过 http://master:50070 链接到名称节点,通过 http://master:50030 连接到 jobtracker 。您可以通过名称节点检测 HDFS,如图 5 所示,在这里您检测输入目录(包含输入数据 — 见上面 清单 13)。

图 5. 通过名称节点检测 HDFS
用 Hadoop 进行分布式数据处理,第 2 部分: 进阶

通过 jobtracker,您可以检测运行中或已完成的作业。在图 6 中,您可以看到对最后一个作业的检测(来自 清单 14)。该图展示了作为 Java 存档(JAR)请求的输出发出的各种数据,以及任务的状态和数量。注意,这里执行了两个映射任务(每个输入文件一个映射)和一个缩减任务(用于缩减两个映射输入)。

图 6. 检查一个已完成作业的状态
用 Hadoop 进行分布式数据处理,第 2 部分: 进阶

最后,您可以通过名称节点检查数据节点的状态。名称节点主页确定活动节点和死节点(作为链接)的数量,且允许您进一步检测它们。图 7 所示的页面显示了活动数据节点以及每个节点的统计数据。

图 7. 检查活动数据节点的状态
用 Hadoop 进行分布式数据处理,第 2 部分: 进阶

通过名称节点和 jobtracker Web 界面,可以查看许多其他视图,但出于简洁,只显示该样例集。在名称节点和 jobtracker Web 页面内,您会找到大量链接,从而引导您获取有关 Hadoop 配置和操作的其他信息(包括运行时日志)。

更进一步

在本期中,您了解了如何将一个伪分布式配置从 Cloudera 转化为一个完全分布式配置。寥寥无几的步骤以及 MapReduce 应用程序的一个相同接口,就使 Hadoop 成为一个能实现分布式处理的有用工具。另一个有趣的部分就是 Hadoop 的可伸缩性探讨。通过添加新数据节点(并更新其 XML 文件和 master 中的 slave 文件),您可以轻松伸缩 Hadoop 来进行更高级别的平行处理。第 3 部分,也就是本 Hadoop 系列的最后一期,将探讨如何为 Hadoop 开发一个 MapReduce 应用程序。

上一页  5 6 7 8 9 10 

Tags:Hadoop 进行 分布式

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接