课程培训
Hadoop开发实践与性能调优培训课程

 

Hadoop开发实践与性能调优培训课程
培训特色

系统的讲解Hadoop及主要周边生态的基本原理,安装,部署,维护及开发。偏重于部署维护方向,中间会对Linux,网络,服务器硬件Raid等进行系统的学习和了解。力求让学员全方位掌握Hadoop及相关的其他知识。了解Hadoop各生态的特点和应用场景。

目标收益

可独立完成Hadoop的部署,运维,监控及故障处理。独立完成整体Hadoop从网络到软件层面的架构设计,Hadoop及周边生态的性能优化。

培训对象

开始对Hadoop感兴趣或已使用Hadoop,希望进行性能调优或架构优化。

学员基础

需具备基本Linux操作系统安装及常规命令行操作知识。

课程大纲

 

主题 内容

Hadoop在云计算技术的作用和地位

传统大规模数据分析存在的问题
Hadoop概述
Hadoop与分布式文件系统 
MapReduce的工作原理与机制 
Hadoop集群剖析 
Hadoop生态系统
Hadoop的行业应用案例分析
Hadoop在云计算和大数据的位置和关系
案例演示:阿里集团技术平台,Hadoop在淘宝、支付宝的作用
电商眼中的Hadoop和推荐系统。
暴风数据平台:Hadoop对于产品优化的价值。
Hadoop对于趣游、热酷等游戏公司的作用
移动大云项目(big cloud)中的Hadoop
联通使用Hadoop/Hbase解决3G详单查询问题。

Hadoop参数调优

选择适合hadoop的硬件配置
Hadoop配置项优化
Hadoop配置优化 - core-site.xml
Hadoop配置优化 - HDFS
Hadoop配置优化 - hdfs-site.xml
Hadoop配置优化 - mapred-site.xml
Hadoop配置优化 - 机架感知
网络带宽参数调优
系统参数调优
配置文件管理
严格控制root权限
Java的GC模式
选择正确的JDK
hadoop作业调优
Map side tuning设置
Map side设置
Linux操作系统优化
其他配置和参数调优
core-default.xml,
hdfs-default.xml,
mapred-default.xml。
mapred-site.xml
mapred.tasktracker.map.tasks.maximum
mapred.reduce.slowstart.completed.maps
mapred.fairscheduler.preemption
mapred.jobtracker.completeuserjobs.maximum
mapred.jobtracker.update.faulty.tracker.interval
mapred.jobtracker.max.blacklist.percent
案例演示:Hadoop硬件优化
不是所有的硬件都合适拿来直接使用
安装调优的第一步服务器硬件的选型的窍门
如何选择适合业务使用的CPU
内存越大越好吗?设置合理的的内存配置
连接网络的选择和优化
高速硬盘的选择注意事项
硬盘为什么不做raid?
设置网络的注意事项
中间结果压缩对磁盘和网络的优化
机架感知,网络和磁盘IO优化作用,确定存储的具体位置,
内存参数,map/reduce槽位数的计算方法。
对磁盘和网络的优化
Java工具使用,jstack使用
Sun和open之间的区别,JIT编译器的使用
inux系统参数调优
Linux监控系统的使用
cacti,
ganglia
常用的linux排错工具lsof,strace,iostat,vmstat,netstat...
常见异常现象级处理方法
网卡流量导致连接失败
权限错误
主机名IP转换错误
NN与DN namespaceID不一致
磁盘满导致报错
Jave heap size OOM

精彩案例及故障解决方法解析

案例一:namenode被重新格式化,datanode无法连接
现象:namenode 中的namespaceID与datanode中的namespaceID不一致
案例二:硬盘损坏
现象:磁盘损坏导致datanode宕机
案例三:错误用户启动hadoop
现象:datanode启动一段时间后宕机
案例四:tasktracker重启后假死
现象:无报错,但tasktracker不工作。
案例五:jobtracker无故宕机
现象:运行过程中jobtracker宕机
案例六:datanode无法注册到namenode
现象:datanode启动后到MBean这步挂起不再继续。
案例七:tasktracker无法启动,报权限错误
现象:tasktracker报文件夹创建的权限错误后直接退出。
案例八:主机名设置错误
现象:datanode 和tasktracker无法正常工作

Hadoop组件详解

Hadoop HDFS 基本结构
Hadoop HDFS 副本存放策略
Hadoop NameNode 详解
Hadoop SecondaryNameNode 详解
Hadoop DataNode 详解
Hadoop JobTracker 详解
Hadoop TaskTracker 详解
案例演示:Hadoop Mapper类核心代码
Hadoop Reduce类核心代码
Hadoop 核心代码

Hadoop安装和部署

Hadoop系统模块组件概述
Hadoop试验集群的部署结构
Hadoop 安装依赖关系
Hadoop 生产环境的部署结构
Hadoop集群部署
Hadoop 高可用配置方法
Hadoop 集群简单测试方法
Hadoop 集群异常Debug方法
案例演示:Hadoop安装部署实验
Red hat Linux基础环境搭建
Hadoop 单机系统版本安装配置
Hadoop 集群系统版本安装和启动配置
使用 Hadoop MapReduce Streaming 快速测试系统
Hadoopcore-site,hdfs-site,mapred-site 配置详解

Hadoop和传统数据库技术优劣势对比

Hadoop/Hive 对比 Oracle 在构建数据仓库上的优劣势
Hadoop 如何和传统IT系统配合完成原来不可能的任务
案例演示:Apache社区版本:Cloudera 版本、MapR版本、Intel版本、Oracle、Dell、HP版本

编写MapReduce高级程序

使用 Hadoop MapReduce Streaming 编程
MapReduce流程 
剖析一个MapReduce程序
基本MapReduceAPI 概念 
驱动代码 Mapper、Reducer
Hadoop流
API 使用Eclipse进行快速开发 
新MapReduce API
MapReduce的优化
MapReduce的任务调度
MapReduce编程实战
如何利用其他Hadoop相关技术,包括Apache Hive, Apache Pig,Sqoop和Oozie等
满足解决实际数据分析问题的高级Hadoop API
案例演示:Hadoop Streaming 和 Java MapReduce Api 差异。
MapReduce 实现数据库功能
利用Combiners来减少中间数据
编写Partitioner来优化负载平衡
直接访问Hadoop分布式文件系统(HDFS)
Hadoop的join操作
辅助排序在Reducer方的合并
定制Writables和WritableComparables
使用SequenceFiles和Avro文件保存二进制数据
创建InputFormats OutputFormats
Hadoop的二次排序
Hadoop的海量日志分析
在Map方的合并

精彩案例及故障解决方法解析

案例一:控制map & reduce个数
现象:map个数取决于split个数,如果源文件使用压缩存储,则不可分割,一个文件一个map。非压缩文件使用默认block.size进行切分。对reduce因为是中间数据,可以控制reduce数量。
案例二:压缩中间数据
现象:job中间临时数据量级大、网络IO吞吐量大。
案例三:编程细节,内存溢出
现象:编程过程中,经常遇到list、map、倒排表等大对象,如果作为局部变量,每次调用map或者reduce方法都初始化这些变量,很容易消耗掉JVM堆内存,出现内存溢出异常。
案例四:编程细节,计数&日志打印
现象: System.out.println, System.err.println等日志打印过多会严重影响job性能,counter计数也会存在同样的问题,同时也会造成本地磁盘使用量的急剧增长。
案例五: 作业调度
现象:集群上的job非常多时,会出现一些job一直等待,很长一段时间内没有开始运行。默认的任务调度器FIFO并不能满足实际工作应用。
案例六:Combiner优化
现象: map输出数据量非常大,reduce input group远小于reduce input group时,存在大量的网络IO,这些IO中的一部分数据可以在本地做完合并,然后再进行reduce操作。

使用Hive和Pig开发及技巧

Hive和Pig基础 
Hive的作用和原理说明
Hadoop仓库和传统数据仓库的协作关系
Hadoop/Hive仓库数据数据流
Hive 部署和安装
Hive Cli 的基本用法
HQL基本语法
使用Oozie的动机 
Oozie工作流定义格式 
案例演示:使用JDBC 连接Hive进行查询和分析
使用正则表达式加载数据
HQL高级语法
编写UDF函数
编写UDAF自定义函数
使用Sqoop进行数据分析
使用oozie配置工作流
phpHiveAdmin 安装和使用




如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表下载请点击

服务优势:
丰富专家资源,精准匹配相关行业,相关项目技术精英,面向用户实际需求,针对性培训或咨询,互动式交流,案例教学,精品小班,实际工程项目经验分享,快捷高效,节省时间与金钱,少走弯路与错路。

专家力量:
中国科学院相关研究所高级研究人员
西门子,TI,vmware,MSC,Ansys,MDI,Mentor, candence,Altium,Atmel 、Freescale,达索,华为等
大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关学历背景专业,理论素养高
多年实际项目实践,大型复杂项目实战案例分享,热情,乐于技术分享
针对客户实际需要,真实案例演示,互动式沟通,学有所值
报名表下载
联系我们 更多>>

咨询电话010-62883247

                4007991916

咨询邮箱:soft@info-soft.cn  

 

微信号.jpg

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>