课程培训
hadoop开发实战和性能调优培训

 hadoop开发实战和性能调优培训

培训大纲

课程主题

主要内容

案例和演示

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

l 传统大规模数据分析存在的问题

l Hadoop概述

l Hadoop与分布式文件系统

l Mapreduce的工作原理与机制

l Hadoop集群剖析

l Hadoop生态系统

l Hadoop的行业应用案例分析

l Hadoop在云计算和大数据的位置和关系

² 阿里集团技术平台,Hadoop在淘宝、支付宝的作用

² 电商眼中的Hadoop和推荐系统

² 暴风数据平台:Hadoop对于产品优化的价值

² Hadoop对于趣游、热酷等游戏公司的作用

² 移动大云项目(big cloud)中的hadoop

² 联通使用Hadoop/Hbase解决3G详单查询问题

Hadoop参数调优

l 选择合适Hadoop的硬件配置

l Hadoop配置项优化

l Hadoop配置优化 — core-site.xml

l Hadoop配置优化 — HDFS

l Hadoop配置优化 — hdfs-site.xml

l Hadoop配置优化 — mapred-site.xml

l Hadoop配置优化 — 机架感知

l 网络带宽参数调优

l 系统参数调优

l 配置文件管理

l 严格控制root权限

l Java的GC模式

l 选择正确的JDK

l Hadoop作业调优

l Map  side  tuning设置

l  Map  side设置

l Linux 操作系统优化

l 其他配置和参数调优

l core-default.xml,

l hdfs-default.xml,

l mapred-default.xml,

l mapred-site.xml

l mapred .tasktracker .map.tasks .maximum

l mapred.reduce.slowstart.completed.maps

l mapred.fairscheduler.preemption

l mapred.jobtracker.completeuserjobs.maximum

l mapred.jobtracker.update.faulty.tracker.interval

l mapred.jobtracker.max.blacklist.percent

² hadoop硬件优化

² 不是所有的硬件都合适拿来使用

² 安装调优的第一步服务器硬件的选型的窍门

² 如何选择合适业务使用的CPU

² 内存越大越好吗?设置合理的内存配置

² 链接网络的选择和优化

² 高速硬盘的选择注意事项

² 硬盘为什么不做raid?

² 设置网络的注意事项

² 中间结果压缩对磁盘和网络的优化

² 机架感知,网络和磁盘IO优化作用,确定存储的具体位置

² 内存参数,map/reduce槽位数的计算方法

² 对磁盘和网络的优化

² Java工具使用,jstack使用

² Sun和open之间的区别,JIT编译的使用

² Linux系统参数调优

² Linux监控系统的使用

² Cacti

² Ganglia

² 常用的linux排错工具l sof,strace,iostat,vmstat,n etstat…

² 常见异常现象级处理方法

² 网卡流量导致连接失败

² 权限错误

² 主机名IP转换错误

² NN与DN  namespace ID不一致

² 磁盘满导致报错

² Java heap size oom

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

² 案例一:namenode 被重新格式化,datanode无法连接

n 现象:namenode 中的namespac  ID 与datanode中的namespace ID不一致

² 案例二:硬盘损坏

n 现象:磁盘损坏导致datanode宕机

² 案例三: 错误用户启动hadoop

n 现象:datanode启动一段时间后宕机

² 案例四:tasktracker重启后假死

n 现象:无报错,但tasktracker不工作

² 案例五:jobtracker无故宕机

n 现象:运行过程中,jobtracker宕机

² 案例六:datanode无法注册到namenode

n 现象:datanode启动后到mbean这步挂起不再继续

² 案例七:tasktracker无法启动,报权限错误

n 现象:tasktracker报文件夹创建的权限错误后直接退出

² 案例八:主机名设置错误

n 现象:datanode和tasktrcker无法正常工作

Hadoop组件详解

l Hadoop HDFS基本结构

l Hadoop HDFS 副本存放策略

l Hadoop nameNode 详解

l Hadoop Sedary namenode 详解

l Hadoop DataNode 详解

l Hadoop JobTracker 详解

l Hadoop TaskTracker 详解

² Hadoop Mapper 类核心代码

² Hadoop Reduce 类核心代码

² Hadoop 核心代码

Hadoop安装和部署

l Hadoop 系统模块组件概述

l Hadoop 实验集群的部署结构

l Hadoop 安装依赖关系

l Hadoop 生产环境的部署结构

l Hadoop 集群部署

l Hadoop 高可用配置方法

l Hadoop集群简单测试方法

l Hadoop 集群异常Debug 方法

² Hadoop安装部署实验

² Red hat Linux 基础环境搭建

² Hadoop 机群系统版本安装和启动配置

² 使用Hadoop MapReduce Streaming 快速测试系统

² Hadoopcore-site,hdfs-site,mapred-site配置详解

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

l Hadoop/Hive对比Oracle在构建数据仓库上的优劣势

l Hadoop如何和传统IT系统配合完成原来不可能的任务

² Apache社区版本:Cloudera 版本、MapR版本、Intel版本、Oracle、Dell、HP版本

编写MapReduce高级程序

l 使用Hadoop MapReduce Streaming编程

l MapReduce 流程

l 剖析一个MapReduce程序

l 基本MapReduceAPI概念

l 驱动代码Mapper、reducer

l Hadoop 流

l API使用Eclipse进行快速开发

l 新MapReduce  API

l MapReduce的优化

l MapReduce的任务调度

l MapReduce编程实战

l 如何利用其他Hadoop相关技术,包括Apache Hive,Apache Pig,Sqoop和Oozie等

l 满足解决实际数据分析问题的高级Hadoop API

² Hadoop Streaming和Java MapReduce差异

² MapReduce实现数据库功能

² 利用Combiners来减少中间数据

² 编写Partitioner来优化负载平衡

² 直接访问Hadoop的join操作

² 辅助排序在Reducer方的合并

² 定制Writables和WritableComparables

² 使用SequenceFiles和Avro文件保存二进制数据

² 创建InputFormats OutputFormats

² Hadoop的二次排序

² Hadoop的海量日志分析

² 在Map方的合并

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

² 案例1:控制Map & reduce 个数

n 现象:map个数取决于split个数,如果源文件使用压缩存储,则不可分割,一个文件一个map。非压缩文件使用默认block.size进行切分。对reduce因为是中间数据,可以控制reduce数量。

² 案例2:压缩中间数据

n 现象:job中间临时数据量极大、网络IO吞吐量大。

² 案例3:编程细节,内存溢出

n 现象:编程过程中,经常遇到list 、map、倒排表等大对象,如果作为局部变量,每次调用map或者reduce方法都初始化这些变量,很容易消耗掉JVM堆内存,出现内存溢出异常。

² 案例4:编程细节,计数&日志打印

n 现象:System. Out. Println,  System. Err. Println等日志打印过多会严重影响job性能,counter计数也会存在同样的问题,同时也会造成本地磁盘使用量的急剧增长。

² 案例5:作业调度

n 现象:集群上的job非常多时,会出现一些job一直等待,很长一段时间内没有开始运行。默认的任务调度器FIFO并不能满足实际工作应用。

² 案例6:Combiner优化

n 现象:map输出数据量非常大,reduce  input  group远小于reduce  input  group时,存在大量的网络IO,这些IO中的一部分数据可以在本地做完合并,然后再进行reduce操作。

使用Hive和Pig开发及技巧

l Hive和Pig基础

l Hive的作用和原理说明

l Hadoop/Hive仓库数据数据流

l Hive部署和安装

l Hive  Cli的基本用法

l HQL基本语法

l 使用Oozie的动机

l 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

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>
技术支持:帮做网络