Hadoop的woldcount终于好使了

前几天偶然在学校学长那里买了一本Hadoop的书,于是想学习一下Hadoop,安装了好久的Cygwin64,再配置hadoop,比较费劲(操作能力啊有待提高),但是一地个wordcount成功运行出来了,还是比价高兴的。

首先格式化namenode

$ bin/hadoop namenode -format

然后启动hadoop

$ bin/start-all.sh

在hdfs下建立输入文件夹

$ bin/hadoop fs -mkdir input

查看建立文件夹是否成功

$ bin/hadoop fs -ls

drwxr-xr-x   - anshengqi supergroup          0 2014-06-29 19:27 /user/anshengqi/input

此处有点疑问,为何在/user/anshengqi下找不到input文件夹?

在本地文件夹(如当前目录下)新建两个文件a.txt,b.txt。

{echo "Hello World!">a.txt;echo “Hello Hadoop”>b.txt};

上传上面建立的两个文件到input问件夹下:

$ bin/hadoop fs -put a.txt input,但是此时有错:XXXX could only be replicated to 0 nodes, instead of 1

这个问题是由于没有添加节点的原因,也就是说需要先启动namenode,再启动datanode,然后启动jobtracker和tasktracker。这样就不会存在这个问题了。

$ bin/hadoop-daemon.sh start namenode

$ bin/hadoop-daemon.sh start datanode

$ bin/hadoop-daemon.sh start jobtracker

$ bin/hadoop-daemon.sh start tasktracker

然后可以上传文件。

$ bin/hadoop fs -put a.txt input

查看是否上传成功?

$ bin/hadoop fs -ls input

Found 2 items
-rw-r--r--   1 anshengqi supergroup         12 2014-06-29 19:34 /user/anshengqi/input/a.txt
-rw-r--r--   1 anshengqi supergroup         13 2014-06-29 19:35 /user/anshengqi/input/b.txt

上传成功!

运行worldcount程序例子:

14/06/29 19:39:27 INFO mapreduce.Job: Running job: job_201406291926_0001
14/06/29 19:39:28 INFO mapreduce.Job:  map 0% reduce 0%
14/06/29 19:39:46 INFO mapreduce.Job:  map 50% reduce 0%
14/06/29 19:39:49 INFO mapreduce.Job:  map 100% reduce 0%
14/06/29 19:39:55 INFO mapreduce.Job:  map 100% reduce 100%

....

查看结果:

$ bin/hadoop fs -cat output/*

Hadoop  1
Hello   2
World   1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值