教程介绍:
第一部分. MapReduce
Mapreduce工作流程及基本架构回顾
运维相关
--参数调优
--benchmark
--reuse jvm
--错误感知及speculative执行
--task日志分析
--可容忍错误百分比设置及跳过坏记录
--选择fairescheduler等其他调度器优化性能
开发相关
--数据类型选择
--实现自定义writable数据类型、自定义key
--一个mapper中输出不同类型value
--InputFormat/OutputFormat,原理及定制
--Mapper/Reducer/Combiner,Combiner的使用及其对mapreduce框架优化的作用
--Partitioner定制
--排序策略GroupingComparator/SortComparator
--任务调度原理及修改方法(案例,map/reduce共享slot,按标识精准map/reduce调度)
--Streaming
--DistributedCache
--mapreduce任务间依赖
--counter
--JobChild参数设置
--性能优化
第二部分. hdfs
HDFS API
fuse(C API)
压缩
HDFS benchmark
Datanode添加及删除
多盘支持,磁盘错误感知
hdfs raid
HDFS block size设置相关问题
文件备份数设置
HDFS中合并文件
第三部分. Hadoop工具
dfsadmin/mradmin/balancer/distcp/fsck/fs/job
监控及报警
hadoop配置管理
第四部分. Hadoop调试
Log
本地模式调试map/reduce任务
远程调试
第五部分. 问题分析
Java GC介绍及java进程常用的分析工具jstat、jhat、jmap
top/iostat/netstat/lsof等
Jstack/kill -3
Strace
nload/tcpdump
第六部分.分析示例
MapReduce简单分析
用MapReduce实现Group-by
用MapReduce实现倒排索引
MapReduce实现直方图
MapReduce实现Join
主讲人: 冼茂源
搜狗搜索开发部高级工程师
Apache Hama project committer
自2010年加入搜狗公司,一直从事分布式计算及存储相关的开发及管理工作。
针对互联网具体业务的特殊需求,对hadoop调度机制、安全管理、存储优化、监控及管理系统等进行深度修改。同时,在将HBase与具体查询业务相结合,在实际项目中进行系统问题排查及调优方面有丰富经验。