一起来玩hadoop

1 使用百度开放研究社区






百度提供了开放研究社区,这里我们可以用一个百度的hadoop资源,就不需要你自己搭建hadoop了,这多爽啊!下面我们来使用使用这个东西。

1.2 打开百度开放研究社区的web Shell






百度提供了一种类似shell的方式来提供交互。


我们在申请账号之后,进入到这个网页去看说明 http://openresearch.baidu.com/activity/platform.jspx 

2 使用百度云平台






百度的这个云平台网址是http://cc-ws.baidu.com,进入web shell之后如下图





图1 web shell


这个可以认为是一个类unix的操作界面吧,不过这里只支持这些命令,下面主要讲讲用这个来进行一些hadoop的经典入门——wordCount

<span style="font-family:times; orphans:0; text-indent:32px; widows:0"><span style="font-size:14px">

</span></span>

<span style="font-family:times; orphans:0; text-indent:32px; widows:0"><span style="font-size:14px">2.1 生成count所需的文件并且上传到百度的hadoop环境</span></span>






由于这个百度自带的upload和download命令有点不好用,所以我用从自己的百度网盘里面搞数据过来,我在我的网盘里面上传了两个文件f1.txt,f2.txt



hello world    #f1.txt






hello programmer    #f2.txt


然后通过命令把文件同步到hdfs上



<pre lang=”shell””>pan -put ./f*.txt ./input
把网盘的两个文件都同步到hdfs目录下的input目录里面


然后使用



hadoop fs -ls ./input

查看,结果如下




图2 结果已同步到hdfs上(涂掉的部分是我的用户名)



##




##
2.2 使用自带的wordcount例子来运行wordcount







百度的云平台有三个全局变量,hadoop命令如下介绍



Hadoop命令
■ hadoop: 用于访问Hadoop的功能,其使用方式与命令行使用hadoop的方式一致。对于普通用户权限,其能够使用的hadoop命令包括hadoop fs,hadoop jar,hadoop job等。相对于hadoop命令的本地文件系统的当前路径即为用户的工作目录。为了访问hadoop系统的某些模块,平台也提供了三个变量可以直接使用,包括:$hadoop_home(hadoop系统的根目录);$hadoop_examples(hadoop-examples-1.0.0.jar的路径),$hadoop_streaming(hadoop-streaming-1.0.0.jar的路径)


我们只需要执行下面的命令就可以统计了



hadoop jar $hadoop_examples wordcount input output

运行结果如下




图三 这个是wordcount运行结果



我们进入output文件夹查看结果







图四 这个是计算出来的结果,结果放在part-r-00000






这下把这些单词统计过来了。


下次准备在本地写一个本地版本的wordcount,然后上传上来玩玩