尚硅谷大数据就业捷报频传

基本薪资+年终奖(不含平时的补助、绩效、奖金):平均月薪20333,最低月薪14000,高位月薪25000,平均年薪244000(统计数据截止2018年6月)

部分学员就业喜报

大数据培训 大数据培训 大数据培训 大数据培训 大数据培训 大数据培训 大数据培训 大数据培训 大数据培训 大数据培训

追求“极课”精神,探索教育黑科技

每期班课程都在更新迭代,保证内容在业内持续领先,前沿技术超出40%以上

大数据企业的商业项目直接为学员所用,一线大牛工程师亲自指导实战开发
业务覆盖金融、新闻、电商、智慧城市等主流行业,全程贯穿项目实战
覆盖前沿技术:Hadoop,Spark,实时数据处理,离线数据处理,机器学习
尚硅谷大咖讲师+企业导师联合授课,培养中国更“出彩”的大数据工程师

就业选择多,薪资增长快,未来发展不可限量

大数据研发

大数据研发

大数据分析

大数据开发

人工智能

大数据开发

大数据运维

大数据开发

大牛引路,实战贯穿!

大数据企业的商业项目直接为学员所用,一线大牛工程师亲自指导实战开发
业务覆盖社交、电商、交通、电信等主流行业,全程贯穿项目实战

大数据项目谷粒电信

项目架构:
Hadoop + Zookeeper + HBase + Hive +Flume + Kafka +Maven

业务分析:
1)用户每天主叫通话个数统计,通话时间统计。
2)用户每月通话记录统计,通话时间统计。
3)用户之间亲密关系统计。

大数据项目谷粒城市

项目架构:
Hadoop+ Zookeeper+ Kafka+ Spark+ Redis+ Scala

业务分析:
1)公路堵车预测
2)地铁人流量预测
3)共享单车聚集点预测等等

大数据项目谷粒电商

项目架构:
Scala+ SparkCore+ SparkSQL+ SparkStreaming+Mysql+Hive+HBase

业务分析:
1)Session各范围访问步长、访问时长占比统计 2)Session随机抽取
3)Top10热门品类
4)Top10热门品类Top10活跃Session统计
5)页面转化率统计
6)各区域Top3商品统计
7)广告黑名单实时统计
8)广告点击量实时统计
9)各省热门广告实时统计
10)最近一小时广告点击量实时统计

大数据项目谷粒社交

项目架构:
Nginx+Tomcat+Flume+Kafka+Spark+Hadoop+Hive+HBase+Echart+Crontab

业务分析:
1)新增用户统计
2)活跃用户统计
3)沉默用户统计
4)启动次数统计
5)版本分布统计
6)留存分析统计
7)新鲜度分析
8)各城市用户分布实时统计

大数据项目谷粒医疗

项目架构:
MySQL+ Redis+ ElasticSearch+ Azkaban+ Spark+ Zookeeper+ Flume+ Kafka

业务分析:
1)离线统计服务 (1)商品平均得分统计
(2)每个类别优质电影统计
(3)最热医疗商品统计
(4)优质医疗商品统计
(5)用户商品推荐矩阵
(6)商品相似度矩阵
2)实时推荐算法的实现
(1)获取用户的K次最近评分
(2)获取当前商品最相似的K个商品
(3)商品推荐优先级计算
(4)更新实时推荐结果

大数据项目谷粒旅游

项目架构:
Hadoop+HBase+Hive+Mysql+Sparksql+Spark Streaming+ Azkaban+ Zookeeper

业务分析:
1)市场增长趋势统计
2)目的地影响力分析
3)目的地客流分布——景区排名
4)目的地客流分布——区域排名
5)成熟客源市场分析-地市排名
6)成熟客源市场分析-省份排名
7)潜在客源市场分析-地市排名
8)潜在客源市转化率分析-地市排名
9)潜在客源市场分析-省份排名
10)潜在客源市转化率分析-省份排名
11)景区交通方式分析

看课程就明白,谁才是真正的实力派

授课内容全面深入,直击核心

第一阶段
Java

01 Java编程语言概述
  • Java编程语言发展简史
  • Java编程语言主要特征
  • Java技术体系平台
  • Java核心机制与JVM运行原理
  • 搭建 Java开发环境
  • JDK 的安装与配置
  • 开发体验 Java 应用程序
  • Java 程序的执行原理
  • Java Code Style
  • 变量的声明与使用
  • 变量内存空间分配与原理
  • 进制与位运算
  • 变量的数据类型
  • 数据类型之间的转换
  • 变量的运算与底层运算原理
02 Java基础语法
  • 流程控制语句
  • Java 编译器执行流程
  • if 分支结构
  • switch 选择结构与相关规则
  • 循环结构
  • for 循环
  • while 循环
  • do-while 循环语句
  • 各语句性能对比与应用场景
  • 特殊流程控制语句
  • 方法的声明与使用
  • 方法调用的过程分析
  • 跨类调用方法
  • 参数的值传递
  • 方法的重载 Overload
03 面向对象编程
  • 类和对象
  • 对象的属性和方法
  • Java 的内存管理与垃圾回收
  • JVM 的内存结构
  • 面向对象的三大特性
  • 对象的关联关系
  • Object 类的结构与方法
  • 继承中类中各个成员特点
  • 方法重写 Override
  • 访问权限修饰符
  • 多态与虚拟方法调用
  • instanceof 运算符
  • 多态的应用之多态数组
  • 多态的应用之多态参数
  • 对象类型的转换
04 Java数组
  • static 修饰符
  • 类的成员之代码块
  • 静态代码块与非静态代码块
  • 单例 (Singleton) 设计模式
  • final 修饰符
  • 包 (package) 的管理与作用
  • DOS 命令行下编译器操作
  • 使用 jar 命令打包应用程序
  • 数组的创建与使用
  • 一维数组与多维数组
  • 数组的默认初始化与内存分析
  • 数组的常见算法分析
  • 操作数组的工具类 Arrays
  • 命令行参数
  • 可变参数
05 高级类特性
  • 抽象类 (abstract) 实际应用举例
  • 接口 (interface) 的应用与常见问题
  • Template Method 设计模式
  • Factory Method 设计模式
  • 代理模式 (Proxy)
  • 类的成员之内部类
  • 匿名内部类
  • Java8 中匿名内部类的新特性
  • Enum枚举
  • 枚举的属性与方法
  • 接口实现枚举类
  • Annotation 注解
  • JDK 内置注解
  • 自定义注解
  • 元注解

第一阶段
Java

06 Java API
  • Wrapper 包装类
  • 装箱与拆箱
  • 包装类的缓存分析
  • 字符串处理类
  • String 类的使用与内存原理
  • String 类的算法分析
  • StringBuffer 与 StringBuilder
  • 字符串处理类性能分析
  • 其他常用类
  • Java.lang.System类
  • Java.util.Date类
  • Java.text.SimpleDateFormat类
  • Java.util.Calendar类
  • Java.lang.Math类
  • Java.math.BigInteger类与Java.
07 异常处理
  • 异常的原理
  • 异常的堆栈抛出机制
  • 异常的结构体系
  • 受检与非受检异常
  • 异常的处理
  • try-catch 示例
  • 使用finally回收资源
  • throw 制造异常
  • 异常的处理方式之throws
  • Java 7增强的throw 语句
  • 方法重写与 throws
  • 自定义异常
  • 实战中自定义异常的应用解析
  • 异常信息的访问
  • Java 程序的常见问题及解决方
08 集合与泛型
  • 集合框架概述
  • Collection 系列集合
  • List 系列集合与Set系列集合
  • java.util.ArrayList源码与数据结构分析
  • java.util.LinkedList 源码分析
  • java.util.HashSet 内部原理
  • java.util.TreeSet 数据结构分析
  • java7 中Map 系列集合与数据结构分析
  • java8 中 Map 系列集合新特性对比
  • java.util.concurrent.ConcurrentHashMap
  • Iterator 与 ListIterator
  • Collections 工具类
  • 集合中使用泛型
  • 自定义泛型
  • 通配符
09 Java IO流
  • IO流结构体系
  • IO流原理分析
  • IO流的分类
  • IO流与文件操作
  • IO流的包装与链接
  • 缓冲流
  • 文件的复制与性能对比
  • 对象流
  • 对象的序列化与反序列化
  • 控制台IO
  • 标准输入流与标准输出流
  • 打印流
  • 转换流
  • 字符编码与解码
  • RandomAccessFile 类
10 Java 多线程
  • 线程的原理
  • 线程的创建与启动
  • 创建线程的几种方式对比
  • 继承 Thread 类与实现 Runnable 接口
  • 创建线程方式对比
  • 线程的控制
  • 线程的调度
  • 线程的优先级
  • 线程的生命周期
  • 多线程的安全问题与解决办法
  • 线程的同步
  • 互斥锁
  • 线程的死锁问题
  • 线程通信
  • 生产者与消费者案例

第一阶段
Java

11 Java Reflection
  • Java 反射机制的研究与应用
  • 反射的原理分析
  • JVM与类
  • 类的加载、连接、初始化
  • 类初始化的时机
  • 类加载器 ClassLoader简介
  • 类加载机制
  • 创建并使用自定义的类加载器
  • 开启反射的源头 Class
  • 获取 Class 实例的四种方式
  • 从 Class 中获取信息
  • Proxy 和 InvocationHandler 创建动态代理
  • 动态代理和AOP(Aspect Orient Programming)
  • 泛型和Class类
  • 使用反射来获取泛型信息
12 网络编程
  • 网络编程基础知识
  • 网络编程的主要问题
  • 如何实现网络中主机的相互通讯
  • 网络通讯要素
  • 网络通信协议
  • OSI参考模型
  • TCP/IP参考模型(或TCP/IP协议)
  • 数据的封装与拆封
  • Java.net.InetAddress 类
  • TCP 协议与UDP协议
  • 基于TCP协议的网络编程
  • Socket 的TCP编程
  • 基于UDP协议的网络编程
  • URL编程
  • 针对HTTP协议的URLConnec
13 Java8 新特性
  • Lambda 表达式
  • 类型推断
  • Java8核心函数式接口
  • Lambda表达式的参数传递
  • 方法引用与构造器引用
  • 强大的 Stream API
  • Stream 操作的核心步骤
  • 惰性求值与内部迭代
  • 筛选与切片
  • 映射与排序
  • 查找与匹配
  • 归约与收集
  • 并行流与串行流
  • Optional 容器类
  • ....
14 Mysql 基础
  • Mysql的安装和使用
  • 图解Mysql程序结构
  • Mysql服务器的配置
  • Mysql 客户端使用
  • 用户权限管理
  • Mysql数据库的使用
  • SQL语句的三种类型
  • DML、DDL、DCL的应用
  • 数据处理
  • 子查询
  • 创建和管理表
  • 约束与分页
  •  
  •  
  •  
15 JDBC
  • JDBC概述
  • 获取数据库连接
  • 数据库连接池C3P0 与 DBCP
  • 使用JDBC 完成数据库DML操作
  • 大数据的操作
  • 批量处理与元数据
  • 使用QueryRunner
  • 可插拔式结果集处理
  • 批量处理
  • 大数据结果集处理
  • 自定义结果集处理
  • 利用DBUtils编写通用 DAO
  • 使用 JdbcTemplate
  • 使用 JdbcDaoSupport
  • 使用 NamedParameterJdbcTemplate

第二阶段
JavaEE核心

01 Java WEB核心
  • JavaWeb的技术体系
  • 登录页面的开发
  • 登录功能实现-环境的搭建
  • 登录功能实现-LoginServlet
  • 登录功能实现-页面中错误提示
  • 注册功能实现-异步的表单校验
  • 登录功能实现-登录成功跳转主页面
  • 主页面访问权限控制
  • 在线人数统计
  • xml/JSON
02 Spring
  • SpringIOC&DI机制
  • Spring配置式组件管理
  • Spring注解式自动装配
  • Spring表达式语言
  • SpringAOP&动态代理
  • SpringJDBC使用
  • Spring声明式事务
  • Spring单元测试
  • Spring源码分析
  •  
03 SpringMVC
  • SpringMVC配置&运行流程
  • SpringMVC数据绑定
  • 模型处理&@ModelAttribute
  • RestFulCRUD
  • 表单标签&静态资源处理
  • 数据转换&格式化&JSR303数据校验
  • HttpMessageConverter
  • Ajax&国际化&文件上传下载
  • 异常处理
  • 整合&父子容器
04 MyBatis
  • MyBatis配置&查询数据
  • MyBatis全局配置文件
  • MyBatis映射文件
  • 关联查询,动态sql
  • MyBatis缓存机制&整合ehcache
  • MyBatis逆向工程
  • MyBatis、Spring、SpringMVC整合
  • MyBatis运行原理&源码分析
  • MyBatis拦截器&插件开发
  • 分页插件&存储过程调用&自
05 Maven
  • Maven环境搭建
  • Maven构建&自动化构建
  • 本地仓库&中央仓库
  • maven创建web工程
  • pom.xml、依赖管理
  • 坐标、依赖、生命周期等
  • eclipse下的maven使用
  • 继承&聚合
  • 9.maven构建SSH/SSM应用
  • 10.自动部署&持续集成&持续部
06 Linux入门 & VI/VIM
  • 概述
  • 下载地址、Linux特点
  • Linux和Windows区别
  • 安装VMWare虚拟机
  • 安装CentOS
  • 安装VMTools工具
  • 虚拟机屏幕保护设置
  • IVT虚拟化支持
  • 树状目录结构
  • 一般模式、编辑模式
  • 指令模式
07 常用基本命令
  • 帮助命令
  • 文件目录类
  • 时间日期类
  • 用户管理命令
  • 用户组管理命令
  • 文件权限类
  • 磁盘分区类
  • 搜索查找类
  • 进程线程类
  • 压缩和解压类
  • 后台服务管理类
08 系统管理 & RPM
  • 查看和配置网络IP和网关
  • 配置主机名
  • 防火墙、关机重启
  • 找回root密码
  • 安装SecureCRT
  • SecureCRT鼠标粘贴配置
  • SecureCRT中文乱码解决方法
  • 查询(rpm -qa)
  • 卸载(rpm -e)
  • 安装(rpm -ivh)
  • crond系统定时任务
09 shell编程
  • shell概述
  • shell脚本的执行方式
  • shell定义变量
  • 将命令的返回值赋给变量
  • 设置环境变量
  • 位置参数变量
  • 预定义变量
  • 运算符
  • 条件判断语句
  • 常用判断条件
  • if判断
10 shell & YUM仓库配置
  • case语句
  • for循环
  • while循环
  • 系统函数
  • 自定义函数
  • 为什么要制作本地YUM源
  • yum的常用命令
  • 关联网络yum源
  • 制作本地yum源
  • 制作只有本机能访问的本地YUM源
  • 制作其他主机通过网络能访问的本地YUM源
11 Redis
  • NoSQL&Redis入门
  • Redis/memcache/MongDB对比
  • Redis安装&启动
  • 分布式数据库CAP原理
  • Redis五大数据类型和基本操作命令
  • Redis总体配置Redis.conf
  • Redis持久化(RDB和AOF)
  • Redis事务控制
  • Redis发布和订阅
  • Redis(Master/Slave)主从复制
12 Git&Git Hub
  • Git安装配置
  • Git本地库搭建
  • Git常用操作命令
  • Github注册与配置
  • Github与Git协同办公
  • TortoiseGit安装配置
  • Egit操作push/pull,
  • Git工作流
  • 集中式&GitFlow&Forking
  •  
13 MySQL高级
  • MySQL架构组成
  • MySQL备份和恢复
  • MySQL查询和慢查询日志分析
  • MySQL索引优化
  • MySQL存储引擎优化
  • MySQL锁机制优化
  • MySQL高可用设计
  • MySQL集群
  •  
  •  
14 JVM原理
  • JVM简析
  • JVM组成结构
  • JVM堆、栈原理
  • JVM-Heap三区原理
  • JVM垃圾收集机制
  • 堆内存调优
  • GC回收策略
  • GC三大算法
  •  
  •  
15 Java JUC 线程高级
  • 内存可见性分析
  • 原子变量与CAS (Compare And Swap) 算法分析
  • ConcurrentHashMap 锁分段机制
  • CountDownLatch 闭锁
  • Lock 同步锁
  • Condition 控制线程通信
  • 线程按序交替
  • ReadWriteLock 读写锁
  • 线程八锁/线程池
  • 线程调度

第三阶段
大数据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的功能?椟/li>
  • 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算法
26 Elasticsearch入门
  • 什么是Elasticsearch?
  • Elasticsearch的适用场景、特点、核心概念
  • Elasticsearch安装部署、head插件安装
  • 获取Transport Client案例
  • 创建索引案例
  • 删除索引案例
  • 新建文档(源数据json串)
  • 新建文档(源数据map方式添加json)
  • 新建文档(源数据es构建器添加json)
  • 搜索文档数据(单个索引)
27 Elasticsearch案例实操
  • 搜索文档数据(多个索引)
  • 更新文档数据(update)
  • 更新文档数据(upsert)
  • 删除文档数据(prepareDelete)
  • 查询所有(matchAllQuery)
  • 对所有字段分词查询(queryStringQuery)
  • 通配符查询(wildcardQuery)
  • 词条查询(TermQuery)
  • :?檠?╢uzzy)
  • 映射操作案例
28 Python基。ㄒ唬?/dt>
  • 认识python
  • 编写第一个python程序
  • 注释
  • 变量以及类型
  • 标示符和关键字
  • 输入&输出
  • 运算符
  • 数据类型转换
  • 判断语句介绍
  • if判断语句
29 Python基。ǘ??/dt>
  • if嵌套
  • while循环
  • for循环
  • break和continue
  • 字符串输入&输出
  • 下标和切片
  • 元组(tuple)
  • 函数
  • 文件操作
  • 类和对象
30 Python基。ㄈ??/dt>
  • 封装
  • 继承
  • 多态
  • 设计模式
  • 异常
  • ?椟/li>
  • 列表推导式
  • 集合
  • 垃圾回收
  • 编码风格

管理体系

从心出发,助你学习、求职、晋升一路顺畅!

入学
测验

科学量化开发潜力
从一开始就知道自己的特长,让学习更明确!

学习小组,自习辅导,阶段测评,个人学习分析
讲师、助教、班主任时时陪同,让你从此爱上学习!

实时教学
反馈系统
职业能
力拓展

纵向拓展专业技术,横向拓展综合实力
挤进尚硅谷,注定你优秀,不只是说说而已!

就业
指导

知名企业技术大牛分享,老学员分享
在尚硅谷,你永远不是一个人在奋斗!

尚硅谷java培训学员风采1
联系我们
电话:010-56253825
微博:weibo.com/u/3272253032
地址:北京市昌平区宏?萍荚白酆下?层
关注尚硅谷微信
一键下载全部视频教程

北京pk10 北京pk10 北京赛车pk10 北京赛车pk10 北京pk10 pk10 北京pk10 北京赛车pk10 北京赛车 北京pk10 北京赛车 北京赛车 北京赛车平台 极速赛车 极速赛车 极速赛车 北京pk10 北京pk10 北京pk10 北京pk10 北京PK10 北京pk10 北京pk10开奖直播 北京赛车pk10 北京赛车PK10 北京赛车pk10 极速赛车 极速赛车开奖 极速赛车开奖