本文以 hadoop-2.7.1 为例。
下载
hadoop-2.7.1
解压tar.gz
tar zxvf hadoop-2.7.1.tar.gz
查看hadoop版本
./bin/hadoop versi
如果出现Error: JAVA_HOME is not set and could not be found.这说明没有JAVA_HOME环境变量没有配置好
那么我们就需要先配置JAVA_HOME环境变量
方法一:
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-i386
不赞成使用这种方法,因为换个shell,你的设置就无效了,因此这种方法仅仅是临时使用,以后要使用的时候又要重新设置,比较麻烦。
方法二:
修改.bashrc文件
如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bash_profile文件就可以了.
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-i3
立即生效并测试
source ~/.bashrc
echo $JAVA_HOM
然后再次查看hadoop的版本信息
./bin/hadoop version
测试Hadoop是否安装成功
在书本2.3.4节中,如果读者对教材看得不是很明白的话,那么可以用下面的内容来检测是否已经安装成功!
因为教材中使用的主类名程序是grep程序,而不是开头说的wordcount程序,二者是不一样的。
单词计数wordcount是最简单也是最能体现MapReduce思想的程序之一,可以称为MapReduce版”Hello World”,单词计数主要完成功能是:统计一系列文本文件中每个单词出现的次数.
好,现在我们进入检测示例:
创建input目录和output目录
input作为输入目录,output目录作为输出目录
mkdir input
mkdir
在input文件夹中创建两个测试文件file1.txt和file2.txt
cd input
echo "hello world" > file1.txt
echo "hello hadoop"
运行
./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount input outp
ok,那么我们该如何理解上面的执行语句?请看:
./bin/hadoop jar 执行jar命令
share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount所在的jar包
wordcount 程序主类名
input 输入文件夹
output 输出文件夹
查看结果
到output文件夹下,查看结果
cat part-r-00000
可以这样的结果:
hadoop 1
hello 2
world 1