课程编号:3250578 学 分:4学分
学 时:72学时 (其中:讲课学时36 上机学时:36)
先修课程: 《Linux基础》、《关系数据库基础》、《程序设计基础》、《Java面向对象编程》
后续课程:Spark,《Python编程基础》、《Python数据分析与应用》 适用专业:大数据应用技术 一、课程的性质与目标
《大数据应用开发》本课程是软件技术专业核心课程,大数据技术入门课程。通过学习课程使得学生掌握大数据分析的主要思想和基本步骤,并通过编程练习和典型应用实例加深了解;同时对Hadoop平台应用与开发的一般理论有所了解,如分布式数据收集、分布式数据存储、分布式数据计算、分布式数据展示。
开设本学科的目的是让学生掌握如何使用大数据分析技术解决特定业务领域的问题。完成本课程学习后能够熟练的应用大数据技术解决企业中的实际生产问题。
二、教学条件要求 操作系统:Center OS Hadoop版本:Hadoop2.7.4 开发工具:Eclipse
三、课程的主要内容及基本要求 第1章 初识Hadoop 章名 初识Hadoop 学时 4 1.了解什么是大数据及其特征 学习目标 2.熟悉大数据的典型应用 3.了解Hadoop的发展历史及其版本 4.掌握Hadoop的生态体系 知识点 什么是大数据 了解 √ 掌握 重点 难点 大数据的特征 研究大数据的意义 大数据的应用场景 Hadoop的发展历史 Hadoop的优势 Hadoop的生态体系 Hadoop的版本
第2章 构建Hadoop集群 章名 √ √ √ √ √ √ √ √ √ √ Hadoop集群构建 学时 5 1.了解虚拟机的安装和克隆 2.熟悉Linux系统的网络配置和SSH配置 学习目标 3.掌握Hadoop集群的搭建和配置 4.掌握Hadoop集群测试 5.熟悉Hadoop集群初体验的操作 知识点 虚拟机安装 虚拟机克隆 Linux系统网络配置 SSH服务配置 Hadoop集群部署模式 JDK安装 Hadoop安装 Hadoop集群配置 格式化文件系统 启动和关闭Hadoop集群 了解 √ √ 掌握 √ √ √ √ √ √ √ √ √ √ 重点 √ √ √ √ 难点 √ 通过UI界面查看Hadoop运行状态 Hadoop集群初体验
第3章 HDFS分布式文件系统
章名 HDFS分布式文件系统 1.了解HDFS演变 学时 5 学习目标 2.掌握HDFS特点 3.掌握HDFS的架构和原理 4.掌握HDFS的Shell和Java Api操作 知识点 HDFS的演变 HDFS的基本概念 HDFS的特点 HDFS架构和原理 HDFS的Shell操作 HDFS的Java API操作 了解 √ 掌握 √ √ √ √ √ 重点 √ √ 难点 √ 第4章 MapReduce分布式计算系统 章名 MapReduce分布式计算框架 学时 8 1.理解MapReduce的核心思想 学习目标 2.掌握MapReduce的编程模型 3.掌握MapReduce的工作原理 4.掌握MapReduce常见编程组件的使用 知识点 MapReduce核心思想 MapReduce编程模型 MapReduce编程实例——词频统计 MapReduce工作过程 MapTask工作原理 ReduceTask工作原理 Shuffle工作原理 MapReduce编程组件 MapReduce运行模式 MapReduce性能优化策略 了解 √ 掌握 √ √ √ √ √ √ √ √ √ 重点 √ √ √ √ √ √ 难点 √ √ MapReduce经典案例——倒排索引 MapReduce经典案例——数据去重 MapReduce经典案例——TopN
√ √ √ 第5章 Zookeeper分布式协调服务 章名 Hadoop进阶 学时 10 1.了解Zookeeper的概念和特性 2.理解Zookeeper数据模型 学习目标 3.掌握Zookeeper的Watch机制和选举机制 4.掌握Zookeeper的集群部署 5.掌握Zookeeper的Shell操作和Java API操作 6.熟悉Zookeeper的应用场景 知识点 Zookeeper的简介 Zookeeper的特性 Zookeeper集群角色 Zookeeper的数据模型 Zookeeper的Watch机制 Zookeeper的选举机制 Zookeeper分布式集群部署 Zookeeper Shell操作 Zookeeper Java API操作 Zookeeper典型应用场景 第6章 Hadoop2.0新特性 章名 Hadoop2.0新特性 学时 3 了解 √ √ 掌握 √ √ √ √ √ √ √ √ 重点 √ √ √ 难点 √ 1.掌握YARN的体系结构和工作流程 学习目标 2.掌握HDFS的高可用架构 3.会搭建Hadoop高可用集群 知识点 了解 掌握 重点 难点 Hadoop2.0改进与提升 YARN体系结构 YARN工作流程 HDFS HA的搭建方式 Hadoop的高可用架构 启动Hadoop HA方式
第7章 Hive数据仓库 章名 √ √ √ √ √ √ √ √ Hive数据仓库 学时 7 1.了解Hive的相关功能和特点 学习目标 2.熟悉Hive的简单安装和配置 3.掌握HiveQL的相关操作 知识点 数据仓库简介 数据仓库的结构 数据仓库数据模型 Hive简介 Hive系统架构 Hive工作原理 Hive数据模型 Hive安装模式 Hive的管理方式 Hive内置数据类型 Hive的操作方式
第8章 Flume日志采集系统 章名 学习目标 Flume日志采集系统 1.了解Flume的作用 2.熟悉Flume的运行机制 学时 6 了解 √ √ √ 掌握 √ √ √ √ √ √ √ √ √ 重点 √ √ √ 难点 √ √ √ 3.掌握Flume的安装部署 4.熟悉Flume的可靠性保证 5.熟悉案例——日志采集的编写 知识点 Flume简介 Flume运行机制 Flume日志采集系统结构 Flume基本使用 Flume安装配置 Flume Sources Flume Channels Flume Sinks Flume负载均衡 Flume故障转移 Flume拦截器
第9章 Azkaban工作流管理器 章名 Azkaban工作流管理器 学时 5 了解 √ √ 掌握 √ √ √ √ √ √ √ √ √ 重点 √ 难点 √ 1.了解Azkaban的结构 学习目标 2.掌握Azkaban的部署 3.熟悉Azkaban的基本使用 知识点 工作流管理器简介 Azkaban特点 Azkaban组织结构 Azkaban部署模式 Azkaban安装配置 Azkaban启动方式 了解 √ √ √ 掌握 √ √ √ 重点 难点 Azkaban Job Azkaban工作流 Azkaban嵌入流 依赖任务调度管理 MapReduce任务调度管理 Hive脚本任务调度管理
第10章 Sqoop数据迁移 章名 √ √ √ √ √ √ Sqoop数据迁移 学时 1.了解Sqoop基本概念 3 学习目标 2.掌握Sqoop安装配置 3.熟悉Sqoop常用的相关指令 4.掌握使用Sqoop进行导入导出 知识点 Sqoop简介 Sqoop导入导出工作原理 Sqoop安装配置 Sqoop指令介绍 MySQL表数据导入HDFS 增量导入 MySQL表数据导入Hive MySQL表数据子集导入 Sqoop数据导出
了解 √ 掌握 √ √ √ √ √ √ √ √ 重点 √ 难点 第11章 综合项目——网站流量日志数据分析系统 章名 综合项目——网站流量日志数据分析系统 学时 7 学习目标 1.熟悉日志分析系统的架构 2.熟悉系统环境搭建的步骤 3.掌握日志分析系统业务流程 4.掌握人均浏览页面模块的实现方法 知识点 系统背景介绍 系统架构设计 模块开发—数据预处理 模块开发—数据仓库开发 模块开发—数据分析 模块开发—数据导出 模块开发—日志分析系统报表展示 四、学时分配 章目 第1章 初识Hadoop 第2章 构建Hadoop集群 第3章 HDFS分布式文件系统 第4章 MapReduce分布式计算系统 第5章 Zookeeper分布式协调服务 第6章 Hadoop2.0新特性 第7章 Hive数据仓库 第8章 HBase分布式数据库 第9章 Flume日志采集系统 第10章 Azkaban工作流管理器 第11章 Sqoop数据迁移 第12章 综合项目——网站流量日志数据分析系统 合计 五、考核模式与成绩评定办法
本课程为考试课程,期末考试采用百分制的闭卷考试模式。学生的考试成绩由平时成绩(30%)和期末考试(70%)组成,其中,平时成绩包括出勤(5%)、作业(5%)、上机成绩(20%)。
讲课 2学时 4学时 4学时 3学时 3学时 2学时 4学时 4学时 3学时 3学时 2学时 2学时 上机 0学时 4学时 4学时 3学时 3学时 2学时 4学时 4学时 3学时 3学时 2学时 4学时 合计 2学时 8学时 8学时 6学时 3学时 4学时 8学时 8学时 6学时 6学时 4学时 6学时 了解 √ 掌握 √ √ √ √ √ √ 重点 √ 难点 √ √ 36学时 36学时 72学时 六、选用教材和主要参考书
本大纲是参考教材《Hadoop大数据技术原理与应用》所设计的。 七、大纲说明
本课程的授课模式为:课堂授课+上机,其中,课堂主要采用多媒体的方式进行授课,并且会通过测试题阶段测试学生的掌握程度;上机主要是编写程序,要求学生动手完成指定的程序设计或验证。
因篇幅问题不能全部显示,请点此查看更多更全内容