Hadoop 伪分布式下的 wordcount 示例

hadoop
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。数据处理中如果Rpython处理不了的大数据可以通过Hadoop实现。

首先安装虚拟机并配置Hadoop

安装虚拟机VMware Workstation Pro
手把手教你在VMware虚拟机中安装Ubuntu14.04系统
Ubuntu16.04下Hadoop的本地安装与配置

cd至hadoop的安装路径,并开启namenodedatanode

1
$ sbin/start-dfs.sh

输入jps后出现以下情况:

1
2
3
4
5
lee@lee-virtual-machine:~/usr/local/hadoop$ jps
4678 SecondaryNameNode
4247 NameNode
4798 Jps
4414 DataNode

启动资源管理器

1
$ sbin/start-yarn.sh

出现以下情况为正常:

1
2
3
4
5
6
7
lee@lee-virtual-machine:~/usr/local/hadoop$ jps
5348 Jps
4852 ResourceManager
4678 SecondaryNameNode
4247 NameNode
5015 NodeManager
4414 DataNode

运行 wordcount示例

  • 新建文件夹

    1
    2
    $ hadoop fs -mkdir /user
    $ hadoop fs -mkdir /user/root
  • 查看文件夹权限

    1
    $ hadoop fs -ls -d /user/root

http://localhost:8088/cluster访问集群资源管理器,如图:
集群资源管理器

  • 新建一个txt文件(路径为/home/lee/usr/local/file/),内容如下:

    1
    2
    3
    4
    hello world
    hello tom
    hello jake
    fuck tom
  • 上传文件到客户端机器

    1
    $ hadoop fs -put /home/lee/usr/local/file/test.txt /user/root/test.txt
  • 找到MapReduce Examples的jar包(路径为/home/lee/usr/local/),并运行单词计数任务

    1
    $ hadoop jar /home/lee/usr/local/hadoop-mapreduce-examples-2.9.1.jar wordcount /user/root/test.txt /user/root/test_out

部分运行结果:
mapreduce部分结果

  • 查看结果
    1
    $ hadoop fs -cat /user/root/test_out/part-r-00000
1
2
3
4
5
fuck	1
hello 3
jake 1
tom 2
world 1

任务结束,停止HDFS和YARN

1
2
$ sbin/stop-dfs.sh
$ sbin/stop-yarn.sh

推荐网站

linux下安装mysql
VMWare如何实现主机与虚拟机的文件共享与传输

-------------本文结束感谢您的阅读-------------