第一阶段-Linux和高并发
章节名称 主要学习方向

◆ 可掌握的核心技能

√ 操作系统发展历史
√ Linux 系统安装使用
√ Shell 脚本编写
√ Linux 文件系统操作及权限操作
√ grep、sed、awk 操作
√ Linux 软件安装与进程管理
√ TCP/IP 协议
√ LVS、DNAT、DR、TUN 模式及调度算法
√ keepalived 原理及使用
√ Nginx
√ Session 一致性

◆ 学习目的

这章是基础课程,帮大家进入大数据领域打好
Linux基础,以便更好地学习 Hadoop,
MapReduce,Yarn,Storm,Spark,Flink 等众多课程。因为企业中无一例外的是使用Linux来搭建或部署项目。

◆ 可解决的现实问题及价值所在

通过本阶段的学习大家将会了解大数据的源头,数据从何而来,继而更好的了解大数据。并且通过学习如果处理大型网站高并发问题反向更深入的学习了 Linux,同时站在了更高的角度去触探架构,企业中如何使用 Linux。

Linux 基础
1.操作系统概述
2.Linux 内核与GNU 介绍
3.Linux 发行版介绍
4.虚拟化安装centos / 虚拟网络编辑器
5.规划多主机网络通信
6.虚拟化管理快照与克隆
7.SSH 客户端使用与配置
Linux 初级
1.Linux 命令行原理
2.help内部命令帮助
3.man 命令8种帮助手册
4.df/du 文件系统分析
5.文件系统HFS 规范
6.文件系统管理命令
7.bash的{}、$扩展
Linux 文本操作
1.文件内容预览命令
2.管道的使用
3.基于管道的文件游标预览
4.日志文件追踪
5.vi命令的快捷操作
6.vi命令的编辑模式
7.vi命令的末行模式
Linux 文本分析
1.grep检索文件 / 正则表达式
2.文本分析命令cut
3.文本分析命令sort
4.文本分析命令wc
5.文本分析命令sed
6.sed 案例:正则和s命令另类使用
7.文本分析命令awk
8.awk 脚本案例:统计报表
Linux 管理
1.系统服务配置文件
2.用户管理
3.组管理
4.权限管理
5.案例:多用户角色资源绑定
6.网络管理
7.进程管理
8.后台服务管理
Linux 安装管理
1.操作系统软件安装原理
2.源码编译安装及原理
3.RPM 包管理机制原理
4.RPM 的查询、安装、卸载
5.YUM 仓库原理
6.YUM 本地、局域网仓库源配置
7.案例:维护多个YUM源
8.YUM 安装中文帮助文档
Linux 高级
1.shell 原理、命令原理
2.shell 解释器的4种脚本执行方式
3.shell 函数、内部命令、外部命令总结
4.文件描述符与重定向
5.输出重定向的6 种方式
6.输入重定向的4 种方式
7.案例:重定向http协议到网站请求主页
Linux 脚本编程
1.本地、局部变量 / 位置、特殊变量
2.父子进程、环境变量
3.linux 中for 进程原理 / 管道的子进程执行原理
4.引用、命令替换扩展
5.命令状态与逻辑判断
6.算数表达式及bash扩展 / 条件表达式
7.流程控制语句&bash词的拆分扩展
Linux 脚本案例
1.shell 脚本:用户管理
2.shell 脚本:文件管理
3.shell 脚本:增强for 循环遍历文件
4.shell 脚本:游标for 循环遍历文件
5.shell 脚本:重定向while循环遍历文件
6.shell 脚本:管道+while 循环遍历文件
7.bash解释器的7 中命令扩展总结
网络基础
1.高并发及解决方案概述
2.TCP/IP协议资深讲解:应用层
3.TCP/IP协议资深讲解:传输控制层
4.TCP/IP协议资深讲解:TCP协议/报文/三次握手
5.TCP/IP协议资深讲解:网络层
6.TCP/IP协议资深讲解:路由表和 IP 协议原理
7.TCP/IP协议资深讲解:链路层
8.TCP/IP协议资深讲解:ARP协议及交换机协议
四层负载均衡
1.四层负载均衡LVS 拓扑
2.NAT 网络原理
3.LVS 的DNAT模式分析
4.LVS 的DR模式分析
5.LVS 的TUN 模式分析
6.LVS 的静态调度算法
7.LVS 的动态调度算法 / 内核配置ARP 协议
8.LVS 的命令讲解 / LVS 的DR模式实验搭建
Keepalive 高可用
1.高可用概述
2.健康检查及故障迁移策略
3.分布式选主策略
4.keepalived 原理
5.keepalived 配置文件详解
6.基于keepalived的高可用 LVS
7.高可用验证
8.后端健康检查验证
Nginx 原理与配置
1.单点性能压力下的面向服务开发理论
2.反向代理服务器原理
3.Nginx 介绍 / Nginx和 Apache 的httpd 对比
4.IO的阻塞模型和异步非阻塞模型
5.Nginx 角色框架原理 / Nginx的内核参数配置
6.Nginx 的内核sendfile零拷贝原理
7.Nginx 的TCP 配置
Nginx 反向代理与负载均衡
1.Nginx 的虚拟服务器原理
2.Nginx 的location匹配规则
3.Nginx 的自动索引
4.Nginx 的反向代理服务器配置
5.Nginx 的upstream负载均衡配置
6.Nginx 的DNS 负载均衡配置
7.Nginx 负载均衡下数据一致性解决方案
Session 和缓存
1.Session 一致性问题
2.Session 复制
3.Session 共享
4.Session 同步
5.Memcached的缓存
6.K-V 格式缓存
7.Tomcat和 Memcache / 缓存服务器
第二阶段-Hadoop生态体系
章节名称 主要学习方向

◆ 可掌握的核心技能

√ Hadoop 生态圈技术栈
√ HDFS 架构原理
√ MapReduce 执行原理
√ Yarn 资源调度原理
√ MapReduce 切片
√ MapReduce 案例
√ Hive 架构原理
√ Hbase 架构原理
√ Hive DDL、Hive DML
√ Hbase 安全管理
√ Flume 架构与原理
√ Sqoop 架构与原理
√ zookeeper 集群与使用
√ Coludera manager 架构与原理
√ CDH 使用
√ Hue 使用
√ impala 架构与原理
√ oozie 使用

◆ 学习目的

听过大数据,必听过hadoop,此部分带领大家了解hadoop的用途,在大数据中的用途,以及快速搭建一个 hadoop 的生产环境,在本过程中不仅将用到前面的 Linux 知识,而且会对hadoop的架构有深入的理解,并未你以后架构大数据项目打下坚实基础。Hadoop生态体系不仅仅包含 HDFS,其生态圈技术及其广泛,例如:MapReduce、Yarn、Hive、 HBase、Hue、Impala、Flume、Sqoop 等技术都术语Hadoop生态体系范畴,通过本阶段的学习,可以系统的掌握以上各个知识点。

◆ 可解决的现实问题及价值所在

通过本阶段的学习大家会系统的了解大数据的前世今生,知道为何存在分布式存储以及分布式存储在企业级中的应用是什么样的?如何采用更好的方式对数据进行管理、分析、查询、如何对集群更好的进行统一部署管理、如何对数据结果快速响应等等,本阶段,我们将会从各个方面学习以上问题的解决方式。

HDFS概念
1.1T文件处理
2.Hadoop历史 / Hadoop架构
3.NameNode 讲解
4.SecondaryNameNode讲解
5.DataNode 与副本防治策略
6.HDFS权限 / HDFS安全模式
7.HDFS文件上传流程 / HDFS读文件流程
8.伪分布式集群搭建
9.hadoop完全分布式集群搭建
10.hadoop3 新特性
11.NameNode的Federation
12.NameNode-HA
13.NameNode-HA 集群搭建
14.NameNode-HA 手动切换
15.NameNode-HA 自动切换
16.java 客户端操作HDFS
MapReduce
1.MapReduce简介与原语
2.MapReduce执行流程
3.二次排序
4.MapReduce作业提交流程
5.MapReduce作业执行流程
6.YARN-ResourceManager-HA搭建
7.运行自带的wordcount 程序
8.手写wordcount 程序
9.MapReduce作业提交流程源码解析
10.作业切片计算的源码解析
11.MapTask 输入方式的源码解析
12.MapTask 执行流程源码解析
13.MapTask 输出方式的源码解析
14.MapTask 环形缓冲区源码解析
15.RedueTask的shuffle 源码解析
16.ReduceTask分组的源码解析
17.ReduceTask输出的源码解析
MapReduce 案例
1.天气案例需求分析/天气案例映射为MR原语
2.天气案例键值对设计/天气案例开发和运行
3.天气案例排序比较器分组比较器设计
4.好友推荐需求分析/好友推荐映射为MR原语
5.好友推荐键值对设计/好友推荐开发和运行/好友推荐TopN
6.PageRank简介及算法介绍/PageRank映射为MR原语
7.PageRank 键值对设计/PageRank 编码和运行
8.TFIDF 简介及算法/TFIDF 映射为MR原语
9.TFIDF 键值对设计/TFIDF 编码和运行
10.itemCF 简介及算法/itemCF 键值对设计/itemCF 编码和运行
Hive架构
1.hive的介绍
2.数据仓库概念讲解
3.数据仓库与数据库区别
4.Hive的架构原理
5.Hive元数据讲解
6.Hive的使用场景
7.Hive的优缺点
8.Hive的执行引擎
9.Hive操作符
10.Hive 语法解析
11.linux环境下mysql安装
12.mysql登录权限修改
13.Hive 三种安装搭建模式
14.Hive 元数据存储到mysql
15.基于内存数据库模式搭建
16.基于远程数据库模式搭建
17.基于远程数据库服务搭建
18.Hive 配置文件讲解 / Hive 命令操作
Hive DDL
1.Hive基础数据类型
2.Hive复杂数据类型
3.Hive数据类型转换
4.Hive创建数据库
5.Hive创建表三种方式
6.Hive创建管理表
7.Hive创建外部表
8.Hive数据读取规则Row Format
9.Hive数据读取规则 Serde
10.Hive 静态分区管理
11.Hive 动态分区管理
12.Hive 删除表
13.Hive 修改表
14.Hive 分桶表管理
15.Hive 视图
16.Hive 索引
Hive DML
1.Hive从本地加载数据
2.Hive从hdfs 加载数据
3.Hive通过查询插入数据
4.Hive插入数据到指定目录
5.Hive insert values 插入操作
6.Hive事务管理
7.Hive事务特性
8.Hive事务配置
9.Hive修改数据/Hive删除数据/Hive 清空数据
Hive查询访问
1.Hive全表查询
2.Hive条件查询
3.Hive分组查询
4.Hive运算符
5.Hive内置函数
6.Hive自定义函数
7.Hive表连接
8.Hive排序方式
9.Hive嵌套查询 / Hive 行转列
10.Hive 命令行方式
11.Hive 元数据管理
12.Hiveserver2 讲解
13.Hive beeline客户端讲解
14.Hive JDBC 操作
15.Hive 参数
16.Hive 变量
17.Hive 脚本运行方式
18.Hive GUI方式
Hive安全管理与压缩
1.Hive授权模式
2.Hive Legacy Mode
3.Hive 基于SQL 标准授权模型
4.Hive 基于元数据授权模型
5.Hive角色管理
6.Hive授权命令
7.Hive回收权限命令
8.Hive存储压缩管理
9.Hive列式存储/Hive行式存储
10.Hive textfile
11.Hive sequencefile
12.Hive orc file
13.Hive parquet file
14.Hive map端输出/Hive reduce 端输出
Hbase 架构与操作
1.hbase 介绍/NoSQL 介绍
2.Hbase 特点/Hbase 存储数据结构
3.Hbase 数据模型/Hbase 表结构介绍
4.Hbase 架构图/Hbase角色
5.Hbase 内存结构介绍
6.Hbase 存储数据结构LSM树
7.Hbase 写数据流程 /Hbase读数据流程
8.Hbase standalone模式安装
9.Hbase 完全分布式安装
10.Hbase 高可用
11.Hbase搭建注意
12.Hbase基本命令
13.Hbase DDL 命令/Hbase DML 命令
14.Hbase命名空间命令
Hbase 压缩与存储
1.Hbase 创建表/Hbase删除表
2.Hbase 插入数据/Hbase 更新数据
3.Hbase 删除数据
4.Hbase 获取一条数据
5.Hbase 获取某个范围的数据
6.Hbase 过滤器
7.Hbase 与MR集成/Hbase与hive 集成
8.Protobuffer讲解
9.Protobuffer安装
10.Protobuffer 配置基本类型
11.Protobuffer 配置集合类型
12.Protobuffer 生成Java 类
13.Hbase读取Protobuffer生成的类
14.Hbase压缩存储
Flume
1.Flume 日志收集工具
2.Flume agent架构
3.Flume 组件
4.Flume 集群讲解
5.flume 不同架构介绍
6.flume 安装 / flume配置信息
7.flume 单台安装 / flume 集群安装
8.flume 高可用讲解
9.Avro source
10.Thrift source
11.Exec source
12.Spooling directory source
13.Kafka source
14.Netcat source
15.自定义Source
16.Source 的分类
17.Hdfs sink
18.Hive sink
19.Hbase sink
20.Avro sink
21.Thrift sink
22.Logger sink
23.Kafka sink
24.自定义Sink
Sqoop
1.Sqoop 简介
2.ETL 讲解
3.Sqoop 架构图
4.Sqoop 架构设计
5.Sqoop 版本介绍
6.Sqoop 导入
7.Sqoop 导出
8.Sqoop 安装/Sqoop 配置
9.Sqoop 导入数据到hdfs
10.Sqoop导入数据到hive
11.Sqoop导入数据到hbase
12.Sqoop通过查询语句到 hdfs
13.Sqoop导出数据到mysql
14.导出配置
15.Hdfs 配置/Hbase 配置
16.数据库配置
zookeeper
1.分布式协调框架
2.Zookeeper背景与介绍
3.分布式 zookeeper环境及安装
4.Zookeeper源语命令操作
5.关于节点类型、版本、元数据信息的意义
6.Zookeeper 的api 环境 java 操作集群演示
7.事件注册与节点的变更
8.基于zookeeper 的分布式协调案例
ElasticSearch
1.ElasticSearch的现状与前景
2.Lucene框架与倒排索引原理
3.Lucene框架在el search搜索引擎中的作用
4.ElasticSearch全分布式特性
5.ElasticSearch的环境要求与安装
6.Curl命令与rest 风格的使用
7.Api 搜索项目演示
Cloudera Manager
1.国内外大数据平台介绍
2.Cloudera 产品介绍
3.什么是 CDH
4.什么是 cloudera manager
5.什么是 cloudera manager service
6.cloudera manager框架原理
7.集群基础设施配置
8.纯手工安装cloudera manager
9.cloudera manager部署CDH
10.cloudera manager管理主机
11.cloudera manager管理集群、管理服务
12.cloudera manager管理实例、管理配置
13.cloudera manager管理监控、管理资源
14.cloudera manager service图表使用
15.cloudera manager service图表创建
16.cloudera manager service的 dashboard
Hue
1.Hue 介绍
2.Hue 安装
3.Hue 的HDFS管理与使用
4.Hue 的YARN管理与使用
5.Hue 的HIVE管理与使用
6.Hue 的Oozie 管理与使用
7.Hue 的metadata管理与使用
8.Hue 的用户管理与使用
impala
1.Impala介绍/内存计算与 MR,SPARK 计算的比较
2.impala框架角色讲解/impala的安装
3.impala的命令行使用/impala的命令参数详解
4.impala的内部命令详解/impala的SQL的 ddl
5.impala的 SQL的 dml/impala 的SQL 的dql
6.impala的文件格式与压缩
7.impala的 hbase整合
8.impala的配置与监控/impala的调优
oozie
1.Oozie 介绍
2.Oozie 的基于hadoop的分布式调度原理
3.Oozie 框架角色原理
4.Oozie 的xml 配置文件
5.Oozie 的job 配置文件
6.Oozie 的命令
7.Oozie 的配置与监控
8.Oozie 的开发
第三阶段-Storm流式计算
章节名称 主要学习方向

◆ 可掌握的核心技能

√ Kafka 分布式消息系统的原理及使用
√ kafka 生产消息、消费消息API 使用
√ Leader 均衡机制
√ Redis 缓存数据库使用
√ storm 流式计算框架架构
√ Storm 流式计算框架使用

◆ 学习目的

在大数据处理场景中,假设系统每天产生的数据量为100M我们可以使用关系型数据库存储解决,假设每天产生的数据量为100G 我们可以采用分布式存储解决,当然这些数据都是固定死的数据,叫做批数据,例如:100G 就是 100G。在大数据处理场景中,除了这种 批数据处理的场景,还有流式数据处理的场景,所谓流式数据场景就是数据是源源不断的产生,同时需要源源不断的处理。
对于流式数据处理我们需要使用到Kafka 消息缓存系统来承接数据,需要使用 Storm实时计算框架来处理就是数据,需要使用 Redis 存储处理完成的结果。本阶段我们将会系统的学习关于流式计算相关的各个计算。

◆ 可解决的现实问题及价值所在

通过本阶段的学习我们可以了解针对流式数据处理的场景我们的技术如何选型,如何使用Storm针对不同的实时场景处理数据,同时如何对结果进行快速存储与快速查询。

Kafka 分布式消息系统
1.Kafka 分布式消息系统介绍
2.Kafka 应用场景
3.Kafka 生产消息原理
4.Kafka 存储消息原理
5.Kafka Topic、partition 原理
6.Consumer 消费消息原理
7.Kafka 集群搭建/Kafka 命令使用
8.Kafka 消息系统特点
9.KafkaLeader均衡机制
10.Kafka版本更改对比
11.KafkaTopic更改、删除
12.API操作Kafka
Redis 缓存数据库
1.redis 特点、与其他数据库的比较
2.如何安装redis
3.如何使用命令行客户端
4.redis 的字符串类型
5.redis 的散列类型
6.redis 的列表类型
7.redis 的集合类型
8.如何使用java访问redis
9.redis 的事务(transaction)
10.redis的管道(pipeline)
11.redis持久化(AOF+RDB)
12.redis优化
13.redis的主从复制
14.redis的 sentinel高可用
15.twemproxy,codis实战
16.redis3.x集群安装配置
Storm 流式计算
1.Storm 的基本概念
2.Storm 的应用场景
3.Storm 和Hadoop的对比
4.Storm 集群的安装的linux环境准备
5.zookeeper集群搭建
6.Storm 集群搭建
7.Storm 配置文件配置项讲解
8.集群搭建常见问题解决
9.Storm 常用组件和编程 API:Topology、 Spout、Bolt
10.Storm分组策略(stream groupings)
11.使用Storm开发一个WordCount 例子
12.Storm程序本地模式debug、Storm程序远程debug
13.Storm事物处理
14.Storm消息可靠性及容错原理
15.Storm与 Kafka整合
16.Storm Trident 概念
17.Trident state 原理
18.Trident 开发实例
19.Storm DRPC(分布式远程调用)介绍
20.Storm DRPC实战讲解
21.Storm on Yarn 原理与配置
第四阶段-Spark计算框架体系
章节名称 主要学习方向

◆ 可掌握的核心技能

√ Scala 语言开发及使用
√ Scala 高级应用
√ Actor 通信模型
√ Spark 生态体系技术栈
√ Spark 核心 RDD
√ Spark 容错机制
√ Spark 转换、行动、持久化算子使用
√ Spark 计算模式
√ Spark 资源调度原理与过程
√ Spark 任务调度原理与过程
√ SparkShuffle 机制原理
√ Spark 文件寻址过程
√ Spark Master HA
√ Spark 累加器与广播变量
√ SparkSQL 使用
√ SparkStreaming 流式应用
√ SparkStreaming+kafka 整合使用
√ SparkStreaming 优化参数设置

◆ 学习目的

本部分内容全面涵盖了Spark 生态系统的概述及其编程模型,深入内核的研究,Sparkon Yarn,Spark Streaming 流式计算原理与实践,Spark SQL,Spark 的多语言编程以及 Spark 各个模块原理和运行。不仅面向项目开发人员,甚至对于研究 Spark 的学员,此部分都是非常有学习指引意义的课程。

◆ 可解决的现实问题及价值所在

本阶段内容是目前企业最为广泛使用的大数据处理分析技术。Spark 计算框架相对于其他的计算框架来说非常优秀,学好本阶段的课程我们可以对企业中的PB级数据处理、数据分析、数据查询做到快速应对、秒级相应的数据处理效果。本阶段课程不仅可以应对企业中的批数据处理,还可以应对企业中的流式场景数据处理,学好本阶段课程,找到一份心仪的工作不成问题。

Scala 基础
1.Scala 背景介绍
2.Scala 语言六大特性
3.Scala 下载安装配置
4.Scala IDE开发 Scala 配置
5.IDEA 开发Scala 配置
6.Scala 类型推断机制
7.Scala 数据类型
8.Scala 基本语法
9.Scala 类和对象/Scala 循环、判断
10.Scala String操作
11.Scala Array 操作
12.Scala可变数组操作
13.Scala List 操作
14.Scala 可变列表操作
15.Scala Set 操作
16.Scala 可变Set 操作
17.Scala map 操作/Scala 可变 map操作
18.Scala 元组操作及要点
Scala 高级应用
1.Scala 函数定义
2.Scala 递归函数
3.Scala 默认值函数
4.Scala 可变参数函数
5.Scala 匿名函数
6.Scala 嵌套函数
7.Scala 偏应用函数
8.Scala 高阶函数
9.Scala 柯里化函数
10.Scala伴生类/Scala 伴生对象
11.Scala样例类/Scala 样例类案例
12.Scala Trait 要点/Scala Trait 案例
13.Scala match 匹配
14.Scala隐式值操作/Scala隐式参数操作
15.Scala隐式函数操作/Scala 隐式类操作
16.ScalaActor通信模型
Spark 核心基础
1.Spark 技术介绍/Spark 技术站详解
2.Spark 演变历史/Spark 与MR的区别
3.Spark 基于eclipse配置
4.Spark 基于IDEA 配置
5.Spark 运行模式介绍
6.Spark 集群搭建/Spark 配置选项详解
7.Spark Pi 任务提交运行/Spark 客户端搭建
8.Spark 编程核心RDD
9.SparkRDD 原理及使用
10.RDD结构及注意点
11.RDD五大特性
12.RDD弹性原理
13.RDD分布式原理
14.RDD容错原理
Spark 转换算子
1.map 算子使用/flatMap 算子使用
2.filter算子使用/sample 算子使用
3.reduceByKey算子使用/SortByKey算子使用
4.Join、union 算子使用
5.Cogroup 算子使用
6.distinct 使用
7.repartition算子使用
8.coalesce 算子使用
9.zip,zipWithIndex使用
Spark 行动算子
1.Foreach 算子使用
2.Take算子使用
3.SaveAsTextFile 使用
4.Count 算子使用
5.Take算子使用
6.Collect 算子使用
7.First 算子使用
8.CountByKey 使用
9.CountByValue 使用 / Reduce使用
Spark 持久化算子
1.持久化数据级别分类
2.持久化算子cache使用
3.Cache 要点注意事项
4.持久化算子persist使用
5.Persist 要点注意事项
6.持久化算子Checkpoint
7.Checkpoint 执行流程
8.Checkpoint 注意事项
9.Checkpoint 使用优化
10.持久化算子对比
Spark 核心进阶
1.Standalone-client模式原理/模式流程详解
2.Standalone-cluster 模式原理
3.Standalone-cluster 模式流程详解
4.Yarn-client模式原理/Yarn-client模式流程详解
5.Yarn-cluster 模式原理/Yarn-cluster 模式流程详解
6.Client模式提交命令和特点
7.Cluster 模式提交命令和特点/Spark 任务提交
8.Spark-ClusterManager
9.Spark-Driver
10.Spark-Master
11.Spark-Worker
12.Spark-Executor/Spark-线程池
13.Spark-Application/Spark-job
14.Spark-Stage/Spark-task
15.SparkRDD窄依赖
16.SparkRDD宽依赖
17.SparkStage切割划分
18.SparkStage计算模式
19.Pipeline管道数据落地
20.Stage并行度划分
21.提高Stage并行度方式
22.任务调度角色划分/资源调度角色划分
23.Spark资源调度过程
24.Spark任务调度过程
25.SparkDAG有向无环图
26.粗粒度资源申请特点/细粒度资源申请特点
27.Spark推测执行机制
Spark 核心高级
1.Spark pv,uv案例
2.Spark WordCount案例
3.Spark 二次排序案例
4.Spark 分组取topN案例
5.Spark 分组取topN优化
6.Spark 处理数据思路转换
7.广播变量及注意事项/累加器及注意事项
8.自定义累加器/版本对比变化
9.Spark-WebUI详解/Spark日志查看
10.Pipeline计算模式验证/历史日志服务器配置
11.MasterHA高可用原理/MasterHA 高可用配置
12.MasterHA搭建注意点
13.SparkShuffle概念
14.Spark-HashShuffle 普通机制、优化机制
15.Spark-SortShuffle 普通机制
16.Spark-SortShufflebypass 机制
17.HashShuffle 执行流程详解/SortShuffle执行流程详解
18.HashShuffle与 SortShuffle 对比
19.Shuffle 文件寻址详解/Spark oom问题处理
20.Spark统一内存管理划分/Spark静态内存管理
SparkSQL
1.Shark 原理分析
2.SparkSQL 原理分析/SparkSQL 演变过程
3.DataFrame与DataSet
4.SparkSQL 数据源/SparkSQL 底层架构
5.SparkSQL 谓词下推/Json 格式数据转DataSet
6.普通RDD 和DataSet互操作
7.Parquet 数据转DataSet
8.JDBC数据转DataSet
9.SparkSQL 序列化问题
10.Hive On Spark 原理
11.Spark On Hive 原理
12.Spark On Hive 配置详解
13.SparkSQL DataSet存储
14.SparkSQL之UDF
15.SparkSQL之UDAF
16.SparkSQL之over函数
17.SparkSQL案例分析
SparkStreaming
1.SparkStreaming 介绍
2.SparkStreaming&Storm
3.SparkStreaming 接受数据原理
4.SparkStreaming之Dstream
5.SparkStreaming 读取 Socket 数据
6.foreachRDD 算子使用
7.transform算子使用
8.updateStateByKey算子使用
9.window窗口操作
10.reduceByKeyAndWindow使用
11.DriverHA原理及搭建
12.Receiver模式整合原理
13.Receiver模式问题及优化
14.Direct 模式整合原理
15.Direct 模式Api使用
16.WAL机制配置及使用
17.Receiver模式并行度设置
18.Direct 模式并行度设置/Direct模式offset管理
19.新版本Direct模式使用/新版本Direct模式对比
20.新版本Direct模式offset管理
21.SparkStreaming配置参数详解
22.SparkStreaming反压机制
23.Kafka与 SparkStreaming参数配置详解
第五阶段-机器学习和算法体系
章节名称 主要学习方向

◆ 可掌握的核心技能

√ python 类和对象
√ python 函数使用
√ python 集合操作
√ python 文件操作
√ 设计模式与异常
√ python 模块管理
√ Numpy 库使用
√ Pyspark 开发
√ 线性回归算法原理
√ 多元线性回归算法原理
√ 贝叶斯分类算法
√ KNN 分类算法
√ K-Means 聚类算法
√ TF-IDF 算法
√ 逻辑回归算法
√ 最大似然估计思想
√ 损失函数推导
√ 推荐系统
√ dubbo 实时推荐服务

◆ 学习目的

企业中一旦有了海量数据,势必会在数据中挖掘出数据的潜在价值,本阶段学习就是需要通过机器学习的技术将数据的价值挖掘出来。Python语言的部分大家在学习后可以完全掌握Python的精髓,并通过python 的学习给大家打好一个基础,在其他计算框架中多语言的使用上都会涉及到 Python 这门流行 的语言。同时课程里会通过机器学习的案例让大家学习 Python 的同时去更好的理解机器学习。
机器学习分析中可以使用的语言有java、python和 Scala,对于Java语言进行大数据开发使用的是mahout,这种方式已经过时,使用 python 中的scikit-learn 库和使用Scala-Spark 中的Mllib 库进行机器学习开发是目前常用的手段,本阶段以上两种方式都会涉及,通过学习 MLlib 和 sklearn,大家不仅将会了解 MLlib 和 sklearn 组 件及其调用,而且会通过一系列的案例和项目深入了解他们的现实使用。
通过此阶段大家也可以看出课程不仅着眼于现在,更是着眼于大家的未来在行业中的发展。

◆ 可解决的现实问题及价值所在

通过本阶段学习,大家可以掌握使用机器学习解决现实中的数据价值问题。可以在海量数据中挖掘出潜在的价值。同样,本阶段也是同学们未来伸入人工智能方向的“必经之路”,为后期在企业或者在未来的学习中打下坚实的基础。

python基础
1.Python介绍
2.Python历史
3.Python优缺点
4.Python应用场景
5.Python下载/Python安装
6.Python ide 安装
7.Python helloworld
8.Python交互式窗口
9.面向对象编程介绍
10.类与对象
11.定义类与创建对象
12.Self
13.保护对象的属性
14.继承/多继承/多态
15.类属性与实例属性
16.类方法与静态方法
17.Python 注释及乱码
18.Python 变量/Python 类型
19.Python 标识符/Python关键字
20.Python 输入/Python 输出
21.Python 运算符
22.Python 分支结构
23.Python input陷阱
24.Python 循环结构
python集合与函数
1.字符串
2.列表
3.元组
4.字典
5.可变类型
6.不可变类型
7.集合的迭代
8.集合排序/集合嵌套
9.Python函数介绍
10.函数的定义与调用
11.Python 参数
12.Python 返回值
13.Python 递归函数
14.Python 匿名函数
15.高阶函数/高阶函数和递归计算
16.斐波拉契数列
python文件操作
1.Python文件的打开与关闭
2.Python的读写
3.Python的定位读写
4.Python文件操作
5.Os模块
6.文件批量处理
7.Mp3 音乐播放
8.文件批量处理
python 设计模式与异常
1.单例模式
2.工厂模式
3.异常简介
4.异常捕获
5.异常的传递
6.自定义异常
7.异常处理中排除异常
8.异常的分类
python数据库操作、Numpy 模块、矩阵操作
1.模块的使用与安装
2.模块制作
3.Python中的模块
4.模块的发布
5.模块安装及使用
6.Python连接mysql
7.Python查询数据库
8.数据API/API 的封装
9.numpy 介绍/numpy 特点
10.numpy安装/numpy基础
11.矩阵的创建/矩阵的属性
12.矩阵的基本运算
13.矩阵的常用函数
14.矩阵的切片
15.矩阵的索引
16.矩阵的迭代/矩阵的形状操作
PySpark
1.PySpark 基础配置
2.Python开发工具配置
3.PySpark 运行开发原理
4.Python模块安装方式
5.PySpark 案例
6.PySpark 编码设置
7.pySpark 任务提交
多元线性回归算法
1.机器学习与人工智能关系
2.机器学习数学基础
3.线性回归原理
4.线性回归损失函数
5.梯度下降迭代确定模型
6.多元线性回归原理
7.步长参数分析
8.模型过拟合问题
9.模型欠拟合问题
10.线性回归案例分析
贝叶斯分类算法
1.贝叶斯分类算法
2.贝叶斯算法术语解释
3.贝叶斯概率分类原理
4.贝叶斯公式推广
5.拉普拉斯估计原理
6.模型保存
7.垃圾邮件分类案例
KNN 分类算法
1.KNN 算法原理
2.K 值的选择问题
3.KNN 存在的问题
4.机器学习中的归一化
5.欧式距离
6.平方欧式距离
7.闵式距离
8.曼哈顿距离
9.谷本距离
10.切比雪夫距离
11.加权距离
12.KNN三要素
13.数据分类案例
14.相亲案例
Kmeans 算 法 、Kmeans++算法
1.Kmeans聚类算法原理
2.K 值的选择策略
3.肘部法确定K值
4.Kmeans聚类问题
5.Kmens++算法
6.手动实现Kmeans算法
7.Kmeans数据聚类案例
8.广告精准营销案例
TF-IDF算法
1.文本分词技术解析
2.词频分析
3.逆文本频率分析
4.TF-IDF原理
5.TF-IDF应用
逻辑回归分类算法
1.逻辑回归分类算法原理
2.逻辑回归与线性回归对比分析
3.傅里叶变化
4.音乐分类案例
5.求导法则
6.log 对数运算法则
7.最大似然估计思想
8.对数似然函数推导
9.逻辑回归构造损失函数
10.逻辑回归损失函数公式推导
11.SGD梯度下降过程
12.混淆矩阵
13.ROC&AUC 评估指标
14.道路拥堵预测
决策树算法
1.决策树概念
2.决策树术语
3.信息熵
4.条件熵
5.信息增益
6.信息增益率
7.基尼系数
8.ID3 选择法
9.C4.5选择法
10.数据离散化
11.决策树回归值使用
12.预剪枝与后剪枝
13.决策树问题
14.决策树案例
随机森林算法
1.随机森林算法
2.随机森林随机选择方式
3.指定树的个数
4.随机森林分类规则
5.随机森林与决策树的关系
6.随机森林案例
推荐系统原理
1.推荐系统产生背景
2.lambda架构数据处理
3.实时和离线场景分析
4.Python on Hive
5.推荐系统应用
第六阶段-Flink实时计算体系
章节名称 主要学习方向

◆ 可掌握的核心技能

√ Flink 架构原理
√ Flink 流式计算优势
√ 有界数据流
√ 无界数据流
√ Flink 算子链
√ Flink 状态管理
√ Flink checkpoint &检查点
√ Flink 集群搭建&Flink on Yarn
√ 任务槽和资源管理
√ DataSet操作&DataStream操作&SQL操作
√ Flink HA
√ 广播变量和累加器
√ Flink + Kafka 整合
√ 自定义Source
√ 自定义Sink
√ 两阶段提交原理
√ Flink Time 原理
√ Flink 窗口操作

◆ 学习目的

Flink 是新一代的流式计算框架,性能相对于Storm 和SparkStreaming都有很大提升,Flink 同样也可以进行批处理和 SQL 处理。Flink 程序运行在 Hadoop YARN 上,性能为 Flink > Spark > Hadoop(MR),迭代次数越多越明显,性能上,Flink 优于Spark 和Hadoop最主要的原因是Flink 支持增量迭代,具有对迭代自动优化的功能。在 未来的大数据开发中预计 Flink 将占有非常大的比重。所以需要每一位大数据程序员必须掌握。

◆ 可解决的现实问题及价值所在

Flink 核心是一个流式的数据流执行引擎,其针对数据流的分布式计算提供了数据分布、数据通信以及容错机制等功能。基于流执行引擎,Flink提供了诸多更高抽象层的 API以便用户编写分布式任务。通过本阶段学习,大家可以掌握如何使用 Flink 进行企业级开发,同时在市场竞争力上也胜人一筹。

Flink 基础
1.Flink 原理分析
2.Flink 架构分析
3.Flink 基本组件
4.Flink 应用场景
5.流式框架对比
6.Flink 开发环境配置
7.Flink 程序编写步骤
8.Flink 批次处理案例
9.Flink 流式处理案例
Flink 安装部署
1.Flink 本地模式
2.Flink 集群模式
3.Flink Standalone模式
4.Flink on Yarn
5.Yarn session
6.run 命令分析
7.Flink HA 原理与搭建
8.Flink on Yarn HA原理
9.Flink Scala Shell
Flink Api
1.Flink API抽象级别分析
2.Flink DataSource
3.Flink Transformations
4.Flink Sink
5.Flink DataStream 常用API
6.Flink DataSet 常用 API
7.Flink Table AP及SQL 分析
8.Flink DataType
9.Flink 序列化分析
Flink 高级功能
1.Flink Broadcast
2.Flink Accumulator
3.Flink 广播变量与累加器的区别
4.Flink Distributed Cache
5.Flink State管理与容错
6.Flink StateBackend
7.Flink checkpoint
8.Flink Restart Strategy
9.Flink SavePoint
Flink 窗口与Time
1.Flink Window
2.TimeWindow 使用
3.CountWindow使用
4.自定义 Window
5.Window增量与全量聚合
6.Flink Time
7.Flink 处理乱序数据
8.Flink Watermark
9.数据乱序案例分析
10.Flink 并行度设置
11.TaskManager 与 Slot
Flink与Kafka整合
1.Flink 与Kafka 整合参数配置
2.Flink 消费数据位置确定原则
3.开启Checkpoint同步 Offset
4 自定义Kafka Source
5.自定义 Kafka Sink
6.两阶段提交确保数据消费一致
7.Flink 内部状态管理
8.Flink 外部状态管理
9.手动实现两阶段提交
第七阶段-平台架构师课程体系
章节名称 主要学习方向

◆ 可掌握的核心技能

√ Kylin 架构与原理
√ 数据仓库发展史
√ OLTP 在线联机事务处理
√ OLAP 在线联机分析处理
√ 数据仓库术语
√ 维度表和事实表区别
√ 星型模型、雪花模型、星座模型区别
√ Kylin 优化
√ Hive 优化
√ Hbase 优化
√ Spark 核心源码分析
√ Spark 优化
√ 机器学习优化
√ Flink 源码分析

◆ 学习目的

本阶段主要针对企业中集群、各类技术框架优化、源码分析等更深层次的技能而设置,同时本阶段还包含目前企业使用中的最热门技术,并不断更新,使各位同学在针对企业面试、企业集群优化、数据处理方案优化、数据处理架构选择等方面凸显优势,占领技术制高点。

◆ 可解决的现实问题及价值所在

目前企业工作竞争压力大,需要优秀的数据开发、分析人员,同时企业技术也在更新换代,通过本阶段的学习可以使同学们在面对企业工作竞争更显优势,同时也可以解决公司中集群优化、技术选型等问题。

Kylin 架构与使用
1.kylin 的背景介绍/kylin 的应用场景
2.kylin 的发展历史/kylin 的工作原理
3.kylin 的体系架构
4.kylin 的核心,cube构建
5.kylin 的sql 查询原理/kylin 的特性和生态圈
6.kylin 事实表/kylin维度表
7.kylin 的下载/kylin的安装准备
8.kylin 的部署方式/kylin 安装部署
9.KyLin 和Hive/KyLin 和hbase
10.KyLin和 Zookeeper
11.OLTP 与OLAP分类
12.星型模型/雪花模型/星座模型
13.simple cube 描述
14.cube 构建
15.kylin的视图
16.kylin的元数据存储
17.kylin JDBC访问方式
18.kylin rest方式
Hive优化
1.hive优化思想/hive查询计划
2.hive本地模式/hive并行计算
3.hive严格模式/hive排序
4.hive map join/hive 大表 join
5.hive map-side聚合
6.hive合并小文件
7.hive map与reduce个数
8.hive-jvm 重用
9.Hive数据倾斜/Hive脚本编程
10.Hive 脚本执行架构/Hive 的任务的监控
Hbase 优化
1.预分区
2.Rowkey设计
3.列族个数
4.Compact 合并优化
5.Split 优化
6.多 htable 并发写
7.Htable参数设置
8.批量写
9.批量读
10.多线程并发写
11.多htable并发读
12.多线程并发读
13.缓存查询结果
14.Blockcache
15.Htablepool
16.Hbase索引
Spark 核心源码分析
1.Spark-pipeline iterator 源码分析
2.map 源码分析
3.flatMap 源码分析
4.reduceByKey源码分析
5.combineByKey 源码分析
6.aggregateByKey 源码分析
7.sortByKey源码分析
8.repartition源码分析
9.coalesce 源码分析
10.distinct源码分析
11.Spark-Master启动源码分析
12.Spark-Worker启动源码分析
13.Spark-Driver启动源码分析
14.Spark-Application 注册源码分析
15.Spark-Executor启动源码分析
16.Spark-资源调度源码分析、任务调度源码分析
17.Spark-Shuffle-Write 源码分析
18.Spark-Shuffle-Read源码分析
Spark 优化
1.Spark 分配更多的资源
2.Spark 并行度调优
3.Spark 代码调优
4.Spark 数据结构选择
5.SparkKryo序列化器使用
6.Spark 算子选择使用
7.Spark 自定义分区器
8.Spark 数据结构优化
9.Spark 数据本地化调优
10.Spark内存调优
11.Spark堆外内存调优
12.SparkShuffle调优
13.Spark数据倾斜不同解决方案
机器学习优化
1.有无截距
2.线性不可分问题
3.调整分类域值
4.鲁棒性调优
5.归一化数据
6.均值归一化
7.逻辑回归训练方法选择
8.机器学习中python 脚本优化
9.步长经验调节
10.降维分析
Flink 源码分析
1.Flink 启动源码分析
2.Flink JobManager源码分析
3.Flink TaskManager源码分析
4.Flink 提交任务源码分析
5.Flink Task 数据处理源码分析
6.Flink 算子源码分析

百战程序员微信公众号

百战程序员微信小程序

©2014-2024 百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637