追求“极课”精神,探索教育黑科技
每期班课程都在更新迭代,保证内容在业内持续领先,前沿技术超出同类机构40%以上
大数据企业的商业项目直接为学员所用,一线大牛工程师亲自指导实战开发
业务覆盖金融、新闻、电商、智慧城市等所有主流行业,全程贯穿项目实战
覆盖全部前沿技术:Hadoop,Spark,实时数据处理,离线数据处理,机器学习
东方标准大咖讲师+企业导师联合授课,培养中国最“真实”的大数据工程师
拥抱“大数据时代”,做IT“金领”

全球所有信息数据中90%产生于过去两年,大数据时代已经到来!随着大数据的发展,产业界正在经历一次重大变革,特别是基于海量数据处理,改变着工程师思考的方式和习惯,开发者们越来越有必要去了解大数据的架构与设计原理。

党的十八届五中全会提出“实施国家大数据战略”,国务院印发《促进大数据发展行动纲要》,全面推进大数据发展,加快建设数据强国。大数据技术和应用处于创新突破期,国内市场需求处于爆发期,我国大数据产业面临重要的发展机遇。

目前,大数据的用户已经从传统的互联网公司,扩展到科学计算、电信行业、电力行业、生物行业以及金融公司,并得到越来越广泛的应用。

国际数据公司IDC预测,到2020年,企业基于大数据计算分析平台的支出将突破5000亿美元。目前,我国大数据人才只有46万,未来3到5年人才缺口达150万之多。

人才缺口巨大,一将难求


大数据工程师培训的误区

冗长的java课程

大数据Hadoop生态系统的组建大部分是java编写,但95%的企业是直接使用不会修改组建,所以培训课程包含冗长的java是不科学的。

繁琐的Linux课程

大数据Hadoop生态系统是在Linux系统上搭建的,但只需要掌握基础的Linux基础搭建即可,未来云主机的普及Linux环境都无需搭建,所以培训课程包含繁琐的Linux是不科学的。

浅显的web课程

web开发html及javascript,只是在大数据可视化阶段才会用到,并不是大数据课程的核心内容,所以培新课程包含浅显的web开发是不科学的。

课程架构

第一阶段
Python

01 Python核心基础
  • Python开发环境
  • Python变量
  • 流程控制语句
  • 高级变量类型
  • 函数应用
  • 文件操作
  • 面向对象
  • 异常处理
02 Python核心高级
  • 模块和包
  • 网络编程
  • 并发编程
  • 网络编程
  • 正则表达式
  • 数据库编程
  • Python语法强化
  •  
03 数据库技术
  • SQL基础
  • Mysql 基础
  • Oralce数据库
  •  
  •  
  •  
  •  
  •  

第二阶段
Linux

01 Linux入门 & VI/VIM
  • 概述
  • 下载地址、Linux特点
  • Linux和Windows区别
  • 安装VMWare虚拟机
  • 安装CentOS
  • 安装VMTools工具
  • 虚拟机屏幕保护设置
  • IVT虚拟化支持
  • 树状目录结构
  • 一般模式、编辑模式
  • 指令模式
02 常用基本命令
  • 帮助命令
  • 文件目录类
  • 时间日期类
  • 用户管理命令
  • 用户组管理命令
  • 文件权限类
  • 磁盘分区类
  • 搜索查找类
  • 进程线程类
  • 压缩和解压类
  • 后台服务管理类
03 系统管理 & RPM
  • 查看和配置网络IP和网关
  • 配置主机名
  • 防火墙、关机重启
  • 找回root密码
  • 安装SecureCRT
  • SecureCRT鼠标粘贴配置
  • SecureCRT中文乱码解决方法
  • 查询(rpm -qa)
  • 卸载(rpm -e)
  • 安装(rpm -ivh)
  • crond系统定时任务
04 shell编程
  • shell概述
  • shell脚本的执行方式
  • shell定义变量
  • 将命令的返回值赋给变量
  • 设置环境变量
  • 位置参数变量
  • 预定义变量
  • 运算符
  • 条件判断语句
  • 常用判断条件
  • if判断
05 shell & YUM仓库配置
  • case语句
  • for循环
  • while循环
  • 系统函数
  • 自定义函数
  • 为什么要制作本地YUM源
  • yum的常用命令
  • 关联网络yum源
  • 制作本地yum源
  • 制作只有本机能访问的本地YUM源
  • 制作其他主机通过网络能访问的本地YUM源

第三阶段
大数据Hadoop生态体系

01 Hadoop生态
  • 大数据概念
  • 大数据的特点
  • 大数据能干啥?
  • 大数据发展前景
  • 企业数据部的业务流程分析
  • 企业数据部的一般组织结构
  • Hadoop三大发行版本
  • Hadoop的优势
  • 大数据技术生态体系
  • 推荐系统框架图
02 Hadoop入门
  • 虚拟机网络模式设置为NAT
  • 克隆虚拟机
  • 修改为静态ip
  • 修改主机名
  • 关闭防火墙
  • 在opt目录下创建文件
  • 安装jdk
  • 安装Hadoop
  • 本地运行官方grep案例
  • 本地运行官方wordcount案例
03 Hadoop伪分布式模式
  • 伪分布式运行Hadoop案例
  • 启动HDFS并运行MapReduce程序
  • YARN上运行MapReduce 程序
  • 修改本地临时文件存储目录
  • Hadoop配置文件说明
  • 历史服务配置启动查看
  • 日志的聚集
  •  
  •  
  •  
04 Hadoop完全分布式模式
  • 虚拟机准备
  • 主机名设置
  • scp & rsync & SSH无密码登录
  • 编写集群分发脚本xsync
  • 编写分发脚本xcall
  • 配置集群
  • 集群启动及测试
  • Hadoop启动停止方式
  • 集群时间同步
  • 配置集群常见问题
05 源码编译&HDFS入门
  • 前期准备工作
  • jar包安装
  • 编译源码
  • 常见的问题及解决方案
  • HDFS概念
  • HDFS组成
  • HDFS文件块大小
  • HFDS命令行语法
  • HFDS命令行案例实操
  • HDFS客户端环境准备
06 DFS的API操作
  • HDFS获取文件系统
  • HDFS文件上传
  • HDFS文件下载
  • HDFS目录创建
  • HDFS文件夹删除
  • HDFS文件名更改
  • HDFS文件详情查看
  • HDFS文件和文件夹判断
07 HDFS的IO流操作
  • IO流操作HDFS文件上传
  • IO流操作HDFS文件下载
  • IO流操作HDFS定位文件读取
  • HDFS写数据流程
  • 剖析文件写入
  • 网络拓扑
  • 机架感知
  • HDFS读数据流程
08 NameNode工作机制
  • NameNode&2NN工作机制
  • 镜像文件和编辑日志文件
  • 滚动编辑日志
  • namenode版本号
  • SecondaryNameNode目录结构
  • 集群安全模式操作
  • Namenode多目录配置
  • 一致性模型
09 DataNode工作机制
  • DataNode工作机制
  • 数据完整性
  • 掉线时限参数设置
  • DataNode的目录结构
  • 服役新数据节点
  • 退役旧数据节点
  • Datanode多目录配置
  •  
10 HA框架原理
  • 集群间数据拷贝
  • Hadoop存档
  • 快照管理
  • 回收站
  • HDFS-HA工作机制
  • HDFS-HA工作要点
  • HDFS-HA自动故障转移工作机制
  •  

第三阶段
大数据Hadoop生态体系

11 HDFS-HA集群配置
  • 环境准备
  • 规划集群
  • 配置Zookeeper集群
  • 配置HDFS-HA集群
  • 启动HDFS-HA集群
  • 配置HDFS-HA自动故障转移
  • YARN-HA配置
  • YARN-HA工作机制
  • 配置YARN-HA集群
  • HDFS Federation架构设计
12 MapReduce框架原理
  • MapReduce核心思想
  • MapReduce进程
  • MapReduce编程规范(八股文)
  • MapReduce程序运行流程分析
  • MapReduce工作流程
  • 常用数据序列化类型
  • 自定义bean对象实现序列化接口
  • FileInputFormat切片机制
  • CombineTextInputFormat切片机制
  • 自定义InputFormat
13 Shuffle机制
  • MapTask工作机制
  • 并行度决定机制
  • Shuffle机制
  • Partition分区
  • WritableComparable排序
  • GroupingComparator分组(辅助排序)
  • Combiner合并
  • 数据倾斜&Distributedcache
  • ReduceTask工作机制
  • 自定义OutputFormat
14 数据压缩 & yarn
  • MapReduce支持的压缩编码
  • 采用压缩的位置
  • 压缩配置参数
  • 计数器应用
  • 数据清洗
  • Yarn的重要概念
  • Yarn工作机制
  • MapReduce作业提交全过程
  • MapReduce开发总结
  • MapReduce参数优化
15 MapReduce案例(一)
  • 案例一:统计一堆文件中单词出现的个数
  • 案例二:把单词按照ASCII码奇偶分区
  • 案例三:对每一个maptask的输出局部汇总
  • 案例四:大量小文件的切片优化
  • 案例五:统计手机号耗费的流量
  • 案例六:按照手机归属地不同省份输出到不同文件中
  • 案例七:按照总流量倒序排序
  • 案例八:不同省份输出文件内部排序
  • 案例九:求每个订单中最贵的商品
  • 案例十:reduce端表合并(数据倾斜)
16 MapReduce案例(二)
  • 案例十一:map端表合并(Distributedcache)
  • 案例十二:小文件处理(自定义InputFormat)
  • 案例十三:自定义日志输出路径(自定义OutputFormat)
  • 案例十四:日志清洗(数据清洗)
  • 案例十五:倒排索引(多job串联)
  • 案例十六:找博客共同好友分析
  • 案例十七:对数据流的压缩和解压缩
  • 案例十八:在Map输出端采用压缩
  • 案例十九:在Reduce输出端采用压缩
  •  
17 Zookeeper内部原理
  • Zookeeper特点
  • Zookeeper数据结构
  • Zookeeper应用场景
  • Zookeeper下载地址
  • Zookeeper本地模式安装部署
  • Zookeeper内部原理
  • 选举机制
  • 节点类型
  • stat结构体
  • 监听器原理
18 Zookeeper案例
  • 分布式安装部署
  • 客户端命令行操作
  • API应用环境准备
  • 创建ZooKeeper客户端
  • 创建子节点
  • 获取子节点并监听
  • 判断znode是否存在
  • 案例一:监听服务器节点动态上下线
  • 案例二:软负载均衡案例
  • 案例三:分布式通知和协调案例
19 Hive入门
  • 什么是Hive
  • 为什么使用Hive
  • Hive架构概述
  • Hive 的特点
  • Hive和数据库比较
  • Hive安装地址说明
  • Hive安装部署
  • 将本地文件导入Hive案例
  • 安装MySql服务器
  • 安装MySql客户端
20 Hive命令 & 数据类型
  • Hive常用交互命令
  • Hive其他命令操作
  • Hive常见属性配置
  • Hive数据仓库位置配置
  • Hive运行日志信息配置
  • 显示当前数据库,以及查询表的头信息配置
  • 参数配置方式
  • Hive数据类型
  • Hive基本数据类型
  • Hive集合数据类型

第三阶段
大数据Hadoop生态体系

21 Hive DDL数据定义
  • 创建数据库
  • 修改数据库
  • 查询数据库
  • 显示数据
  • 查看数据库详情
  • 删除数据库
  • 创建管理表
  • 创建外部表
  • 分区表基本操作及注意事项
  • 表重命名
  • 增加、修改和删除表分区
  • 增加/修改/替换列信息
  • 删除表
22 Hive DML数据操作
  • 数据导入
  • 向表中装载数据(Load)
  • 通过查询语句向表中插入数据(Insert)
  • 查询语句中创建表并加载数据(as select)
  • 创建表时通过location指定加载数据路径
  • Import数据到指定hive表中
  • 数据导出
  • Insert导出
  • Hadoop命令导出到本地
  • Hive Shell 命令导出
  • Export导出到HDFS上
  • Sqoop导出
  • 清除表中数据(Truncate)
23 Hive查询
  • 基本查询(SELECT…FROM)
  • 全表和特定字段查询
  • 列别名
  • 算术运算符
  • 常用函数
  • LIMIT语句
  • WHERE语句
  • 比较运算符(BETWEEN/IN/ IS NULL)
  • LIKE和RLIKE
  • 逻辑运算符(AND/OR/NOT)
  • 分组
  • GROUP BY语句
  • HAVING语句
24 Hive JOIN & 排序
  • 等值JOIN & 表的别名
  • 内连接
  • 左外连接
  • 右外连接
  • 满外连接
  • 多表连接
  • 笛卡尔积 JOIN
  • 全局排序(Order By)
  • 按照别名排序
  • 多个列排序
  • 每个MapReduce内部排序(Sort By)
  • 分区排序(Distribute By)
  • CLUSTER BY
25 Hive分桶 & 函数 & 压缩
  • 分桶表数据存储
  • 分桶抽样查询
  • 数据块抽样
  • 系统自带的函数
  • 自定义函数
  • 自定义UDF案例
  • 自定义UDAF案例
  • 自定义UDTF案例
  • Hadoop源码编译支持snappy压缩
  • Hadoop源码编译环境准备
  • Hadoop压缩配置
  • 开启Map输出阶段压缩
  • 开启Reduce输出阶段压缩
26 文件存储 & 企业级调优
  • 列式存储和行式存储
  • TEXTFILE格式
  • ORC格式
  • PARQUET格式
  • 主流文件存储格式对比实验
  • 存储和压缩结合
  • Fetch抓取
  • 本地模式
  • 表的优化
  • 小表、大表Join
27 Hive企业级调优(二)
  • 大表Join大表
  • MapJoin
  • Group By
  • Count(Distinct) 去重统计
  • 笛卡尔积
  • 行列过滤
  • 动态分区调整
  • 分桶
  • 分区
  • 数据倾斜
28 企业级调优(三)
  • Map数
  • 小文件进行合并
  • 复杂文件增加Map数
  • Reduce数
  • 并行执行
  • 严格模式
  • JVM重用
  • 推测执行
  • 压缩
  • EXPLAIN(执行计划)
29 Hive项目实战
  • 项目视频表
  • 项目用户表
  • 项目技术选型
  • 数据清洗
  • 数据分析
  • ETL之ETLUtil
  • ETL之Mapper
  • ETL之Runner
  • 执行ETL
  • 项目数据准备
30 Hive项目实战
  • 统计视频观看数Top10
  • 统计视频类别热度Top10
  • 统计出视频观看数最高的20个视频的所属类别以及类别包含Top20视频的个数
  • 统计视频观看数Top50所关联视频的所属类别Rank
  • 统计每个类别中的视频热度Top10,以Music为例
  • 统计每个类别中视频流量Top10,以Music为例
  • 统计上传视频最多的用户Top10以及他们上传的观看次数在前20的视频
  • 统计每个类别视频观看数Top10
  • JVM堆内存溢出解决方案
  • 项目总结

第三阶段
大数据Hadoop生态体系

31 Sqoop
  • Sqoop原理
  • Sqoop安装
  • 导入数据
  • RDBMS到HDFS
  • RDBMS到Hive
  • 导出数据
  • HIVE/HDFS到RDBMS
  • 脚本打包
  • 常用命令列举
  • 命令&参数详解
  • Sqoop的案例实操
32 Flume
  • Flume架构
  • Flume角色-Source
  • Flume角色-Channel
  • Flume角色-Sink
  • Flume角色-Event
  • Flume传输过程
  • 案例一:监控端口数据
  • 案例二:实时读取本地文件到HDFS
  • 案例三:实时读取目录文件到HDFS
  • 案例四:Flume与Flume之间数据传递:单Flume多Channel、Sink,
  • 案例五:Flume与Flume之间数据传递,多Flume汇总数据到单Flume< /li>
33 HBase原理及安装
  • HBase的角色
  • HBase的架构
  • HBase部署与使用
  • HBase基本操作
  • HBase表的操作
  • HBase读数据流程
  • HBase写数据流程
  • HBase JavaAPI
  • 安装Maven并配置环境变量
  • 新建Maven Project
  • 编写HBaseAPI程序
34 HBase集成及运维
  • 官方HBase-MapReduce
  • 自定义HBase-MapReduce1
  • 自定义HBase-MapReduce2
  • HBase与Hive的对比
  • HBase与Hive集成使用
  • 与Sqoop的集成
  • 常用的Shell操作
  • 数据的备份与恢复
  • 节点的服役
  • 节点的退役
  • 版本的确界
35 HBase企业级优化
  • HBase高可用
  • Hadoop的通用性优化
  • Linux优化
  • Zookeeper优化
  • HBase优化
  • HBase预分区优化
  • RowKey设计
  • 内存优化
  • 基础优化
  • HBase在商业项目中的能力
  • HBase2.0新特性
36 HBase微博项目
  • 微博系统需求分析
  • 微博系统代码设计
  • 创建命名空间以及表名的定义
  • 创建微博内容表
  • 创建用户关系表
  • 发布微博内容
  • 添加关注用户
  • 移除(取关)用户
  • 获取关注的人的微博内容
  • 测试
37 Azkaban
  • 各种调度工具特性对比
  • Azkaban与Oozie对比
  • Azkaban特点
  • Azkaban下载地址
  • Azkaban安装部署
  • 案例一:Command类型之单一job
  • 案例二:Command类型之多job工作流
  • 案例三:HDFS操作任务调度
  • 案例四:MapReduce任务调度
  • 案例五:Hive脚本任务调度
38 Oozie
  • Oozie框架原理
  • Oozie的功能模块
  • Oozie的常用节点
  • Oozie的安装部署
  • 案例一:Oozie调度shell脚本
  • 案例二:Oozie逻辑调度执行多个Job
  • 案例三:Oozie调度MapReduce任务
  • 案例四:Oozie定时任务/循环任务
  •  
  •  
39 HUE
  • HUE简介
  • HUE安装
  • 案例一:HUE与HDFS集成案例
  • 案例二:HUE与YARN集成案例
  • 案例三:HUE与Hive集成案例
  • 案例四:HUE与Mysql集成案例
  • 案例五:HUE与Oozie集成案例
  • 案例六:HUE与HBase集成案例
  • 案例七:HUE与Zookeeper集成案例
  • 案例八:HUE与Sqoop2集成案例
40 Kafka
  • Kafka是什么
  • 消息队列内部实现原理
  • 为什么需要消息队列
  • Kafka架构
  • Kafka集群规划
  • Kafka集群部署
  • Kafka命令行操作
  • Broker配置信息
  • Producer配置信息
  • Consumer配置信息

第三阶段
大数据Hadoop生态体系

41 Kafka工作流程分析
  • Kafka生产过程分析
  • 分区(Partition)
  • 副本(Replication)
  • 写入流程
  • broker 存储方式
  • broker存储策略
  • Zookeeper存储结构
  • Kafka消费过程分析
  • 高级API
  • 低级API
  • 消费者组、消费方式
  • 消费者组案例
42 Kafka API案例实操
  • Kafka生产者Java API
  • 创建生产者(过时的API)
  • 创建生产者(新API)
  • 创建生产者带回调函数(新API)
  • 自定义分区生产者案例
  • Kafka消费者Java API
  • 拦截器原理
  • 拦截器案例
  • Kafka Streams简介
  • Kafka Streams特点
  • 为什么要有Kafka Stream
  • Kafka Stream数据清洗案例
43 Storm入门
  • 离线计算是什么?
  • 流式计算是什么
  • Storm是什么?
  • Storm与Hadoop的区别
  • Storm应用场景及行业案例
  • Storm特点
  • Storm编程模型
  • 元组(Tuple)
  • 流(Stream)
  • 水龙头(Spout)
  • 转接头(Bolt)
  • 拓扑(Topology)
44 Storm组件 & 集群搭建
  • 主控节点与工作节点
  • Nimbus进程与Supervisor进程
  • 流分组(Stream grouping)
  • 工作进程(Worker)
  • 执行器(Executor)
  • 任务(Task)
  • 实时流计算常见架构图
  • Storm集群规划
  • Storm集群搭建
  • 配置集群
  • Storm日志信息查看
  • Storm命令行操作
45 Storm API案例实操
  • Component组件
  • spout水龙头
  • bolt转接头
  • spout的tail特性
  • 网站日志处理案例
  • 将接收到日志的会话id打印在控制台案例
  • 动态增加日志,查看控制台打印信息案例
  • 分组策略和并发度
  • 实时单词统计案例
  • 实时计算网站PV案例
  • 实时计算网站UV去重案例
  • 常见问题总结

第四阶段
大数据spark生态体系

01 Scala入门
  • 安装Scala
  • 配置IDEA环境
  • 使用Scala REPL
  • 使用Scala Doc
  • 声明值和变量
  • 常用类型
  • 算术和操作符重载
  • 调用函数和方法
  • apply、update方法
  • option类型
  • If else表达式、while表达式、for表达式
  • 函数
  • 过程、懒值、异常
02 Scala数据结构
  • 主要的集合特质
  • 数组、映射、元组、队列、堆栈、列表、集
  • 添加去除元素操作符
  • 将函数映射到集合
  • 化简、折叠、扫描
  • 拉链操作
  • 迭代器
  • 流(不可变列表)
  • 懒视图
  • 与java集合的互操作总结
  • 线程安全的集合
  • 并行集合
  • 操作符概述
03 Scala模式匹配
  • 更好的switch
  • 守卫
  • 模式中的变量
  • 类型模式
  • 匹配数组、列表和元组
  • 提取器
  • 变量声明中的模式
  • For表达式中的模式
  • 样例类
  • Copy方法和带名参数
  • Case语句的中置表达式
  • 匹配嵌套结构
  • 密封类、模拟枚举、偏函数
04 高阶函数 & 类 & 对象
  • 作为参数的函数
  • 匿名函数、高阶函数
  • 参数(类型)推断
  • 闭包、柯里化、控制抽象
  • 简单类和无参方法
  • Getter、Setter方法
  • 对象私有字段
  • Bean属性、构造器
  • 嵌套类
  • 单例对象、伴生对象
  • Apply方法
  • 应用程序对象
  • 枚举
05 Scala包和引入 & 继承
  • 包、作用域、包对象
  • 包可见性、引入
  • 重命名和隐藏方法
  • 继承类
  • 重写方法
  • 类型检查和转换
  • 受保护的字段和方法
  • 超类的构造
  • 重写字段
  • 匿名子类
  • 抽象类
  • 构造顺序和提前定义
  • Scala继承层级
06 Scala特质
  • 不允许多重继承
  • 当做接口使用的特质
  • 带有具体实现的特质
  • 带有特质的对象
  • 叠加在一起的特质
  • 在特质中重写抽象方法
  • 当做富接口使用的特质
  • 特质中的具体字段
  • 特质中的抽象字段
  • 特质构造顺序
  • 初始化特质中的字段
  • 扩展类的特质
  • 自身类型
07 注解 & 类型参数
  • 什么可以被注解
  • 注解参数
  • 注解实现
  • 针对java特性的注解
  • 用于优化的注解
  • 泛型类、泛型函数
  • 类型变量限定
  • 视图界定
  • 上下文界定
  • Manifest上下文界定
  • 多重界定
  • 类型约束、型变
  • 协变和逆变点
08 Scala隐式转换
  • 隐式转换
  • 利用隐式转换丰富类库功能
  • 引入隐式转换
  • 隐式转换规则
  • 隐式参数
  • 利用隐式参数进行隐式转换
  • 上下文界定
  • 读取行、读取字符
  • 读取词法单元和数字
  • 从URL或者其他源读取
  • 序列化
  • 进程控制
  • 正则表达式
09 Scala高级类型
  • 类型与类的区别
  • classOf与getClass的区别
  • 单例类型
  • 类型投影
  • 类型别名
  • 结构类型
  • 复合类型
  • 中置类型
  • 自身类型
  • 运行时反射
  • Actor并发
  • Actor模型、Actor消息传递
  • Actor配置、Actor调度
10 Scala Akka实例实操
  • 需求分析
  • 业务需求分解
  • 项目源代码
  • 新建Maven项目AkkaSystem
  • WorkInfo类抽象
  • ActorMessage
  • Master
  • Worker
  • 案例运行
  •  
  •  
  •  
  •  

第四阶段
大数据spark生态体系

11 Spark基础解析
  • 什么是Spark、Spark特点
  • Spark的用户和用途
  • Spark集群安装
  • 配置Job History Server
  • 配置Spark HA
  • 执行第一个spark程序
  • Spark应用提交
  • 启动Spark Shell
  • 在IDEA中编写WordCount程序
  • 在IDEA中本地调试WordCount程序
  • 在IDEA中远程调试WordCount程序
12 SparkCore应用解析(一)
  • RDD概述
  • RDD弹性
  • RDD特点
  • RDD编程模型
  • RDD持久化
  • RDD检查点机制
  • RDD的依赖关系
  • DAG的生成
  • 键值对RDD的转化操作
  • 键值对RDD的行动操作
  • 键值对RDD的数据分区
13 SparkCore应用解析(二)
  • 文本文件输入输出
  • JSON文件输入输出
  • CSV文件输入输出
  • SequenceFile文件输入输出
  • 对象文件输入输出
  • Hadoop输入输出格式
  • 文件系统的输入输出
  • 数据库的输入输出
  • RDD编程进阶
  • 累加器、自定义累加器
  • 广播变量
14 SparkSQL应用解析(一)
  • 什么是Spark SQL
  • RDD vs DataFrames vs DataSet
  • SparkSQL命令行查询流程
  • IDEA创建SparkSQL程序
  • 新的起始点SparkSession
  • 创建DataFrames
  • DataFrame常用操作
  • Dataset和RDD互操作
  • 类型之间的转换总结
  • 用户自定义UDF函数
  • 用户自定义聚合函数
15 SparkSQL应用解析(二)
  • SparkSQL数据源
  • 通用加载/保存方法
  • Parquet文件
  • Hive数据库
  • JSON数据集
  • JDBC
  • JDBC/ODBC服务器
  • 运行Spark SQL CLI
  • 计算所有订单中每年的销售单数、销售总额案例
  • 计算所有订单每年最大金额订单的销售额案例
  • 计算所有订单中每年最畅销货品案例
16 SparkStreaming应用解析
  • 什么是Spark Streaming
  • Spark与Storm的对比
  • 运行Spark Streaming
  • 架构与抽象
  • 初始化StreamingContext
  • 什么是Dstreams
  • DStreams输入
  • DStreams转换
  • DStreams输出
  • 累加器和广播变量
  • DataFrame ans SQL Operations
  • Caching / Persistence
  • 7x24 不间断运行
  • 性能考量
17 SparkGraphX 应用解析(一)
  • 什么是Spark GraphX
  • 弹性分布式属性图
  • 运行图计算程序
  • 图存储模式
  • GraphX存储模式
  • vertices、edges以及triplets
  • 图的构建
  • BSP计算模式
  • 图操作一览
  • 操作一览
  • 转换操作
  • 结构操作
  • 顶点关联操作
  • 聚合操作、缓存操作
18 SparkGraphX 应用解析(二)
  • Pregel API
  • pregel计算模型
  • pregel实现最短路径
  • GraphX实例
  • PageRank排名算法
  • PageRank算法原理
  • Spark GraphX实现
  • 广度优先遍历(参考)
  • 单源最短路径(参考)
  • 连通图(参考)
  • 三角计数(参考)
  • PageRank实例
  •  
  •  
19 Spark内核解析(一)
  • RDD抽象
  • 计算抽象、集群模式
  • RPC网络通信抽象
  • 启动Standalone集群
  • 核心组件
  • 核心组件交互流程
  • Block管理
  • 整体应用
  • start-daemon.sh脚本解析
  • spark-class脚本解析
  • start-master.sh脚本解析
  • start-slaves.sh脚本解析
  • start-all.sh脚本解析
  • spark-submit脚本解析
20 Spark内核解析(二)
  • Spark通信架构
  • Endpoint启动过程
  • Endpoint Send & Ask流程
  • Endpoint receive流程
  • Endpoint Inbox处理流程
  • Endpoint画像
  • Master节点和Work节点启动流程
  • Client启动流程
  • Driver和DriverRunner
  • SparkContext解析
  • SparkContext创建过程
  • SparkContext简易结构与交互关系
  • Master对Application资源分配
  • Worker创建Executor

第四阶段
大数据spark生态体系

21 Spark内核解析(三)
  • Job提交和Task的拆分
  • Task的执行流程
  • Task的回馈流程
  • Task的迭代流程
  • Spark的数据存储
  • 数据写入过程分析
  • 数据读取过程分析
  • Partition如何转化为Block
  • partition和block的对应关系
  • Spark Shuffle过程
  • Spill过程
  • Collect、Sort
  • Spill
  • Merge
  • Copy
  • Merge Sort
  • MapReduce与Spark过程对比
22 Spark内核解析(四)
  • Spark内存管理
  • 堆内内存、堆外内存
  • 内存管理接口、静态内存管理
  • 统一内存管理
  • RDD 的持久化机制
  • RDD 缓存的过程
  • 淘汰和落盘
  • 多任务间内存分配
  • Shuffle 的内存占用
  • 部署模式解析
  • standalone框架
  • yarn集群模式、mesos集群模式
  • spark 三种部署模式的区别
  • 异常分析1:worker异常退出
  • 异常分析2:executor异常退出
  • 异常分析3:master 异常退出
  • wordcount程序运行原理窥探
23 Spark优化解析(一)
  • 调优基本原则
  • 数据倾斜优化
  • 如何定位导致数据倾斜的代码
  • 如何缓解/消除数据倾斜
  • Shuffle调优
  • HashShuffleManager运行原理
  • SortShuffleManager运行原理
  • 程序开发调优
  • 原则一:避免创建重复的RDD
  • 原则二:尽可能复用同一个RDD
  • 原则三:对多次使用的RDD进行持久化
  • 原则四:尽量避免使用shuffle类算子
  • 原则五:使用map-side预聚合的shuffle操作
  • 原则六:使用高性能的算子
  • 原则七:广播大变量
  • 原则八:使用Kryo优化序列化性能
  • 原则九:优化数据结构
24 优化解析 & 机器学习
  • 运行资源调优
  • JVM虚拟机优化
  • GC优化
  • Spark的内存管理优化
  • 根据日志进一步调优
  • 京东商城基于Spark的风控系统的实现
  • Spark在美团的实践
  • 数据处理平台架构中的SMACK组合
  • 大数据架构选择
  • 机器学习算法常用指标
  • 机器学习凸优化算法分析及案例实操
  • 机器学习L1、L2正则化算法分析及案例实操
  • PCA降维算法分析及案例实操
  • ICA降维算法分析及案例实操
  • 非平衡数据处理
  • 模型优化
  • 损失函数
25 机器学习(二)
  • 矩阵奇异值分解SVD
  • 线性回归算法
  • 逻辑回归算法
  • 贝叶斯分类算法
  • SVM支持向量机算法
  • 决策树算法
  • K近邻算法
  • KMEANS聚类算法
  • EM算法
  • FPGrowth关联规则算法
  • Apriori关联规则算法
  • 协同过滤推荐算法
  • ALS交替最小二乘算法
  • SVD推荐系统算法
  • 随机森林算法
  • AdaBoost算法
  • XgBoost算法、GBDT算法

我们为你提供权威的项目实战

大数据时代,为我们开发项目提供了支撑

旅游网站的流式计算应用

Spark 组件的Streaming是一个接近实时的流计算框架。 它允许工程师和数据科学家轻松利用SparkStreaming和SQL来获得实时数据洞察能力并构建实时反馈循环。在其上构建了多个关键任务应用程序。在这次项目中,我们将首先概述SparkStream,然后讨论几个生产用例,例如数据仓库的实时摄取管道,以及计算在线数据产品的派生数据。我们将讨论 Stream如何集成到我们的大数据生态系统,如Kafka,HBase和Hive,并分享一系列的经验教训。其中包括扩展多个Streaming作业,同时使用单个Kafka集群,管理流式作业的生命周期和检查点, 以及将 HBase 用作状态存储的最佳实践。

申请免费试听>>

Hadoop电商精准营销

公司传统业务在MySQL平台,为客户提供360的画像,公司决定利用非结构化数据:网站后天日志分析用户操作行为,为精准营销准备数据。本项目通过传统业务迁移、关联非结构化数据与结构化数据、优化集群到如何利用 Spark 实现精准营销 算法及可视化,为大家总结大数据全知识体系的内容。

申请免费试听>>

互联网搜索公司的多媒体流式处理框架

随着移动时代的到来,来自智能手机用户的大量多媒体文件在网上发布。我们现在迫切需要一个高效的分布式平台来处理和分析这些多媒体数据。然而,现有方法通常遭受与遗留多媒体理解实现的兼容性问题;由于多媒体数据的大文件大小导致的存储器管理问题;和有限平台数据格式支持。通过基于二进制数据管道的执行,提出了基于流的实现,以及灵活的I / O类型以支持各种应用场景。在本项目中我们将演示如何在公司的图像货币化产品中使用这个框架,以加快我们的模型训练流程,并提高我们的CTR预测。

申请免费试听>>

大数据工程师就业合作企业