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

用 Hadoop 进行分布式数据处理,第 3 部分: 应用程序开发

 2010-08-11 00:00:00 来源:WEB开发网   
核心提示: #echo"Hadoopisanimplementationofthemapreduceframeworkfor"\"distributedprocessingoflargedatasets.">input#通过单词输入,现在您可以测试您的 mapp

# echo "Hadoop is an implementation of the map reduce framework for " \ 
 "distributed processing of large data sets." > input 
# 

通过单词输入,现在您可以测试您的 mapper 脚本,如清单 7 所示。回想此脚本简单地将输入标记到键值对,此处每个值都将是 1(非惟一输入)。

清单 7. 测试 mapper 脚本

# cat input | ruby map.rb 
Hadoop 1 
is 1 
an 1 
implementation 1 
of 1 
the 1 
map 1 
reduce 1 
framework 1 
for 1 
distributed 1 
processing 1 
of 1 
large 1 
data 1 
sets. 1 
# 

到目前为止,一切都很顺利。现在,在原始流格式中将整个应用程序一起调出。在清单 8 中,通过 map 脚本传递您的输入、排序输出(可选步骤)、然后通过 reduce 脚本传递由此产生的中间数据。

清单 8. 使用 Linux 管道的简单 MapReduce

# cat input | ruby map.rb | sort | ruby reduce.rb 
large 1 
of 2 
framework 1 
distributed 1 
data 1 
an 1 
the 1 
reduce 1 
map 1 
sets. 1 
Hadoop 1 
implementation 1 
for 1 
processing 1 
is 1 
# 

使用 Hadoop 的 Ruby

在 shell 环境中您的 map 和 reduce 脚本按预期工作,通过 Hadoop 将它们放入测试中。我将会跳过 Hadoop 安装任务(参考本系列的 用 Hadoop 进行分布式数据处理,第 1 部分:入门 或 用 Hadoop 进行分布式数据处理,第 2 部分:进阶 以便建立 Hadoop 并使其运行)。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:Hadoop 进行 分布式

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