




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
HDFS+MapReduce+Hive十分钟快速入门HDFS+MapReduce+Hive十分钟快速入门一见 2009-8-191. 前言本文的目的是让一个从未接触Hadoop的人,在很短的时间内快速上手,掌握编译、安装和简单的使用。2. Hadoop家族截止2009-8-19日,整个Hadoop家族由以下几个子项目组成:成员名用途备注Hadoop CommonHadoop体系最底层的一个模块,为Hadoop各子项目提供各种工具,如:配置文件和日志操作等。AvroChukwaHBaseBigtable的实现HDFS分布式文件系统Hive定位于数据仓库,提供类SQL接口HQLMapReduce实现了MapReduce编程框架PigZooKeeper3. 演练环境3.1. 操作系统SuSE10,Linux2.6.16,32位版本。3.2. HadoopHive通过SVN直接从网上下载原代码,其它采用hadoop-0.20.0.tar.gz二进制安装包,所以只需要编译Hive。另外,请注意要下载2008-8-19号之前的Hive,2008-8-19提交的Hive版本在hadoop-0.20.0.tar.gz上编译通不过,原因是:Hive源代码根目录qlsrcjavaorgapachehadoophiveqlexecFileSinkOperator.java文件中多了一行:import press.LzoCodec;3.3. Hive在0.20.0版本的Hadoop二进制安装包中,并没有集成Hive,所以Hive需要自己编译,编译时需要使用到ant和ivy两个工具,而且依赖于Hadoop。3.4. Java运行Hadoop和编译Hive,都需要使用到Java,所以需要第一个安装的是Java。3.5. 机器演练时,在3台机器上搭建Hadoop集群,假设这3台机器如下表所示:机器名机器IP用途Hadoop-A用作MasterHadoop-B用作SlaveHadoop-C用作Slave注意事项:机器名中不能包括下划线“_”,但可以包括横线,可以使用不带参数的hostname来查看机器名,修改机器名方法为:hostname 机器名,如:hostname Hadoop-A。3.6. 安装列表安装说明Java 1.6A、B和C三台机器都需要安装Hadoop 0.20.0A、B和C三台机器都需要安装Hive只需要在B和C两台机器上安装,也就是Slave机器不需要安装ant只需要在B和C两台机器上安装,也就是Slave机器不需要安装ivy只需要在B和C两台机器上安装,也就是Slave机器不需要安装注意事项:为求简单所有操作均以root用户完成,实际上可以使用非root用户,但环境变量就不能直接在/etc/profile文件中添加了。3.7. 安装路线4. 配置ssh2和修改/etc/hosts需要在所有机器上配置ssh2和修改/etc/hosts。4.1. 配置ssh21) mkdir /.ssh22) cd /.ssh23) ssh-keygen2 -t rsa 4) echo IdKey id_rsa_2048_a identification5) echo key id_rsa_2048_a.pub authorization4.2. 修改/etc/hosts1) 在/etc/hosts文件中增加如下三行: Hadoop-A Hadoop-B Hadoop-C并根据上述关系,使用hostname命令修改三台机器的机器名。5. 安装Java1) 从/zh_CN/download/manual.jsp 下载jre,请注意是Java1.6版本,原因是Hadoop和Hive使用到了模板等特性2) 下载“Linux (自解压文件)”这个版本的jre,如下图所示3) 将下载的Java二进制安装包jre-6u15-linux-i586.bin上传到/usr/local目录4) 为jre-6u15-linux-i586.bin文件增加可执行权限:chmod +x jre-6u15-linux-i586.bin5) 运行jre-6u15-linux-i586.bin:./jre-6u15-linux-i586.bin6) 用户协议接受,选择yes7) 安装成功后,在/etc/profile增加如下一行:export PATH=/usr/local/jdk/bin:$PATH6. 安装Hadoop1) 从/common/releases.html 下载Hadoop二进制安装包hadoop-0.20.0.tar.gz2) 将hadoop-0.20.0.tar.gz上传到/usr/local目录3) 在/usr/local目录,将hadoop-0.20.0.tar.gz解压4) 为hadoop-0.20.0建一个软链接:ln -s hadoop-0.20.0 hadoop5) 在/etc/profile文件中,增加如下两行:export HADOOP_HOME=/usr/local/hadoopexport PATH=$HADOOP_HOME/bin:$PATH完成以上步骤后,Hadoop就安装好了。7. 配置HDFS7.1. 修改hadoop-env.sh所有机器做同样操作。hadoop-env.sh位于/usr/local/hadoop/conf目录下,需要在这个文件中设置环境变量JAVA_HOME,增加如下一行即可:export JAVA_HOME=/usr/local/jre7.2. 修改core-site.xml所有机器做同样操作。在hadoop-0.20.0.tar.gz安装包中,conf目录下的core-site.xml默认是空的,但src/core目录下有一个缺省的配置文件core-default.xml,所以只需要将它复制到conf目录下,并重命名成core-site.xml即可,下述操作都是基于此操作的。core-site.xml文件位于/usr/local/hadoop/conf目录下。7.2.1. hadoop.tmp.dir设置临时文件目录参数hadoop.tmp.dir,默认情况下master会将元数据等存在这个目录下,而slave会将所有上传的文件放在这个目录下,在这里数据目录统一为/usr/local/hadoop/data: hadoop.tmp.dir /usr/local/hadoop/data A base for other temporary directories.注意事项:由于上传到Hadoop的所有文件都会被存放在hadoop.tmp.dir所指定的目录,所以要确保这个目录是足够大的。7.2.2. master用这个参数,提供基于http协议的状态上报界面,而slave通过这个地址连接master,设置如下: hdfs:/Hadoop-A:54310 The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uris scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uris authority is used to determine the host, port, etc. for a filesystem.7.3. 修改masters这个文件存储备master节点的IP或机器名,建议使用机器名,每行一个机器名。主master会将元数据等备份到备master节点,文件位于conf目录下。这里,我们为masters文件增加如下一行即可:Hadoop-A7.4. 修改slaves这个文件存储slave节点的IP或机器名,建议使用机器名,每行一个机器名。这里我们增加如下两行:Hadoop-BHadoop-C7.5. 修改hdfs-site.xml所有机器做同样操作。从src/hdfs目录下,将hdfs-default.xml复制到conf目录,并重命名成hdfs-site.xml,这里不需要修改此文件。8. 配置MapReduce8.1. 修改mapred-default.xml所有机器做同样操作。从src/mapred目录下,将mapred-default.xml复制到conf目录,并重命名成mapred-site.xml。 mapred.job.tracker Hadoop-A:54311 The host and port that the MapReduce job tracker runs at. If local, then jobs are run in-process as a single map and reduce task. 9. 安装Hivehadoop-0.20.0中并没有集成二进制的Hive,所以需要通过源代码编译一个,但是2009-8-19日提交的Hive并不能在hadoop-0.20.0上编译,而应当使用2009-8-4之后和2009-8-19之间的版本。9.1. 安装ant1) 从/ 下载ant二进制安装包,选择1.7.1版本2) 下载后,将包apache-ant-1.7.1-bin.zip上传到/usr/local目录3) 进入/usr/local目录,将apache-ant-1.7.1-bin.zip解压:unzip apache-ant-1.7.1-bin.zip4) 进入/usr/local目录,为ant建一个软连接:ln -s apache-ant-1.7.1 ant5) 修改/etc/profile,增加如下行:export PATH=/usr/local/ant/bin:$PATH至此,ant算是安装好了 。9.2. 安装ivy1) 从/dist/ant/ivy/ 下载ivy二进制安装包,选择2.1.0-rc2版本2) 下载后,将包apache-ivy-2.1.0-rc2-bin.tar.gz上传到/usr/local目录3) 进入/usr/local目录,将apache-ivy-2.1.0-rc2-bin.tar.gz解压:tar xzf apache-ivy-2.1.0-rc2-bin.tar.gz4) 进入/usr/local目录,为ivy建一个软连接:ln -s apache-ivy-2.1.0-rc2 ivy6) 修改/etc/profile,增加如下行:export IVY_HOME=/usr/local/ivy至此,ivy算是安装好了。9.3. 编译Hive在编译Hive之前,请确保HADOOP_HOME和IVY_HOME两个环境变量已经生效。1) 使用svn从/repos/asf/hadoop/hive/trunk下载2009-8-19之前的Hive源代码2) 将下载来的Hive源代码打包,然后上传到Hadoop-A机器3) 解压Hive源代码包4) 运行ant开始编译:ant -Dtarget.dir=/usr/local/hadoop/hive -Dhadoop.version=0.20.0 package这步完成之后,Hive会被安装到/usr/local/hadoop/hive目录下5) 添加Hive环境变量,在/etc/profile文件中增加如下两行:export HIVE_HOME=/usr/local/hadoop/hiveexport PATH=$HIVE_HOME/bin:$PATH10. 体验10.1. 启动和停止10.1.1. start-all.sh这个脚本用来启动Hadoop。可以通过27:50070来查看HDFS的启动情况。可以通过27:50030来查看MapReduce的启动情况。10.1.2. stop-all.sh这个脚本用来停止Hadoop。10.2. 体验HDFSHDFS的使用和普通的Linux命令差不多,只不过各类操作都必须作为hadoop命令的参数,如在hadoo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年飞行汽车考试题及答案
- 2025年度调度规程考试题库及答案
- 高铁隧道施工劳务合同(3篇)
- 高速工程施工合同(3篇)
- 高频焊檩条采购合同模板(3篇)
- n3级级护士手考试试题及答案
- 航空航天单位员工航天技术聘用合同
- 互联网餐厅厨师承包服务与管理协议
- 2025公务员真实面试题及答案
- 深圳市绿色环保产业门面租赁及市场推广协议
- 山西省太原三十七中2023-2024学年九年级上学期月考物理试卷(10月份)
- 抖音洗浴按摩足浴商家本地团购短视频直播运营策划方案【抖音本地生活运营】
- 深水井施工方案
- (幻灯片)世界各国国旗大全中文
- 碳酸乙烯亚乙酯和甲烷二磺酸亚甲酯功能添加剂在锂离子电池中的性能研究的开题报告
- 《藻类植物》授课课件
- 《禁骑电动自行车》班会课件
- 秋收活动方案
- 物流地产发展前景分析
- 三年个人成长路线图:高中数学名师工作室
- 基于机器学习的异常检测与预警机制
评论
0/150
提交评论