第一阶段:Linux
升级说明
优化了课程体系和讲解内容,新增了用户权限管理、网络管理等模块,添加了Linux的脚本编程
主要内容
Linux体系结构、文件系统、权限管理、Linux的系统分支、Linux的命令使用方式、Linux的文件系统、软件安装、权限管理、shell编程入门和提升
可解决问题
每个程序员岗位,都要求掌握Linux。在步入大数据殿堂之前,先带领大家快速掌握大数据的必备技能,以便更好地学习Hadoop, HDFS, MapReduce, Hive, HBase, Spark,Flink等众多课程。
可掌握的核心能力
冯诺依曼体系硬件组成五大模块、Linux系统版本选择、Linux命令学习策略、Linux文件系统、Linux网络命令、Linux用户组权限、Linux软件安装、Linux脚本编程、Linux脚本编程进阶
第二阶段:Nginx
升级说明
详细讲解Nginx作为反向代理进行负载均衡的实现,基于具体场景为后续大数据项目数据采集提供支持。
主要内容
做静态资源服务器,做反向代理服务器,做负载均衡服务器各方面的理论和应用讲解
可解决问题
作为Web服务器,Nginx处理静态文件、索引文件,自动索引的效率非常高,作为代理服务器,Nginx可以实现无缓存的反向代理加速,提高网站运行速度
可掌握的核心能力
在性能方面,最大可以支持对5万个并发连接数的响应.在稳定性方面,Nginx采取了分阶段资源分配技术,在高可用性方面,Nginx支持热部署,启动速度特别迅速
第三阶段:Zookeeper
升级说明
服务的管理端口统一,允许延迟事务日志刷新,ZooKeeper服务器中的审核日志记录
主要内容
主要讲解了Paxos算法原理、ZooKeeper具体的应用场景、ZNode数据结构、事件监听原理刨铣、广播模式刨铣、集群搭建实战、分布式协调实战等知识
可解决问题
基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper 就将负责通知已经在 Zookeeper 上注册的那些观察者做出相应的反应,从而实现集群中类似 Master/Slave 管理模式
可掌握的核心能力
数据一致性的概念,搭建Zookeeper环境,熟悉命令和监听机制
第四阶段:Hadoop-HDFS
升级说明
Hadoop3.x技术引用、分布式集群搭建、底层源码讲解
主要内容
Hadoop的大数据思维,10大排序算法,底层Block组成和架构,大数据存储策略,Hadoop的高可用和联邦机制
可解决问题
在企业中搭建集群环境,深入了解hdfs底层原理,例如数据存储,数据安全,数据迁移等常用功能。为以后的大数据学习提供基础
可掌握的核心能力
HDFS分布式文件存储架构、HDFS格式化NameNode两次的解救方案、NameNode基于内存存储数据安全策略、ZKFC节点功能介绍与脑裂预防策略
第五阶段:Hadoop-MapReduce
升级说明
使用的Hadoop3.x框架,从源码出发打通所有mapreduce流程
主要内容
捋顺MapReduce计算的流程、Hadoop2.x新特性资源协调框架、源码进行分析、用新案例验证MapReduce计算能力
可解决问题
MapReduce将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了两个函数:Map和Reduce。它采用“分而治之”策略,一个存储在分布式文件系统中的大规模数据集,会被切分成许多独立的分片(split),这些分片可以被多个Map任务并行处理
可掌握的核心能力
MapReduce思想之分12阶段介绍、MapReduce思想之流程分析、数据流转监控,MapReduce源码分析
第六阶段:Hive
升级说明
增加大量项目案例,引用电影top250数据分析
主要内容
整理Hive的系统架构,搭建Hive运行环境、学习Hql语句,学习UDAF,比如开窗函数
可解决问题
hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。
可掌握的核心能力
Hive与传统数据库的对比、Hive环境搭建与三种连接方式、Hive数据类型与创建表、Hive数据分区思想、Hive排序开窗函数、Hive的企业级优化
第七阶段:HBase
升级说明
引用最稳定的Hbase版本,增加业务分析学习
主要内容
分布式非关系型数据库、Hbase技巧性的学习,如何设计表结构,如何基于Hbase的四维寻址设计RowKey、Habse性能的优化
可解决问题
HBase作为面向列的数据库运行在HDFS之上,HDFS缺乏随即读写操作,HBase正是为此而出现。HBase以以键值对的形式存储。它的目标就是快速在主机内数十亿行数据中定位所需的数据并访问它。
可掌握的核心能力
HBase架构模型、HBase读写流程、HBase操作命令、Hbase单表多表数据设计、HBase常用优化
第八阶段:Flume
升级说明
增加热门技术,增加技术课时比重
主要内容
讲解Flume新版本的相关信息,比如Flume如何实现高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统
可解决问题
Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力
可掌握的核心能力
Flume组件详解、Flume安装、Flume特性,有点,执行流程,推送和拉取过程、案例
第九阶段:DataX
升级说明
自定义的编程优化,增加热门数据库
主要内容
本章讲解的Datax主要功能是数据迁移,DataX本身作为数据同步框架
可解决问题
将不同数据源的同步抽象为从源头数据源读取数据的Reader插件,以及向目标端写入数据的Writer插件,理论上DataX框架可以支持任意数据源类型的数据同步工作。
可掌握的核心能力
DataX安装、DataX—web安装、mysql-HDFS数据迁移、ORACLE-Hive的数据的传输
第十阶段:Azkaban
升级说明
增加热门技术,增加技术课时比重
主要内容
Azkaban是在LinkedIn(领英)上创建的用于运行Hadoop作业的批处理工作流作业调度程序。Azkaban通过工作依赖性解决订购问题,并提供易于使用的Web用户界面来维护和跟踪您的工作流程。
可解决问题
多个任务单元之间往往有着强依赖关系,上游任务执行并成功,下游任务才可以执行
可掌握的核心能力
调度工具对比、Azkaban架构、Azkaban三种部署模式、集群搭建 、实战案例
第十一阶段:Tez
升级说明
增加热门技术、增加技术课时比重
主要内容
Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。Tez并不直接面向最终用户——事实上它允许开发者为最终用户构建性能更快、扩展性更好的应用程序。Hadoop传统上是一个大量数据批处理平台。
可解决问题
有很多用例需要近乎实时的查询处理性能。还有一些工作则不太适合MapReduce,例如机器学习。Tez的目的就是帮助Hadoop处理这些用例场景。
可掌握的核心能力
Tez概述、Tez编译、Tez 安装、Hive on Tez 、Tez参数、Tez优化
第十二阶段:电商日志分析
升级说明
编程优化,增加热门技术,增加技术课时比重、增加热门业务
主要内容
项目以某电商网站真实的业务数据架构为基础,将数据从收集到使用通过前端应用程序,后端程序,数据分析,平台部署等多方位的闭环的业务实现。形成了一套符合教学体系的电商日志分析项目,主要通过离线技术来实现项目。
可解决问题
用户基本信息分析、浏览器信息分析、地域信息分析、用户浏览深度分析、外链信息分析、订单信息分析、事件分析
可掌握的核心能力
项目系统架构、项目数据流程、PC端JS和SDK事件、项目数据模型、NginxLog文件服务、Flume-ng、Sqoop 、Hive和HBase的整合、Hive on Tez 、Oozie搭建、DataX 3安装、Azkaban 3 集群搭建 、数据采集、数据消费、Mysql表结构设计、Transformer代码编写、Transformer打包测试、Hive数仓代码代码编写、Hive数仓代码验证、母婴消费洞察、任务调度、服务器调优、代码调优
第十三阶段:Redis
升级说明
增加热门技术,精讲技术
主要内容
讲解Redis的环境安装,运行环境和常见命令,在单机环境下体验Redis的高性能与缓存特性
可解决问题
它可以用作数据库、缓存和消息中间件
可掌握的核心能力
缓存Cache、Redis的介绍、Redis的命令、Redis的事务机制、数据的持久化、主从复制集群、Redis的哨兵、Redis的高可用、一致性Hash、搭建集群环境
第十四阶段:Kafka
升级说明
编程优化,增加热门技术、精讲技术
主要内容
主要讲述大数据中的消息中间件如何工作和如何搭建环境,另外afka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。它已经应用到各个公司的平台
可解决问题
以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能、高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输、同时支持离线数据处理和实时数据处理
可掌握的核心能力
异步通信原理、消息系统原理、Kafka简介、Kafka系统架构、Kafka环境搭建、Kafka数据检索机制、数据的安全性、JavaAPI、Kafka优化、Flume+Kafka集成
第十五阶段:Scala
升级说明
Scala语言编程优化,增加scala核心功能应用,提升spark应用课程内容占比。
主要内容
面向对象 函数式编程 集合操作 模式匹配 特征特质
可解决问题
在掌握java语言的基础下快速掌握scala开发,为后续spark应用的开发做准备。
可掌握的核心能力
掌握Scala程序基础数据类型 掌握开发中常用集合、字符串等操作 掌握scala函数式编程 掌握隐式转换操作
第十六阶段:Spark
升级说明
RDD篇编程进阶多样化,SQL篇自定义函数实操,SparkStreaming提供7*24不间断运行思路及考量
主要内容
Spark的入门安装部署、Spark Core部分的基本API使用熟练、编程进阶、自定义累加器和广播变量的使用和原理掌握、SparkSQL的编程掌握和如何自定义函数、SparkSreaming的应用解析、Spark的内核源码详解(包括部署、启动、任务划分调度、内存管理等)
可解决问题
累加器广播变量的实操、不同数据源不同的处理思路,背压机制
可掌握的核心能力
sparkRDD编程,SQL中dataFrame的具体应用对应后期机器学习,sparkStreaming准实时计算初识。
第十七阶段:Spark优化
升级说明
企业级调优版本升级
主要内容
资源调优 并行度调优 代码调优 数据本地化 内存调优 数据倾斜问题解决
可解决问题
提供企业级spark任务调优的通用解决方案。
可掌握的核心能力
Spark的企业级调优策略在实际的任务提交等操作下进行实操调整。
第十八阶段:车流量分析
升级说明
多语言spark开发
主要内容
卡扣流量分析模块 随机抽取车辆信息等topN业务
可解决问题
topN常见业务场景处理 自定义累加器实际应用
可掌握的核心能力
针对项目熟悉数据流程,代码操作流程,开发流程。强化spark应用程序的代码编写。
第十九阶段:Kylin
升级说明
Kylin核心思想加深对数仓的理解
主要内容
Kylin的安装部署 对接数据源构建模型
可解决问题
实际工作中模型的构建以及对于模型构建的不同层级剪枝优化。
可掌握的核心能力
增量cube构建,cube的cuboid剪枝优化。
第二十阶段:Flink
升级说明
flink table api和sql重构新功能以及自身架构变化详解
主要内容
流批api 集群架构 window窗口机制 时间类型 水印 各类连接器 容错机制 CEP复杂事件编程
可解决问题
熟练使用Flink框架分析计算各种指标
可掌握的核心能力
熟练掌握Flink的基本架构以及流式数据处理思想,熟练使用Flink多种Soure、Sink处理数据,熟练使用基本API、Window API 、状态函数、Flink SQL、Flink CEP复杂事件处理等
第二十一阶段:机器学习
升级说明
SparkMlib随着spark版本迁移所带来的api的变化。
主要内容
线性回归 贝叶斯分类 Kmeans聚类 关联规则 决策树 随机森林 混淆矩阵 ROC&AOC
可解决问题
运行现有机器学习算法,对现有数据训练处模型,进行相应结果的预测(分类等)
可掌握的核心能力
掌握常用的回归、分类、聚类算法的具体原理。理解算法的使用意义。