您的位置:首页 > 运维架构

(三)配置hadoop-----------运行wordcount例子

2012-06-29 12:32 260 查看
本文继

(一)配置hadoop-------vm虚拟机中安装CentOS5.5,并且安装和配置jdk1.6

(二)配置hadoop-------安装配置hadoop并且设置ssh

这两张文章之后:

1、usr/java/hadoop/hadoop-0.20.0文件夹下新建一个文件夹取名为input(名字随便啦),当然,可以通过两种方式来新建,一种是直接鼠标右键新建,另一种是使用命令提示符

输入cd usr/java/hadoop/hadoop-0.20.0进入到hadoop-0.20.0文件夹下,执行命令:mkdir input(文件夹名)此时已经存在了input文件夹。

cd 进入到input文件夹中,新建文件,命名为test(随便啦):输入命令:echo "hello world ">test.txt

此时,input文件夹中有一个名为test的txt文档,里面的内容为hello world。

2、将input文件夹上传到hdfs文件系统中,并且命名为in(名字随便啦),然后新建数据输出目录out:

在usr/java/hadoop/hadoop-0.20.0文件夹下,输入命令:bin/hadoop dfs -put input in

bin/hadoop jar hadoop-0.20.0-examples.jar wordcount in out

3、查看结果:

在usr/java/hadoop/hadoop-0.20.0文件夹下,输入命令:bin/hadoop dfs -cat out/*

终端会输出:

hello 1

world 1

cat: Source must be a file

4、输出文件从hadoop分布式文件系统复制到本地文件系统中查看,指令及运行结果如下:

在usr/java/hadoop/hadoop-0.20.0文件夹下,输入命令:bin/hadoop dfs -get out output

cat output/*

终端会输出:

cat:output_logs:Is a directory

hello 1

world 1

可能遇到的问题:

hadoop报错 could only be replicated to 0 nodes,instead of 1:

昨晚还运行的好好的,但是今天在将input文件夹上传到hdfs系统中报了这个错误,后来上网查看,说是将tmp文件夹下的东西全部删除就OK了,尝试了一下,搞定!

还有一种需求就是要将hdfs系统中的某个文件删除,删除的命令是:在usr/java/hadoop/hadoop-0.20.0文件夹下,输入:bin/hadoop fs -rmr 文件名(直接加文件名)

查看hdfs所有文件列表的命令是:在usr/java/hadoop/hadoop-0.20.0文件夹下,输入:bin/hadoop dfs -ls



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: