Hadoop大数据教程:基于Pipes实现作业提交
Hadoop大数据教程:基于Pipes实现作业提交,在提交Hadoop Pipes作业之前首先需要将编译好的Pipes可执行程序上传到HDFS上。例如,我们将编译好的词频统计程序wordcount-simple上传到HDFS上的/user/nuoline/wordcount/bin目录下,如果wordcount-simple可执行程序就在当前目录下,则使用以下命令:
Hadoop fs -put wordcount-simple /user/nuoline/wordcount/bin
然后使用Hadoop Pipes命令提交作业到Hadoop集群,提交命令如下:
Hadoop pipes \
-D Hadoop.pipes.java.recordreader=true \
-D Hadoop.pipes.java.recordwriter=true \
-D MapRed.job.name= wordcount \
-input /user/nuoline/wordcount/test_input \
-output /user/nuoline/wordcount /test_output \
-program /user/nuoline/wordcount/bin/wordcount-simple
Hadoop Pipes命令的参数说明,如表2-2所示。
当然,如果用户需要自定义的Hadoop参数很多,还可以直接写成xml格式的配置文件,然后通过conf参数选项进行指定。例如可以在本地当前目录下建立一个wordcount_conf.xml文件,在此文件中指定相关Hadoop参数,执行代码如下:
<?xml version=
"1.0"
?>
<conf?iguration>
<property>
// Set the binary path on HDFS
<name>Hadoop.pipes.executable</name>
<value>/user/nuoline/wordcount/bin/wordcount-simple</value>
</property>
<property>
<name>Hadoop.pipes.java.recordreader</name>
<value>
true
</value>
</property>
<property>
<name>Hadoop.pipes.java.recordwriter</name>
<value>
true
</value>
</property>
</conf?iguration>
然后通过Pipes命令的conf参数指定这个配置文件一起提交作业,执行命令如下:
hadoop pipes \
-conf /wordcount_conf.xml
-input /user/nuoline/wordcount/test_input
-output /user/nuoline/wordcount /test_output
-
标签错误:<!-- #Label#
labelId=20160707140604
moduleId=1
classId=12231768634
orderby=2
fields=url,title,u_info
attribute=
datatypeId=22192428132
recordCount=3
pageSize=
<htmlTemplate><dt><img src="/images/index_26${index}.jpg" width="100" height="62" /><a href="$url" title="${title}">${title}</a><span>${api.left(u_info,60)}</span></dt></htmlTemplate>
-->
- 我要参加技术沙龙