使用伪分布式hadoop进行countword
How to install hadoop 2.7.1 single node cluster ubuntu 14.04(youtube)
1.安装jdk(选择default的版本)
2.ssh连接
3.安装hadoop(2.7.2)并创建namenode和datanode的文件夹
4.配置文件
在~/.bashrc里添加环境变量:
#HADOOP VARIABLES START
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOMEsbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
//export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=/usr/local/hadoop/lib/native"
//我在启动dfs时出现WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable,就改成后面一条
#HADOOP VARIABLES END
①配置core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
②配置hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
③配置mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
④配置yarn-site.xml
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
5.格式化namenode和启动
格式化:hadoop namenode -format
因为设置了环境变量,所以只需要输入start-dfs.sh & start-yarn.sh或者start-all.sh
6.操作hadoop文件系统,并进行wordcount操作
hadoop文件系统的操作是
hadoop fs
首先cd到usr/local/hadoop/下创建test.txt并输入文字
hadoop fs -mkdir /data //在hadoop文件系统下建文件夹data
hadoop fs -put test.txt /data //将文件移动到data下
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar wordcount /data/test.txt /wordcount wordcount为工具名称 /data/test.txt输入路径 /wordcount为输出路径(不用单独创建)
用浏览器在50070端口下进行查看(我的是68.56.132:50070,通过ifconfig查看)
http://localhost:8088 //查看集群运行状态
处理中的截图,处理后就通过各种方式查看。。
下图则是结果
FAQ和我的心得:
我在配置中遇到最多的问题:
1、根据视频配置,处理时一直卡在running job上,cluster里的状态也是一直在accept
于是改成上面的配置
2、使用hadoop fs 时拒绝链接,同样也是配置问题。
3、由于不熟悉linux系统,之前好几次都使用默认用户的root状态编辑,感觉经常出问题,这次新建用户然后赋予权限,感觉要好很多,之后应该注意linux权限问题。
4、速度是挺快的,但好像是通过空格进行分词,所以没有合适的文本下效果不好。。


浙公网安备 33010602011771号