Hadoop安装及初探
来源:互联网 发布:听音写谱软件 编辑:程序博客网 时间:2024/06/06 00:18
注:本文只是自己学习Hadoop的笔记,主要用来督促自己坚持学习,如果能对大家有点帮助,对我将是意外的惊喜。我假设您已经对Hadoop有基本了解,至少知道Hadoop是用来干嘛的。
一、Hadoop简介
关于Hadoop的介绍已经很多,在此就不Ctrl+C、Ctrl+V了。这里只说一下,Hadoop项目起初的目的是将Google公司的三大宝GFS、Big Table以及Map-Reduce开源化。目前的Hadoop包含下面几个子项:
Hadoop Common: Hadoop的基础套件,这是必需的
HDFS: Hadoop文件系统,对应GFS
MapReduce: 不用翻译
ZooKeeper: 分布式程序协调服务
与Hadoop相关的项目:
HBase: Hadoop版的Big Table,本来是Hadoop的子项,现在混好了,跟Hadoop平起平坐
Avro: 数据序列化系统
Chukwa: 用来管理大规模集群的数据收集系统
Hive: 数据仓库工具
Mahout: 机器学习与数据挖掘库
Pig: 直接翻译就是猪,你懂的,呵呵
二、Hadoop安装需求
平台:Hadoop旗帜鲜明地指出development and production platform是GNU/Linux, 而Windows只是作为development platform. 微软被鄙视了,呵呵。我用的Linux版本是RHEL5.5,不过据传说Ubuntu是最佳选择。
软件需求:
1. JAVA 1.6.x, 最好是Sun的版本
2. SSH (sshd服务必须启动)
三、Hadoop安装
1、下载Hadoop
在哪下载?可以在http://hadoop.apache.org/core/releases.html上面找到相应的版本,我下载的是最新的稳定版hadoop-0.20.2.tar.gz(包含了HDFS和MapReduce), hbase-0.20.6.tar.gz(Hadoop的Big Table,此文暂不介绍)。下载了这两个文件,Google三大宝就到手了。
2、安装Hadoop
因为有过当初安装MogileFS的痛苦经历,所以一开始我就做好了被折磨的准备。
找到下载的hadoop-0.20.2.tar.gz(这个文件包括了HDFS和Map-Reduce)
tar xzvf hadoop-0.20.2.tar.gz
然后%¥@#*,说实话,我在Hadoop-0.20.2文件夹里找了半天安装说明(^-^). 没想到解压完毕,HDFS和Map-Redece就已经安装上了,是不是有点在Windows下用免安装软件的感觉?
3、配置Hadoop(h/表示刚才解压出来的Hadoop目录)
Hadoop有三种工作模式:
本地模式(Local/Standalone Mode): 这个模式一般用于调试,不管是实际应用还是学习都不合适
伪分布式模式(Pseudo-Distributed Mode): 单机上模拟的分布式,其实就是多开几个Java进程。
全分布式模式(Fully-Distributed Mode): 这才是Hadoop能真正给力的模式,目前Hadoop已经能支持数千个节点
JAVA环境变量配置:
在h/conf/hadoop-env.sh脚本文件中加入export JAVA_HOME=/usr/java/jre1.6.0_20(用你机器上JAVA所在的路径替换),h/conf/hadoop-env.sh中有条注释# export JAVA_HOME=/usr/lib/j2sdk1.5-sun,实际所需要的只是JRE,不一定非得安装JDK。
保存并退出,进入h/bin目录中执行./hadoop,这时会显示一堆提示输入参数的信息,表示JAVA环境变量配置成功。如果显示错误信息,请自己根据提示解决,因为我没碰到,呵呵。
学Hadoop就为了体验分布式的强大,但公司肯定不会给几十几百台机器让你玩,所以我就先在自己的本上配置了伪分布式模式,先尝尝鲜再说。
伪分布式模式配置:
需要配置3个h/conf目录下的配置文件core-site.xml、hdfs-site.xml以及mapred-site.xml。这三个配置文件中分别添加如下信息(下面Hadoop文档提示的配置,你可根据你的情况配置)。
h/conf/core-site.xml (Hadoop核心节点配置)
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
h/conf/hdfs-site.xml (Hadoop文件系统节点配置)
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> 这个值表示你的数据做几个镜像备份,Google公司实际用的都是做3份冗余
</property>
</configuration>
h/conf/hdfs-mapred-site(Hadoop的Map-Reduce节点配置)
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
4、启动Hadoop
即使在本地,Hadoop也是通过ssh登录的,所以最好保存本地ssh登录密钥:
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
运行Hadoop之前先格式化文件系统: h/bin/hadoop namenode -format
启动Hadoop服务:h/bin/start-all.sh
如果不出意外,Hadoop的文件系统和MapReduce服务已经在你的机器上跑起来了。可以用浏览器进行查看和管理。
NameNode(节点和文件系统信息): http://localhost:50070/
JobTracker(MapReduce任务信息): http://localhost:50030/
5、Hadoop文件系统操作
将文件存入HDFS: h/bin/hadoop fs -put [path]localfilename [path]hdfsfilename
将文件取到本地磁盘: h/bin/hadoop fs -get [path]hdfsfilename [path]localfilename
HDFS就是一个虚的文件系统,linux下的文件系统常用命令都可以在HDFS下使用.什么ls,mv,rm,mkdir,chmod等等都不在话下。
6、总结
这里只配置了Hadoop的伪分布式模式,还是在自己的老本上跑的,所以存取个小文件都要小等一会。Hadoop就是为打群架设计的,让它单挑也够为难它。下一步就是找几台机器把Fully-Distributed模式跑起来,真刀真枪地跟单机干一架。
流浪鱼
2011年1月7日
- Hadoop安装及初探
- Hadoop安装初探
- Hadoop YARN安装部署初探
- Hadoop YARN安装部署初探
- nsq安装及初探
- Hadoop环境安装初探-单机模式配置
- Hadoop环境安装初探-单机模式配置
- hadoop安装及使用
- Hadoop安装及配置
- Hadoop安装及配置
- [Hadoop]基本概念及安装
- Hadoop安装及开发
- Hadoop 简介 及 安装
- Hadoop初探
- hadoop 初探
- Hadoop初探
- Hadoop初探
- hadoop 初探
- androidSDK安装不上的解决方案
- 网站日志代码大全
- [转]OV511视频采集设计文档
- ALSA架构简介
- 单链线性表---数据结构C语言版(2)
- Hadoop安装及初探
- iphone 的文件目录和简单介绍
- Java深度历险(一)——Java字节代码的操纵
- Android APN开发流程分析 、设置问题
- 自己的勉励
- 将程序装到sdcard上
- 显示Linq to sql的sql语句
- 名老中医经验继承研究现状及“中医处方智能分析系统”应用前景
- Java深度历险(二)——Java类的加载、链接和初始化