在命令行下运行第一个hadoop的程序
2014-08-02 15:17
169 查看
先使用hadoop自带的demo,在命令行里运行(摘自http://www.cnblogs.com/zjfstudio/p/3859704.html)
确认已经启动hadoop,然后跑个程序
$mkdir input
$cd input
$echo "hello world">test1.txt
$echo "hello hadoop">test2.txt
$cd ..
$bin/hadoop dfs -put input in
$bin/hadoop jar build/hadoop-0.20.2-examples.jar wordcount in out
$bin/hadoop dfs -cat out/*
解释一下
第1行,容易理解,我们在hadoop文件夹下建了一个input子文件夹;
第2行,进入input文件夹;
第3行,echo是指回显示,可以理解为print, 大于符(>)为重定向,正常echo是显示在屏幕上,而用了重定向后,即内容显示在了text1.txt文件里。那这句话意思是,创建一个test1.txt文件,其内容是"hello world"。 第4行类同;
第5行,回上一级目录
第6行,这里运行了一个hadoop命令, 参数为 dfs –put input in 意思是将input文件夹上传到hadoop文件系统中,并存于目录in中。
第7行,同样是hadoop命令,参数 jar XXX.jar wordcount in out 是指运行jar程序中wordcount类的程序,并传入参数 in out。 in 为输入目录 out 为输出结果目录,两个目录皆为hadoop文件系统中的目录,而并不是当前操作系统目录了。在第7行后,会看到屏幕在刷,是在计算。
第8行,cat是linux常用的命令,是将指定文件中的文本内容输出。 所以这里 cat out/* 是指把out文件夹下所有文件的文本内容输出,同时注意这里是dfs即是在hadoop文件系统中,且这个out正是第7步程序中输出的目录。所以输入该命令后,我们看到了下面的结果:
确认已经启动hadoop,然后跑个程序
$mkdir input
$cd input
$echo "hello world">test1.txt
$echo "hello hadoop">test2.txt
$cd ..
$bin/hadoop dfs -put input in
$bin/hadoop jar build/hadoop-0.20.2-examples.jar wordcount in out
$bin/hadoop dfs -cat out/*
解释一下
第1行,容易理解,我们在hadoop文件夹下建了一个input子文件夹;
第2行,进入input文件夹;
第3行,echo是指回显示,可以理解为print, 大于符(>)为重定向,正常echo是显示在屏幕上,而用了重定向后,即内容显示在了text1.txt文件里。那这句话意思是,创建一个test1.txt文件,其内容是"hello world"。 第4行类同;
第5行,回上一级目录
第6行,这里运行了一个hadoop命令, 参数为 dfs –put input in 意思是将input文件夹上传到hadoop文件系统中,并存于目录in中。
第7行,同样是hadoop命令,参数 jar XXX.jar wordcount in out 是指运行jar程序中wordcount类的程序,并传入参数 in out。 in 为输入目录 out 为输出结果目录,两个目录皆为hadoop文件系统中的目录,而并不是当前操作系统目录了。在第7行后,会看到屏幕在刷,是在计算。
第8行,cat是linux常用的命令,是将指定文件中的文本内容输出。 所以这里 cat out/* 是指把out文件夹下所有文件的文本内容输出,同时注意这里是dfs即是在hadoop文件系统中,且这个out正是第7步程序中输出的目录。所以输入该命令后,我们看到了下面的结果:
相关文章推荐
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
- Ubuntu系统下的Hadoop集群(2)_使用命令行编译打包运行自己的MapReduce程序
- 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.6.0
- Hadoop安装配置、运行第一个WordCount示例程序
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
- 如何用命令行编译、运行第一个java程序(Hello World!)
- 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.4.1
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
- Hadoop的单机伪分布式搭建和运行第一个WordCount程序
- [转载]Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
- 在centos6.6上安装hadoop完全分布式集群并运行第一个程序
- Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序(转)
- 运行第一个hadoop程序
- 用命令行运行hadoop程序WordCount,编译hadoop程序报错
- 命令行运行hadoop实例wordcount程序
- hadoop命令行运行wordcount程序 web端监控不到作业状态
- eclipse下运行第一个hadoop程序
- 使用命令行编译打包运行自己的MapReduce程序 Hadoop2.7.2