版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、云计算可靠性研究组,1,Hadoop现场演示与编程过程,朱军 刘锴 傅雷扬 安徽农业大学,云计算可靠性研究组,2,主要内容,实验平台简介 Hadoop 环境搭建 MapReduce 编程,云计算可靠性研究组,3,实验平台简介,采用XenServer分布式部署Hadoop 浪潮380D 5台虚拟机(CentOS) 采用VirtualBox分布式部署Hadoop PC 5台虚拟机(CentOS),云计算可靠性研究组,4,采用XenServer分布式部署Hadoop,云计算可靠性研究组,5,采用VirtualBox分布式部署Hadoop,云计算可靠性研究组,6,Hadoop 环境搭建,Hadoop的
2、三种部署模式 Hadoop完全分布式部署 HDFS节点故障演示,云计算可靠性研究组,7,Hadoop 的三种部署模式,1、单机模式 2、伪分布式模式 3、完全分布式模式,云计算可靠性研究组,8,IP/hosts: Namenode/Jobtracker: Secendnamenode: datanode/tasktracker: New datanode: ,Hadoop完全分布式部署,云计算可靠性研究组,9,完全分布式部署步骤,一、安装配置 Java环境 二、配置SSH免密码登录 三、安装配置Hadoop,云计算可靠性研究组,10,安装配置JAVA,1、安装jdk bin/jdk-6u27-
3、x64.bin 2、修改环境变量 vim /.bash_profile JAVA_HOME=/usr/local/jdk1.6.0_27 export $JAVA_HOME $PATH=$PATH:$JAVA_HOME/bin,云计算可靠性研究组,11,配置SSH免密码登录,1、生成密钥 ssh-keygen -t rsa 2、拷贝密钥 ssh-copy-id -i /.ssh/id_rsa.pub rootremotehost,云计算可靠性研究组,12,安装配置Hadoop,1、解压Hadoop 2、从src复制配置文件示例 3、修改hadoop-evn.sh、core-site.xml、h
4、dfs-site.xml、mapred-site.xml、masters、slaves,云计算可靠性研究组,13,core-site-xml, hadoop.tmp.dir /home/grid/hadoop/tmp #设定Hadoop临时目录 hdfs:/:9100 #设置文件系统路径 erval #节点间心跳检测间隔时间,默认10分钟 1000 ,云计算可靠性研究组,14,hdfs-site-xml, dfs.relplication #HDFS的副本数,默认为3,如果DataNode的数量小于这个值会有问题 2 d
5、fs.permissions #是否对dfs中的文件进行权限控制 false ,云计算可靠性研究组,15,mapred-site-xml,:9200 #设置MapReduce Job运行的主机和端口 ,云计算可靠性研究组,16,masters/slaves 配置,masters:指定Secondnamenode的主机名 slaves:指定datanode/tasktracker的主机名 将Hadoop目录同步到所有节点服务器,云计算可靠性研究组,17,启动Hadoop,格式化分布式文件系统 bin/hadoop namenode -format 2、关闭所有节点的防火墙及Selinux 3、在
6、namenode上执行 bin/start-all.sh 4、查看进程运行情况 $JAVA_HOME/bin/jps,云计算可靠性研究组,18,查看Hadoop运行状态,HDFS状态: :50070/ MapReduce状态: :50030/ 查看文件系统情况: bin/hadoop dfsadmin -report 列出文件系统目录: bin/hadoop fs -ls hdfs:/:9100/,云计算可靠性研究组,19,一、增加HDFS节点 1、新节点ip/hosts: 0 2、在新节点上安装Hadoop,配置应与NameNode一致 3、若永久填加该节点,可修改m
7、asters和slaves文件 4、临时填加节点,执行命令: bin/hadoop-daemon.sh datanode start 5、查看:50070,已变为4个live节点 二、新增节点故障演示 1、人为Kill掉新增节点的datanode进程 2、经过心跳检测时间后,查看:50070页面,新增节点消失,HDFS节点故障演示,云计算可靠性研究组,20,MapReduce 编程,MapReduce编程过程 编程实例:矩阵相乘 程序调试和发布,云计算可靠性研究组,21,MapReduce编程过程,就是继承类与实现接口的过程。这些类与接口来自于Hadoop的Map-Reduce框架,由框架控制
8、其执行流程。 Java多态性:对象的引用型变量。 编程过程的三个阶段: 输入阶段 计算阶段 输出阶段,云计算可靠性研究组,22,MapReduce编程过程,云计算可靠性研究组,23,与输入相关的几个抽象类,InputFormat 文件分割,读取。FileInputFormat从文件中读取数据。 InputSplits 定义了输入到单个Map任务的输入数据。 RecordReader 定义了如何从数据上转化为一个(key,value)对,从而输出到Mapper类中。,云计算可靠性研究组,24,与计算相关的几个抽象类,Mapper map()方法处理输入,产生输出。 Reducer reduce(
9、)方法处理Map的输入,产生输出。 Combiner 实现Reducer接口,对map()输出进行规约。 Partitioner 分发map()输出给不同的Reduce任务。,云计算可靠性研究组,25,与输出相关的几个抽象类,OutputFormat 数据输出。FileOutputFormat输出到文件。 RecordWriter 输出一个记录到文件中。,云计算可靠性研究组,26,其它重要类与接口,Configuration类 读取配置文件。如:core-default.xml、core-site.xml等。 Job类 配置、提交Job,控制其执行,查询其状态。 Writable接口 序列化输
10、入输出。任何Key, Value都需要实现它。 WritableComparable接口 可比较的序列化输入输出。任何Key都需要实现它。,云计算可靠性研究组,27,编程实例:矩阵相乘,编程环境准备: 安装配置Java环境 安装配置Hadoop 安装Eclipse(Version: 3.5.2) 安装插件hadoop-0.20.2-eclipse-plugin.jar,云计算可靠性研究组,28,实例:矩阵相乘,将问题分解成MapReduce作业,X,、 、 ,Key,Value,云计算可靠性研究组,29,实例:矩阵相乘,输入阶段,文件,MatrixInputFormat,Matrix,Matr
11、ixInputSplit,MatrixInputFormat重要方法: public int readFile(JobContext context); public List getSplits(JobContext context); public RecordReader createRecordReader(InputSplit split, TaskAttemptContext context),云计算可靠性研究组,30,实例:矩阵相乘,计算阶段,MatrixInputSplit,MatrixRecordReader,IntPair,MatrixMapper,FirstPartiti
12、oner,MatrixReducer,MatrixRecordReader重要方法: public boolean nextKeyValue(); public IntPair getCurrentKey(); public IntPair getCurrentValue();,云计算可靠性研究组,31,实例:矩阵相乘,输出阶段,MatrixReducer,MultipleOutputFormat,LineRecordWriter,云计算可靠性研究组,32,程序调试和发布,程序调试 编写单元测试(Mockito)。 将调试语句记录到错误日志中。(StatusReporter) 日志文件:分门别类存放在hadoop-version/logs目录下面,hadoop-username-service-hostname.log,尤其关注TaskTracker的log。 在单机上首先执行,看看是否能够正确执行,而后再在多机的集群系统上执行。,云计算可靠性研究组,33,程序调试和发布,程序发布 打包 jar, Ant 启动作业 hado
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 隧道施工安全规范
- 跨境智算中心间电算协同调度中跨国算力负荷绿电匹配机制-基于国际绿电证书与算力调度协同标准规范分析
- 跨境算力中心与水泥窑余热协同中跨国窑尾废气热算力-基于国际水泥余热回收协会算力中心水泥窑余热利用调度指南规范分析
- 工程安全资料员2026年二季度安全资料归档总结
- 颈椎康复功课
- 偏瘫康复宣教
- 互联护理服务风险防控
- 上半年人事部工作总结
- 普惠保险场景化服务设计
- 2026中国智能床垫行业市场发展现状及投资策略规划研究报告
- 人音版(2012)音乐一年级上1.1 玩具兵进行曲 教学设计
- 煤矿一规程四细则考试学习题库及答案
- 2026年纪检监察综合业务考试题库含答案
- 2026-2030中国分子育种行业市场发展趋势与前景展望战略研究报告
- 2021变电站用充气式开关柜运维检修规程
- 影像科错误报告的更正及重新报告制度
- 卫生健康系统职业技能竞赛中药调剂竞赛综合试题
- 东莞市水务集团有限公司招聘笔试题库2026
- 2026年新疆兵团人民检察院招聘聘用制书记员(2人)笔试参考题库及答案解析
- 许林芳讲管理七剑课件
- 2025年通信中级工程师(互联网技术)实务试卷及答案
评论
0/150
提交评论