天数 | 授课大纲 | 要点 | 详细内容 |
4天 | Linux操作系统基础 | Linux的介绍和安装 | linux系统简介与安装 |
vmware虚拟机网络配置 | |||
Linux常用命令 | linux常用命令--文件操作 | ||
linux常用命令--用户管理与权限 | |||
linux常用命令--系统管理 | |||
linux常用命令--免密登陆配置与网络管理 | |||
linux环境基本配置 | 主机名的修改 | ||
IP地址的修改 | |||
host文件配置 | |||
linux防火墙配置 | |||
linux上常用软件安装 | JDK的安装 | ||
tomcat的安装 | |||
RPM包管理器的使用 | |||
MySQL安装 | |||
linux本地yum源配置及yum软件安装 | |||
Linux高级命令 | linux高级文本处理命令cut、sed、awk | ||
linux定时任务crontab | |||
shell编程 | shell编程--基本语法 | ||
shell编程--流程控制 | |||
shell编程--函数 | |||
shell编程--综合案例--自动化部署脚本 | |||
MySQL查询增强 | MySQL复杂查询实战 | 分组查询实战 | |
关联查询实战 | |||
子查询实战 | |||
常见SQL面试题讲解 | |||
6天 | HADOOP&HDFS基础 | HADOOP概述 | hadoop背景介绍 |
分布式系统概述 | |||
离线数据分析流程介绍 | |||
HADOOP集群搭建 | 集群搭建 | ||
服务器环境准备 | |||
免密登陆配置 | |||
配置参数修改说明 | |||
HADOOP集群操作入门 | 集群启动停止 | ||
集群状态查看 | |||
命令行上传下载文件 | |||
MR示例程序运行 | |||
HDFS基础 | HDFS的概念和特性 | ||
HDFS的shell(命令行客户端)操作 | |||
HDFS应用与加强 | HDFS编程 | HDFS的客户端编程API | |
案例1:开发shell采集脚本 | |||
案例2:开发JAVA采集程序 | |||
HDFS工作机制 | HDFS工作机制整体概述 | ||
NAMENODE的工作机制 | |||
DATANODE的工作机制 | |||
HDFS集群故障恢复 | 元数据损坏恢复 | ||
安全模式的处理 | |||
MAPREDUCE编程模型 | MAPREDUCE编程模型 | MAPREDUCE计算模型解析 | |
MAPREDUCE编程规范及示例编写 | |||
MAPREDUCE程序运行模式及debug方法 | |||
MAPREDUCE编程实战 | MAPREDUCE编程实例1:序列化应用 | ||
MAPREDUCE编程实例2:secondary sort | |||
MAPREDUCE编程实例3:partition应用 | |||
MAPREDUCE编程实例4:好友分析 | |||
MAPREDUCE编程实例5:combiner应用 | |||
MAPREDUCE高级特性 | MAPREDUCE高级编程接口 | 自定义Inputformat | |
自定义Outputformat | |||
自定义Groupingcomparator | |||
DistributeCache应用:map端join | |||
MAPREDUCE高级特性应用 | MAPREUDCE的数据压缩 | ||
MAPREDUCE的shuffle机制 | |||
MAPREDUCE的并行度 | |||
MAPREUDCE调优解析 | |||
高级特性编程实战 | MAPREDUCE编程案例:流量日志增强 | ||
HIVE | HIVE安装 | hive简介 | |
hive安装部署 | |||
HIVE工作机制 | hive元数库概念 | ||
hive数据存储 | |||
HQL基本语法 | DDL | ||
DML | |||
HIVE | HIVE数据类型详解 | 基本数据类型 | |
复合数据类型 | |||
HIVE函数详解 | 内置函数 | ||
自定义函数编程 | |||
HIVE综合案例 | 日志数据统计分析 | ||
HIVE调优 | HQL调优 | ||
参数调优 | |||
结合MAPREDUCE调优 | |||
数据倾斜调优 | |||
FLUME/SQOOP/AZKABAN | FLUME | FLUME入门 | |
FLUME应用实例 | |||
FLUME自定义拦截器案例:数据过滤与脱敏 | |||
FLUME高可用集群搭建 | |||
SQOOP | SQOOP入门 | ||
SQOOP应用实例 | |||
AZKABAN | AZKABAN入门 | ||
AZKABAN安装部署 | |||
AZKABAN应用实例 | |||
6天 | 大数据实战项目(一) 某亿级用户社交App数据分析系统 | 项目简介 | 项目概述 |
项目演示 | |||
项目业务背景 | |||
数据处理流程 | |||
数据采集 | 定时打包 | ||
周期汇总上传 | |||
采集监控 | |||
数据预处理 | 数据字段提取、清洗 | ||
数据按产品分目录存放 | |||
活跃用户统计 | 业务介绍 | ||
Hive数据仓库建模 | |||
MR统计开发 | |||
数据入库Hive | |||
新增用户渠道分析 | 渠道相关业务介绍 | ||
App市场渠道 | |||
广告渠道 | |||
自有网站渠道 | |||
搜索引擎渠道 | |||
其他渠道 | |||
用户升级统计 | 用户升级业务说明 | ||
当日各渠道升级用户分析 | |||
升级漏斗模型分析 | |||
老用户升级分析 | |||
累计用户统计 | 各渠道累计用户统计 | ||
全量累计用户统计 | |||
累计用户趋势对比统计 | |||
报表展示 | 技术介绍 | ||
环境搭建 | |||
查询的使用 | |||
报表展示 | |||
4天 | Scala函数式变成 | Scala快速入门 | scala编程介绍 |
scala相关软件安装 | |||
scala基础语法 | |||
scala编程介绍 | |||
scala相关软件安装 | |||
scala基础语法 | |||
函数式编程 | scala方法和函数 | ||
scala函数式编程特点 | |||
scala数组和集合 | |||
scala编程练习(单机版WordCount) | |||
面向对象 | 类的定义 | ||
构造器与辅助构造器 | |||
继承 | |||
实现特质 | |||
模式匹配 | 按类型匹配 | ||
case class | |||
Option/Some/None | |||
偏函数 | |||
Actor并发编程 | Actor编程模型简介 | ||
Actor编程模型简介与Java传统多线程的区别 | |||
Actor编程实战 | |||
高阶函数 | 柯里化 | ||
call by name/call by value | |||
隐式转换 | 隐式转换的作用 | ||
隐式转换的优点 | |||
隐式转换原理剖析 | |||
隐式转换案例 | |||
分布式RPC编程案例 | RPC编程实现原理介绍 | ||
Akka框架介绍 | |||
Akka原理剖析 | |||
Akka入门案例 | |||
实战:RPC编程实战 | |||
10天 | Spark内存计算 (以Spark2.x最新版本为主, 同时兼顾Spark1.x) | Spark Core | Spark简介 |
Spark和Hadoop、Storm的对比 | |||
Spark集群部署 | |||
Spark高可用集群搭建 | |||
Spark-Shell的使用 | |||
Spark整合HDFS | |||
用Scala语言编写Spark应用程序WordCount | |||
用Java语言编写Spark应用程序WordCount | |||
Spark常用算子介绍 | |||
Transformation算子 | |||
Action算子 | |||
RDD简介 | |||
RDD的特点说明 | |||
RDD的比较复杂的算子 | |||
案例:用户最常出现的位置 | |||
Spark的WordCount执行相信流程解析 | |||
RDD的缓存机制 | |||
案例:URL求TopN | |||
自定义分区 | |||
二次排序 | |||
自定义排序 | |||
RDD的checkpoint机制 | |||
广播变量 | |||
案例:根据IP求归属地 | |||
Spark远程调试 | |||
Maven编译Spark源码 | |||
宽依赖和窄依赖 | |||
RDD的血统关系 | |||
DAG切分过程 | |||
案例:利用JdbcRDD导入数据 | |||
Spark SQL | Spark-SQL介绍 | ||
Spark-SQL的使用 | |||
Spark2.0的Spark-SQL的使用和新特性 | |||
DataFrame和DataSet的使用 | |||
Spark-SQL加载并处理MySQL中的数据 | |||
利用Spark-SQL讲数据写入到MySQL中 | |||
Spark-SQL整合Hive | |||
Spark-SQL综合案例1 | |||
Spark-SQL综合案例2 | |||
SparkStreaming | Spark-Streaming简介 | ||
编写Spark-Streaming的WordCount程序 | |||
可更新状态的WordCount程序 | |||
Spark-Streaming整合Flume | |||
Kafka的介绍 | |||
Kafka集群的安装 | |||
Kafak相关概念介绍 | |||
Kafka生产者和消费者程序编写 | |||
Kafka的Topic的相关操作 | |||
Kafka原理深入 | |||
Spark-Streaming整合Kafka | |||
案例:Spark-Streaming实时统计小区流量 | |||
Spark-Streaming窗口函数 | |||
Spark-Streaming直连方式整合Kafka | |||
直连方式原理分析 | |||
Spark On Yarn和Spark2.0新特性 | yarn知识点回顾 | ||
Spark On YARN两种方式Cluster和Client | |||
两种方式过程分析 | |||
Spark On YARN常见问题分析 | |||
Spark2.0简介 | |||
Spark2.0安装部署 | |||
DataSet的使用 | |||
利用Spark2.0编写一个WordCount程序 | |||
Spark2.0常用算子的使用 | |||
Spark2.0综合案例 | |||
Spark源码分析 | Master启动流程源码分析 | ||
Worker启动流程源码分析 | |||
Spark应用程序提交构成源码分析 | |||
SparkContext创建过程源码分析 | |||
ClientActor提交任务给Master过程源码分析 | |||
Master资源调度源码分析 | |||
Master通知Worker启动Executor过程源码分析 | |||
Executor跟DriverActor通信过程源码分析 | |||
任务提交整理流程源码分析 | |||
DAGSchedule执行过程分析 | |||
DAG切分Stage过程源码分析 | |||
TaskScheduler提交Task过程源码分析 | |||
Executor上执行Task过程源码分析 | |||
6天 | 大数据实战项目(二) 精准广告推送系统数据平台 | 业务介绍及BI离线分析 | 实时竞价RTB广告系统数据业务流程 |
实时竞价RTB广告系统技术架构 | |||
实时竞价RTB广告系统数据埋点和采集/flume插件开发 | |||
实时竞价RTB广告系统离线BI报表分析 | |||
数据采集 | 页面数据采集埋点 | ||
数据采集汇聚(字段过滤,数据脱敏处理) | |||
数据存储格式Parquet应用及详解 | |||
用户画像分析 | 数据清洗/预处理 | ||
用户画像——人口属性标签分析 | |||
用户画像——兴趣爱好标签分析 | |||
用户画像——地理位置信息标签分析 | |||
地理位置信息分析难点技术实现——GIS算法结合HBASE应用 | |||
用户画像——职业属性标签分析 | |||
其他更多属性标签分析 | |||
数据关联聚合分析 | 用户数据唯一标识识别 | ||
唯一标识识别核心技术点——spark graphx图计算 | |||
离散数据关联聚合 | |||
广告效果实时数据监控分析 | PV UV IP分析 | ||
点击量、点击率 | |||
参与竞价数、竞价成功数 | |||
消费 | |||
转化率分析 | |||
曝光率分析 | |||
报表可视化平台系统 | SSM框架搭建 | ||
Echarts应用 |
最能让人感到快乐的事,莫过于经过一番努力后,所有东西正慢慢变成你想要的样子!