MapReduce分布式计算测试
1.统计文本单词数量
1.1.查看当前hdfs分布式系统存储内容
[root@hdfs-master hadoop]# hdfs dfs -ls -R /
drwxr-xr-x - root supergroup 0 2014-09-15 09:05 /test
-rw-r--r-- 2 root supergroup 4 2014-09-15 09:05 /test/aa.txt
-rw-r--r-- 2 root supergroup 4 2014-09-12 21:58 /test/bb.txt
1.2.在本地建立测试文件为count.txt
[root@hdfs-master soft]# touch count.txt
[root@hdfs-master soft]# ls
count.txt
1.3.在count.txt输入测试内容
[root@hdfs-master soft]# cat count.txt
hello world
hello hadoop
hello python
hadoop hdfs mapreduce
1.4.在hdfs分布式系统上建立测试目录/mapreduce/input
[root@hdfs-master soft]# hdfs dfs -mkdir -p /mapreduce/input
1.5.再次查看当前hdfs分布式系统目录是否成功
[root@hdfs-master soft]# hdfs dfs -ls -R /
drwxr-xr-x - root supergroup 0 2014-09-15 14:24 /mapreduce
drwxr-xr-x - root supergroup 0 2014-09-15 14:24 /mapreduce/input
drwxr-xr-x - root supergroup 0 2014-09-15 09:05 /test
-rw-r--r-- 2 root supergroup 4 2014-09-15 09:05 /test/aa.txt
-rw-r--r-- 2 root supergroup 4 2014-09-12 21:58 /test/bb.txt
1.6.上传本地测试文件count.txt 到hdfs分布式存储/mapreduce/input目录下
[root@hdfs-master soft]# hdfs dfs -put count.txt /mapreduce/input
1.7.检查count.txt文件是否上传成功
[root@hdfs-master soft]# hdfs dfs -ls /mapreduce/input
-rw-r--r-- 2 root supergroup 60 2014-09-15 14:27 /mapreduce/input/count.txt
1.8.通过mapreduce统计/mapreduce/input/count.txt单词数量
[root@hdfs-master soft]# hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.0.jar wordcount /mapreduce/input/count.txt /mapreduce/output
1.9.查看统计数量的结果目录为/mapreduce/output
[root@hdfs-master soft]# hdfs dfs -ls -R /mapreduce/output
-rw-r--r-- 2 root supergroup 0 2014-09-15 14:30 /mapreduce/output/_SUCCESS
-rw-r--r-- 2 root supergroup 53 2014-09-15 14:30 /mapreduce/output/part-r-00000
1.10查看真正的单词数量文件为/mapreduce/output/part-r-00000
[root@hdfs-master soft]# hdfs dfs -cat /mapreduce/output/part-r-00000
hadoop 2
hdfs 1
hello 3
mapreduce 1
python 1
world 1
2.通过shell脚本分布式搜索给定的内容
2.1建立测试文件file01和file02
[root@hdfs-master soft]# cat file01
hello world bye world
[root@hdfs-master soft]# cat file02
hello hadoop bye hadoop
2.2上传测试文件到hdfs分布式存储
[root@hdfs-master soft]#hdfs dfs -put file0* /mapreduce/input
2.3查看上传文件是否成功
[root@hdfs-master soft]# hdfs dfs -ls /mapreduce/input
-rw-r--r-- 2 root supergroup 22 2014-09-15 14:42 /mapreduce/input/file01
-rw-r--r-- 2 root supergroup 24 2014-09-15 14:42 /mapreduce/input/file02
2.4编写shell脚本搜索带有hadoop关键字
[root@hdfs-master soft]# cat reduce.sh
grep hadoop
2.5执行分布式计算
[root@hdfs-master soft]#hadoop jar /usr/local/hadoop/share/hadoop/tools/lib/hadoop-streaming-2.4.0.jar -input /mapreduce/input/ -output /mapreduce/output -mapper /bin/cat -reducer /root/soft/reduce.sh -file /root/soft/reduce.sh
2.6查看搜索结果文件/mapreduce/output/part-00000
[root@hdfs-master soft]# hdfs dfs -cat /mapreduce/output/part-00000
hello hadoop bye hadoop
转载于:https://blog.51cto.com/azhuang/1552919