优极限学堂
大数据
第一阶段:Linux操作系统
第一章:计算机体系结构
1、计算机硬件之冯诺依曼体系
2、冯诺依曼体系硬件组成五大模块
3、机械硬盘与固态硬盘的工作原理
4、机械硬盘数据读取方式
5、顺序读写与随机读写
6、网络组成之网址-子网掩码-默认网关
7、网络组成之域名解析服务
8、网络的桥接和网络地址转换
9、软件的分类
第二章:Linux环境搭建
1、Linux系统的分支
2、Linux官网与系统版本选择
3、虚拟化技术
4、VM安装流程
5、创建新的虚拟机
6、为新的虚拟机安装操作系统
7、配置虚拟机网络信息
8、配置虚拟机防火墙
9、配置虚拟机软件安装限制
10、关机并拍摄虚拟机快照
11、虚拟机快照的两种克隆方式
12、虚拟机本地连接工具XShell+XFtp
第三章:Liunx常见命令
1、Linux命令学习策略
2、Linux常见命令
3、Linux常见的特殊符号
4、Linux文件系统和挂载策略
5、Linux万事万物皆文件
6、Linux根目录下文件夹作用
第四章:Linux文件系统
1、Linux文件系统命令-cd ll mkdir rmdir
2、Linux文件系统命令-cp拷贝
3、Linux文件系统命令-mv剪切与重命名
4、Linux文件系统命令-rm删除
5、Linux文件系统命令-touch创建stat元数据
6、Linux文件系统命令-ln链接中符号链接和硬链
接的应用场景
7、Linux文件系统命令-cat tac more less
8、Linux文件系统命令-head前N行tail后N行
9、Linux文件系统命令-find文件位置查找
10、Linux文件系统命令-vi打开文件
11、Linux文件系统命令-vi三种模式
12、Linux文件系统命令-vi模式切换
13、Linux文件系统命令-vi编辑模式与输入模式
14、Linux文件系统命令-vi末行模式 保存与退出
15、Linux文件系统命令-vi末行模式 查找与替换
16、Linux文件系统命令-vim与vi最常见的错误
ATTENTION
17、Linux文件系统命令-操作系统文件传输(w+l)
lrzsz xftp
18、Linux文件系统命令-操作系统文件传输(l+l)
scp
19、Linux文件系统命令-df分区du大小
20、Linux文件系统命令-tar与zip
第五章:Linux网络命令
1、Linux网络命令-主机名与DNS
2、Linux网络命令-ifconfig netstat ping
netstat curl
3、Linux网络命令-防火墙
4、Linux网络命令-不可逆加密算法
5、Linux网络命令-对称加密算法
6、Linux网络命令-非对称加密算法
7、Linux网络命令-相互免秘钥
8、Linux网络命令-修改Know_hosts确认信息
9、Linux网络命令-免秘钥数据校验过程
第六章:Linux用户组权限
1、Linux时间日期-时间同步策略
2、Linux用户组权限-用户
3、Linux用户组权限-组
4、Linux用户组权限-权限rwx
5、Linux用户组权限-用户和文件权限关系
6、Linux脚本编程-管道
7、Linux脚本编程-输出重定向
8、Linux进程-查看进程信息
9、Linux进程-后台进程
第七章:Linux软件体系
1、Linux软件安装-环境变量
2、Linux软件安装-三种软件安装的方式
3、Linux软件安装-rpm安装JDK
4、Linux软件安装-tar安装Tomcat
5、Linux软件安装-yum安装
6、Linux软件安装-更换yum源
7、Linux软件安装-安装Mysql8
8、Linux软件安装-修改Mysql8的环境配置
9、Linux三剑客-cut sort wc
10、Linux三剑客-grep
11、Linux三剑客-sed awk
第八章:Linux脚本编程
1、Linux脚本编程-kernel与shell
2、Linux脚本编程-脚本编写与三种执行方式
3、Linux脚本编程-变量
4、Linux脚本编程-字符串
5、Linux脚本编程-数组
6、Linux脚本编程-注释
7、Linux脚本编程-参数传递
第九章:Linux脚本编程高级进阶
1、Linux脚本编程进阶-运算符
2、Linux脚本编程进阶-echo
3、Linux脚本编程进阶-test
4、Linux脚本编程进阶-if case
5、Linux脚本编程进阶-for
6、Linux脚本编程进阶-while break continue
7、Linux脚本编程进阶-函数
8、Linux脚本编程进阶-Linux系统启动流程
9、Linux脚本编程进阶-rc.local开机自启动
10、Linux脚本编程进阶-rc3.d开机自启动
11、Linux脚本编程进阶-开机启动图解
12、Linux脚本编程进阶-定时任务
13、Linux脚本编程进阶-服务器初始化脚本
第二阶段:Nginx服务器
1、web项目集群构建
2、Nginx的负载均衡与反向代理
3、Nginx软件安装
4、Nginx配置负载均衡
5、Nginx负载均衡策略
6、Nginx静态资源处理
7、单Linux启动多Tomcat
8、Nginx实现虚拟主机
9、Nginx+Memcached实现Session一致性
第三阶段:任务调度Zookeeper
第一章:数据一致性理论
1、数据存储与磁盘阵列
2、数据条带化
3、CAP原则及推导过程
4、数据一致性
5、最终一致性特例
6、Paxos小岛算法
7、Paxos小岛算法延伸
8、Raft算法
第二章:Zookeeper实战
1、Zookeeper节点
2、Zookeeper集群搭建
3、Zookeeper客户端
4、Zookeeper的常见命令
5、Zookeeper的监听机制
6、Zookeeper的ACL与四字命令
7、Zookeeper的Java访问机制
第四阶段:Hadoop生态之HDFS存储
第一章:算法与大数据思维
1、算法与资源协调
2、算法复杂度
3、空间复杂度
4、时间复杂度
5、时间与空间的取舍之道
6、十大排序算法(冒泡插入选择希尔快速)
7、十大排序算法(归并)
8、十大排序算法(堆分桶计数基数)
9、大数据思维-查重与排序
10、大数据思维-查重解决方案
11、大数据思维-排序解决方案
12、大数据科普
第二章:HDFS架构模型
1、Hadoop入门介绍
2、HDFS分布式文件存储架构
3、Block切分标准
4、Block数据安全
5、Block文件效率
6、HDFS的优缺点
7、HDFS完全分布式搭建
8、HDFS数据存放目录
9、HDFS格式化NameNode两次的解救方案
10、HDFS文件类型
11、NameNode节点功能介绍
12、DataNode节点功能介绍
13、HDFS架构图
第三章:HDFS数据读写流程
1、内存中数据安全策略:日志与镜像
2、NameNode基于内存存储数据安全策略
3、SNN解决数据安全流程剖析
4、SNN的局限性
5、HDFS的安全模式
6、HDFS的权限管理
7、HDFS的机架感知策略
8、HDFS的写入数据的宏观流程
9、HDFS的写入数据的微观流程
10、HDFS的读取数据的微观流程
第四章:HDFS的高可用与联邦机制
1、HDFS1.x的困境
2、HDFS2.x的设计思想
3、搭建高可用分布式集群
4、ANN和SNN节点功能介绍
5、QJM节点功能介绍
6、ZKFC节点功能介绍与脑裂预防策略
7、HDFS的Federation联邦机制
8、HDFS3.x的新特性
9、Window访问HDFS
第五阶段:MapReduce计算
第一章:MapReduce思想
1、扑克牌问题
2、MapReduce思想之Split-Map-KvBuffer
3、MapReduce思想之Partation-Sort-Spill-
Merge
4、MapReduce思想之Fetch-Merge-Reduce-
Output
5、MapReduce思想之流程分析
第二章:Yarn资源协调者
1、搭建Yarn工作环境
2、MapReduce案例:WordCount
3、MapReduce1.x架构
4、推导MapReduce流程
5、MapReduce2.x架构-Yarn
第三章:MapReduce源码分析
1、WordCount数据流转监控
2、WordCount数据处理
3、MapReduce源码分析-Split
4、MapReduce源码分析-Map
5、MapReduce源码分析-KvBuffer-Partation-
Spill-Merge
6、MapReduce源码分析-KvBuffer双重索引
7、MapReduce源码分析-Fetch-Reduce
第四章:MapReduce案例
1、MapReduce案例:天气数据统计-题目
2、MapReduce案例:天气数据统计-每日
3、MapReduce案例:天气数据统计-每月最高三
天
4、MapReduce案例:好友推荐系统
5、学习规划
6、Hadoop复习篇-HDFS1.x
7、Hadoop复习篇-HDFS2.x
8、Hadoop复习篇-YARN
9、Hadoop复习篇-MapReduce
10、MapReduce案例:PageRank问题分析
11、MapReduce案例:PageRank实现方案
12、MapReduce案例:豆瓣电影250
13、MapReduce案例:TF-IDF
14、MapReduce的Combiner
第六阶段:ETL数仓之Hive
第一章:Hive介绍与环境搭建
1、Hive基础介绍
2、Hive优缺点
3、Hive与传统数据库的对比
4、Hive的架构模型
5、Hive环境搭建
6、Hive三种连接方式
7、Hive元数据信息
第二章:Hive的HQL操作
1、Hive操作数据库
2、Hive数据类型与创建表
3、Hive创建复杂类型表
4、Hive内外部表
5、Hive数据载入
6、Hive数据导出
7、Hive数据分区思想
8、Hive数据静态分区
9、Hive数据动态分区
10、Hive的数据查询语句
11、昨日内容回顾
12、Hive的排序
13、Hive的内置函数
14、Hive的UDTF函数explode-lateral view
15、Hive的UDTF函数collect
16、Hive案例:WorldCount
17、Hive案例:天气系统
18、Hive案例:好友推荐
第三章:Hive的HQL进阶
1、Hive自定义函数UDF
2、Hive自定义函数UDAF
3、Hive的数据分桶
4、Hive的数据抽样
5、Hive聚合开窗函数
6、Hive排序开窗函数
7、Hive开窗函数案例
8、Hive的配置方式
9、数据倾斜
10、面试中优化类的问题怎么回答
11、Hive的企业级优化
12、Hive的文件存储方式
13、Hive练习题
第七阶段:Hbase分布式数据库
第一章:Hbase架构模型
1、HBase的用途
2、HBase的特点
3、数据库对比
4、HBase数据模型
5、HBase架构模型-Client
6、HBase架构模型-Zookeeper
7、HBase架构模型-HMater
8、HBase架构模型-HRegionServer
9、HBase架构模型-HRegion
10、HBase架构模型-Store
11、HBase架构模型-HLog
12、HBase高可用搭建
第二章Hbase命令与数据设计
1、HBase操作命令
2、HBase读写数据公共流程
3、HBase读写流程
4、HBase案例分析
5、Java访问HBaase
6、HBase写入数据的流程
7、HBase单表数据设计
8、HBase多表数据设计
9、HBase微博关注设计
10、HBase常用优化
11、HBase与HDFS无缝传输数据
第八阶段:Flume数据采集中间件
1、Flume简介
2、Flume组件详解
3、Flume安装
4、Flume特性,有点,执行流程,推送和拉取
过程
5、命令不能用解决方案
6、案例一
7、案例二
8、案例三和四
9、小结
第九阶段:数据同步框架DataX
1、dataX简介
2、DataX安装前置python安装
3、DataX安装和案例
4、DataX—web安装
5、DataX—web小结
第十阶段:任务调度工具Azkaban
1、Azkaban概览
2、集群搭建
3、案例一Hello word
4、上午回顾
5、案例二-邮箱报警功能和多任务依赖功能
6、案例三四五HDFS,MR,Hive,定时任务
第十一阶段:计算工具Tez
1、Hive优化之Tez简介
2、Hive优化之Tez概览(安装未成功)
3、tez编译
4、tez安装
第十二阶段:电商日志分析
第一章:数据仓库
1、课程内容
2、数仓分层
3、数仓特性和概念
4、数仓的小结
5、电商日志业务介绍
第二章:项目架构与数据流转
1、电商架构
2、工作位置
3、数据流转
4、数据表分类
5、数据生产
6、回顾
7、将数据按照天进行切分
8、日志项目展示效果
第三章:ETL数仓实战
1、Flum收集日志按照天存到当HDFS
2、ETL
3、ETL_ip和浏览器
4、ETL_日志拆分
第四章:用户基本信息分析
1、MR_JOB
2、MR_Mapper
3、ETL打包运行
4、Mysql表设计
5、从HBase到Mysql中程序的大概过程
6、从HBase到Mysql中程序的大概流程
7、活跃用户JOB类
8、活跃用户Mapper类
9、活跃用户Reducer类
第五章:浏览器深度分析
1、打包测试
2、加载到Mysql类解析
3、Hive和Hbase整合
4、浏览器深度sql分析(无演示)
5、昨日回顾和电商日志数仓分层
6、tez和mr对比
7、电商日志数仓和业务数仓思路讲解(任务布
置)
8、回顾和dataX数据迁移到mysql
第六章:任务调度和优化
1、crontab调度程序
2、工作流调度
3、电商日志项目回顾总结-技术
4、电商日志项目回顾总结-业务和数据
5、表关联和表merge
6、项目调优
第十三阶段:NoSQL数据库Redis
第一章:Redis理论与应用
1、缓存概念
2、热点问题
3、缓存常见问题(缓存穿透,缓存一致性,缓
存雪崩)
4、redis概念
5、redis安装
6、redis回顾
7、redis命令
第二章:Redis的主从哨兵集群进化史
1、redis持久化策略
2、redis主从复制和数据同步机制
3、redis同步机制和服务器断链重读
4、redis哨兵机制
5、redis哨兵集群打建
6、redis哨兵集群缺点和解决思路
7、redis高可用集群设计思想和算法理论支持
8、redis高可用集群搭建
第十四阶段:消息中间件Kafka
1、观察者模式和生产消费者模式
2、缓冲区和数据单元以及消息传递
3、kafka简介和优点
4、kafka架构详解
5、kafka搭建和简单应用
6、kafka索引机制
7、昨日回顾(面试和kafka)
8、producer delivery guarantee
9、consumer delivery guarantee
10、生产者api
11、消费者api
12、kafka优化
13、kafka小结
第十五阶段:Scala语言开发
第一章:Scala基础应用
1、scala介绍上
2、scala介绍下
3、scala基础上
4、scala基础下
5、scala函数上
6、scala函数下
7、匿名函数上
8、匿名函数下
9、高阶函数等_上
10、高阶函数等_下
第二章:Scala函数及应用
1、阶段复习1
2、scala字符串+数组上
3、scala字符串+数组下
4、scala集合(list,set)上
5、scala集合(list,set)下
6、scala集合(map,tuple) 上
7、scala集合(map,tuple) 下
8、trait+模式匹配+偏函数上
9、trait+模式匹配+偏函数下
第三章:Scala高级应用
1、scala样例类
2、scala隐式转换
3、akka_Actor上
4、akka_Actor下
5、spark预热之wordCount
6、scala总结
第十六阶段:分布式计算框架Spark
第一章:Spark简介及基础代码开发
1、spark简介上
2、spark简介下
3、spark_core_rdd上
4、spark_core_rdd下
5、spark算子上
6、spark算子中
7、spark算子下
8、spark持久化算子上
9、spark持久化算子下
第二章:Spark架构与集群部署模式
1、javaapi以及sparkstandalone集群搭建上
2、javaapi以及sparkstandalone集群搭建下
3、sparkPI任务提交+代码实现上
4、sparkPI任务提交+代码实现下
5、standalone模式提交任务(客户端&集群)
上
6、standalone模式提交任务(客户端&集群)
下
7、sparkonyarn&yarn-client提交方式上
8、sparkonyarn&yarn-client提交方式下
9、sparkonyarn(cluster模式)
10、yarn日志开启
第三章:Spark核心概念Stage以及高阶算子
1、spark转换算子join&union
2、mapPartitions和foreachPartition和distinct
上
3、mapPartitions和foreachPartition和distinct
下
4、spark术语解释+宽窄依赖概念
5、stage概念及切割原理+pipeline测试
6、pipeline计算模式总结
7、spark资源调度和任务调度上
8、spark资源调度和任务调度下+推测执行机制
9、spark粗粒度资源申请
10、spark算子mapPartitionsWithIndex+
repartition上
11、spark算子repartition下+coalesce
12、spark算子-groupByKey
13、spark算子zip&zipWithIndex
14、spark算子countByKey&countByValue
15、spark算子reduce
16、spark阶段复习上
17、spark阶段复习中
18、spark阶段复习下
19、spark工具类的编写以及隐式切面的使用
第四章:Spark经典案例以及任务提交参数
1、sparkdemo之pvuv
2、sparkdemo之二次排序(java)
3、sparkdemo之二次排序(scala)
4、sparkdemo之分组取topN(version1)
5、sparkdemo之分组取topN(version2)
6、sparkdemo之分组取topN(scala)
7、spark-submit提交参数上
8、spark-submit提交参数中
9、spark-submit提交参数下
10、sparkShell操作上
11、spark-historyserver配置
12、spark-webUI介绍
13、spark-MasterHA上
14、spark-MasterHA下
15、spark-webUI介绍下+historyserver压缩格
式
第五章:SparkRDD高级应用
1、共享变量之广播变量上
2、共享变量之广播变量下
3、共享变量之广播变量代码
4、共享变量之累加器
5、sparkshuffle之hashShuffle
6、sparkshuffle之sortShuffle
7、sparkshuffle之shuffle参数调优
8、sparkshuffle之shuffle文件寻址上
9、sparkshuffle之shuffle文件寻址下(reduce)
10、spark内存管理
第六章:Spark核心源码解析
1、spark-start-all日志
2、spark-Master源码
3、spark-Master源码receive
4、spark-Master源码receiveleader选择以及恢
复
5、spark-Master源码注册app&worker
6、spark-Master源码receive下
7、spark-Master源码receiveAndReply上
8、spark-Master源码receiveAndReply下+
Worker解析
9、spark初始化源码解析总结
10、schedule源码上
11、schedule源码中
12、schedule源码下
13、三个重要结论的总结(standalon模式下)
14、DAGScheduler源码部分上
15、DAGScheduler源码部分中
16、DAGScheduler源码部分下
17、core篇总结
18、core篇总结中
19、core篇总结下
第七章:Spark分布式计算框架之SparkSQL
1、sparkSql官网介绍
2、sparkSql发展历程
3、sparkSql核心操作对象dataSet介绍
4、sparkSql底层架构+谓词下推
5、sparkSql-shell基本操作
6、idea构建项目操作sparksql
7、idea构建项目操作sparksqljson数据读取
scala版
8、idea构建项目操作sparksqljson数据读取+操
作
9、sparkSql操作json(java+scala)
10、sparkSql操作非json格式数据
11、sparkSql操作非json格式数据(scala反射)
12、sparkSql动态创建schema信息(java)
13、sparkSql动态创建schema信息(scala)
14、sparkSql读取parquet
15、sparkSql读取mysql中数据以及写入mysql
16、sparkSql读取Hive数据上
17、sparkSql读取Hive数据下
18、序列化问题上
19、序列化问题下
20、udf函数
21、udaf函数
22、udaf函数下
23、开窗函数
24、阶段复习1
25、阶段复习2
26、阶段复习3
27、阶段复习4
第八章:Spark分布式计算框架之
SparkStreaming
1、sparkStreaming介绍
2、sparkStreaming模型
3、sparkStreaming模型数据接收和数据处理的
问题
4、socket数据实时处理wc
5、流处理相关注意点
6、foreachRDD
7、transform
8、transform下
9、updateStateByKey
10、updateStateByKey下
11、window窗口操作简介
12、window窗口操作代码
13、window窗口操作代码优化后
14、sparkStreaming和kafka0.8以前的receiver
模式
15、sparkStreaming和kafka0.8机制总结+并行
度介绍
16、sparkStreaming-kafka direct模式
17、sparkStreaming-receiver代码
18、sparkStreaming-direct代码
19、sparkStreaming任务处理参数解析(数据
堆积解决---算快)
20、sparkStreaming任务处理参数解析(少拉+
背压)