Hadoop企业级完整训练课程

课程目标:

• 彻底理解Hadoop 代表的云计算实现技术的能力
• 具备构建并驾驭Hadoop集群能力
• 具备修改Hadoop框架的能力
• 具备开发自己网盘的能力
• 具备修改HDFS具体源码实现的能力
• 从代码的角度剖析MapReduce执行的具体过程并具备开发MapReduce代码的能力
• 具备掌握Hadoop如何把HDFS文件转化为Key-Value让供Map调用的能力
• 具备掌握MapReduce内部运行和实现细节并改造MapReduce的能力
• 具体Hadoop企业管理员的实际能力
• 具备理解并通过命令行和Java两种方式操作ZooKeeper的能力
• 具备掌握HBase企业级开发和管理的能力
• 具备掌握Pig企业级开发和管理的能力
• 具备掌握Hive企业级开发和管理的能力
• 具备使用Sqoop自由转换传统关系型数据库和HDFS中数据的能力
• 具备使用Flume收集和管理分布式日志的能力
• 具备掌握Hadoop完整项目的分析、开发、部署的全过程的能力

课程对象:

1,对云计算、分布式数据存储于处理、大数据等感兴趣的朋友
2,传统的数据库,例如Oracle、MaySQL、DB2等的管理人员
3,Java开发者
4,网站服务器端的开发人员

学员基础:

对云计算有强烈的兴趣,能够看懂基本的Java语法。

课程时长:3天

课程方式:

传统的面对面授课方式。

 

课程大纲:

 
第1个主题:Hadoop三问(彻底理解Hadoop)
1、 Hadoop为什么是云计算分布式大数据的事实开源标准软件框架?
2、Hadoop的具体是如何工作?
3、Hadoop的生态架构和每个模块具体的功能是什么?

第2个主题:Hadoop集群与管理(具备构建并驾驭Hadoop集群能力)
1、 Hadoop集群的搭建
2、 Hadoop集群的监控
3、 Hadoop集群的管理
4、 集群下运行MapReduce程序

第3主题:彻底掌握HDFS(具备开发自己网盘的能力)
1、HDFS体系架构剖析   
2、NameNode、DataNode、SecondaryNameNode架构
3、保证NodeName高可靠性最佳实践
4、DataNode中Block划分的原理和具体存储方式
5、修改Namenode、DataNode数据存储位置
6、使用CLI操作HDFS
7、使用Java操作HDFS

第4主题:彻底掌握HDFS(具备修改HDFS具体源码实现的能力)
1、RPC架构剖析   
2、源码剖析Hadoop构建于RPC之上
3、源码剖析HDFS的RPC实现
4、源码剖析客户端与与NameNode的RPC通信

第5个主题:彻底掌握MapReduce(从代码的角度剖析MapReduce执行的具体过程并具备开发MapReduce代码的能力)
1、MapReduce执行的经典步骤   
2、wordcount运行过程解析
3、Mapper和Reducer剖析
4、自定义Writable
5、新旧API的区别以及如何使用就API
6、把MapReduce程序打包成Jar包并在命令行运行

第6个主题:彻底掌握MapReduce(具备掌握Hadoop如何把HDFS文件转化为Key-Value让供Map调用的能力)
1、 Hadoop是如何把HDFS文件转化为键值对的?
2、 源码剖析Hadoop读取HDFS文件并转化为键值对的过程实现
3、 源码剖析转化为键值对后供Map调用的过程实现

第7个主题:彻底掌握MapReduce(具备掌握MapReduce内部运行和实现细节并改造MapReduce的能力)
1、 Hadoop内置计数器及如何自定义计数器
2、 Combiner具体的作用和使用以及其使用的限制条件
3、 Partitioner的使用最佳实践
4、 Hadoop内置的排序算法剖析
5、 自定义排序算法
6、 Hadoop内置的分组算法
7、 自定义分组算法
8、 MapReduce常见场景和算法实现

第8个主题:Hadoop集群高级实践(具体Hadoop企业管理员的实际能力)
1、 动态增加Hadoop的Slave节点
2、 动态修改Hadoop的Replication数目
3、 使用命令管理Hadoop集群实践
4、 剖析Hadoop的安全模式
5、 日志剖析实践

第9个主题:实战ZooKeeper(具备理解并通过命令行和Java两种方式操作ZooKeeper的能力)
1、ZooKeeper架构剖析及集群搭建
2、使用命令行操作ZooKeeper
3、使用Java操作ZooKeeper

第10个主题:实战HBase(具备掌握HBase企业级开发和管理的能力)
1、 HBase架构实现
2、 HBase的数据模型和存储模型
3、 使用CLI操作HBase
4、 使用Java操作HBase
5、 使用MapReduce代码向HBase中导入批量数据

第11个主题:实战Pig(具备掌握Pig企业级开发和管理的能力)
1、 Pig架构
2、 使用Pig操作数据的内幕
3、 使用Pig实例数据

第2个主题:实战Hive(具备掌握Hive企业级开发和管理的能力)
1、 Hive架构剖析
2、 Hive在HDFS中存储实现
3、 使用MySQL作为Hive的Metastore
4、 内部表、分区表、外部表、桶表
5、 视图
6、 自定义Hive的函数

第13个主题:实战Sqoop(具备使用Sqoop自由转换传统关系型数据库和HDFS中数据的能力)
1、Sqoop架构   
2、实战Sqoop把MySQL中的数据导入到HDFS中
3、实战Sqoop把HDFS中的数据导入到MySQL中
4、定义Sqoop任务

第14个主题:实战Flume(具备使用Flume收集和管理分布式日志的能力)
1、 Flume架构体系剖析
2、 Agent配置信息
3、 动态监控文件夹中文件的变化
4、 把数据导入到HDFS中
5、 实例监控文件夹文件的变化并把数据导入到HDFS中

第15个主题:Hadoop系统管理进阶(具备掌握MapReduce内部运行和实现细节并改造MapReduce的能力)
1、 Hadoop的安全模式
2、 系统监控
3、 系统维护
4、 委任节点和接触节点
5、 系统升级
6、 更多的系统管理工具实战
7、 系统管理最佳实践

第16个主题:电信日志项目(具备掌握Hadoop完整项目的分析、开发、部署的全过程的能力)
通过电信商搜集用户接打电话、上网等产生的日志对用户的电话和网络行为进行分析和监控,初步贯穿前面讲解的主要内容,使大家熟悉Hadoop一个完整项目的分析、开发、部署的全过程。