课程大纲

第一部分:Hadoop简介

  • Hadoop历史与概念
  • 生态系统
  • 发行版
  • 高层架构
  • Hadoop的误区
  • Hadoop的挑战
  • 硬件/软件
  • 实验:初识Hadoop

第二部分:HDFS

  • 设计与架构
  • 概念(水平扩展、复制、数据局部性、机架感知)
  • 守护进程:Namenode、Secondary namenode、Data node
  • 通信/心跳
  • 数据完整性
  • 读/写路径
  • Namenode高可用性(HA)、联邦
  • 实验:与HDFS交互

第三部分:MapReduce

  • 概念与架构
  • 守护进程(MRV1):jobtracker/tasktracker
  • 阶段:驱动、映射、洗牌/排序、归约
  • MapReduce版本1与版本2(YARN)
  • MapReduce内部机制
  • Java MapReduce程序简介
  • 实验:运行示例MapReduce程序

第四部分:Pig

  • Pig与Java MapReduce对比
  • Pig作业流程
  • Pig Latin语言
  • 使用Pig进行ETL
  • 转换与连接
  • 用户定义函数(UDF)
  • 实验:编写Pig脚本分析数据

第五部分:Hive

  • 架构与设计
  • 数据类型
  • Hive中的SQL支持
  • 创建Hive表与查询
  • 分区
  • 连接
  • 文本处理
  • 实验:使用Hive处理数据的多个实验

第六部分:HBase

  • 概念与架构
  • HBase与RDBMS、Cassandra对比
  • HBase Java API
  • HBase中的时间序列数据
  • 模式设计
  • 实验:使用Shell与HBase交互;使用HBase Java API编程;模式设计练习

要求

  • 熟悉Java编程语言(大多数编程练习使用Java)
  • 熟悉Linux环境(能够使用Linux命令行,使用vi/nano编辑文件)

实验环境

零安装:无需在学生机器上安装Hadoop软件!将为学生提供一个可用的Hadoop集群。

学生需要准备以下内容

  • SSH客户端(Linux和Mac已自带ssh客户端,Windows推荐使用Putty)
  • 浏览器访问集群,推荐使用Firefox
 28 小时

客户评论 (5)

即将举行的公开课程

课程分类