本文继
(一)配置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