Hadoop单机模式配置

默认情况下,Hadoop被配置成以非分布式模式运行的一个独立Java进程。这对调试非常有帮助。

(只有一个JVM进程,没有分布式,不使用HDFS)

环境:

Java 查看安装教程

Ubuntu13.10(32位/64位均可) 下载

hadoop-2.2.0.tar.gz 更新发布下载 

安装:

在用户主目录新建文件夹hadoop,Hadoop将安装在该目录~/hadoop

Hadoop安装 

wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/core/hadoop-3.2.0/hadoop-3.2.0.tar.gz  

INSTALL_PATH=/opt/soft
TAR_FILE=`pwd`/hadoop-3.2.0.tar.gz 

# 安装
mkdir -p $INSTALL_PATH
tar -xzf $TAR_FILE -C $INSTALL_PATH
HADOOP_FOLDER=`tar -tvzf $TAR_FILE |head -1 |awk -F' ' {'print $6'} |awk -F'/' {'print $1'}`
ln -s $INSTALL_PATH/$HADOOP_FOLDER $INSTALL_PATH/hadoop

# 修改系统环境变量
echo -e '

#Hadoop' >> /etc/profile
echo 'export HADOOP_HOME='$INSTALL_PATH'/hadoop' >> /etc/profile
echo 'export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH' >> /etc/profile

# 测试
source /etc/profile
hadoop version

运行测试 (注:Hadoop刚完成安装不修改配置文件即为单机模式)

 测试一:wordcount

在主文件下新建hadoopTest文件夹,创建in子文件夹,创建任意文本文档内容

cd ~/hadoop/hadoop/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount ~/hadoopTest/in ~/hadoopTest/out

查看结果

cat ~/hadoopTest/out/part-r-00000

hadoop单机运行可以不打包成jar: hadoop 主类名 [输入输出目录等参数]
相比用java运行,使用hadoop命令会自动添加hadoop库文件到classpath

[注意]要实现不打包运行,需要修改环境变量

sudo gedit /etc/profile
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:.

输出命名方式:
map输出:part-m-nnnnn
reduce输出:part-r-nnnnn
其中nnnnn为分块序号,从0开始。
分布式下Map的输出是在硬盘上而不是hdfs,因为它作为中间结果是临时的,一旦写入hdfs就会分布式存储并备份。


example中的样例程序说明

资料:

Hadoop - YDN https://developer.yahoo.com/hadoop/

原文地址:https://www.cnblogs.com/manhua/p/3529928.html