首页 体系课 大数据工程师 2024 版
大数据工程师 2024 版
对标高薪岗位技能模型,紧跟技术发展,带你更快进阶大数据工程师
企业级案例驱动,湖仓一体架构设计,前沿技术还原真实业务场景
学习答疑+1V1简历指导+面试指导全方位服务,为你的学习保驾护航
37 课程内容
12 个月 教学服务期限
180 小时 视频时长
1160 学习人数
100% 好评度
37 课程内容
12 个月 教学服务期限
70000 手敲代码
2 企业及项目
16+ 实操案例
1160 学习人数

优惠价 ¥3488.00

7天未学可退 ¥3888

加购物车 立即购买

大数据已成为高薪岗位的代名词,更是前景无限的热门技术

现在正是红利开始的时间,入行正当时

近五年行业薪资上涨近70%,相较于其他程序员
岗位上限更高
现有人员30W,人才岗位需求150W,相当于
五个岗位抢一个人才
各大高校增设大数据专业,各地兴建大数据中心,
国家的重视肉眼可见

入行大数据,95%开发者都曾面临这些困境

入门难度大
基础薄弱,经验欠缺,难以理解大数据
复杂的运算机制和运行原理
技能要求高
市面课程良莠不齐,技能树过于肤浅,
无法满足高薪岗位需求
涉及领域广
大数据横跨前后端海量技术栈,技术
更迭频繁,小白难以全面覆盖
缺实战经验
没有实战项目练手,简历缺乏大型项目
背书,无法应对复杂的实际场景

紧跟技术更迭,高效学习模型,让你牢牢占据先发优势,领跑竞争对手

低学习门槛
贴心入门引导,只需要Java
基础和数据库基础
高技术水准
课程累计处理TB级数据,
数据处理能力支持PB级数据,
达到主流一线公司水准
全技能覆盖
遵循大厂开发标准流程,
涵盖500+核心技能点
多实操项目
整合电商、直播、搜索、中台
4大“可写入简历的”企业级
项目,实战上手加深理解

遵循一线大厂岗位需求,培养具有“硬技能”的高薪人才

2024 版持续迭代 30+课时,20+知识点,成就大数据行业“前沿”技术人才

全面构建六大能力体系,轻松应对多种岗位需求

点击查看详细课程大纲

前沿技术体系+丰富实战案例+最佳学习路径,直击大厂Offer

我们遍历各大招聘平台“大数据开发”岗位信息,围绕Hadoop+Spark+Flink三大生态圈打造“精干”课程

精选企业级项目案例,手把手带你提升实战能力

从入门到入职,从基础到应用,最后达到中级大数据开发岗位能力标准

离线数据仓库
实时数据仓库(湖仓一体)
直播平台三度关系推荐
开发仿百度搜索引擎
数据中台大屏

项目简介:

整合各个业务线数据,为各个业务系统提
供统一&规范的数据出口。是整个大数据
系统中的关键,是所有数据分析、数据挖
掘等工作的基础。
项目性能满足日增100T+数据处理;查询
速度满足秒级查询。

项目收获:

学习并掌握数据仓库的分层设计&数据仓
库从0~1的构建过程。

项目简介:

随着业务需求的变化,离线数仓已经无法
满足企业对报表的实时统计分析需求,因
此,急需引入实时数据仓库。不过常规的
实时数据仓库存在数据采集链路过长,中
间数据不可查,数据口径不一致等问题。
因此引入Flink CDC和数据湖实现湖仓一
体(批流一体)架构,解决常规实时数据仓
库存在的一些问题。
项目性能满足日增100T+数据处理;查询
速度满足秒级查询。

项目收获:

了解业内多种实时数仓的架构设计方案,
重点掌握Flink CDC以及湖仓一体(批流一
体)架构的设计与实现。

项目简介:

构建直播平台用户三度关系推荐功能,增
加用户互动/主播曝光量/提升平台用户活
跃度。详细分析数据采集/数据分发/数据
存储/数据计算/数据展现等功能,完整复
现互联网企业大数据项目从0~1,从1~N的
开发过程。
项目性能满足日增100T+数据处理;查询
速度满足秒级查询。

项目收获:

掌握图数据库实现关系数据的存储和推荐
掌握大数据中数据采集分发、离线计算和
实时计算的具体应用。

项目简介:

实现仿百度搜索引擎的海量数据存储和检
索功能,可以提供海量数据下的多条件快
速复杂检索能力。
项目性能满足日增100T+数据存储和建立
索引;多条件组合查询速度满足秒级查
询。

项目收获:

学习并掌握海量数据下的存储和建立索引
能力。

项目简介:

打通数据孤岛,构建企业级数据中台,赋
能企业数字化转型发展。数据中台从后台
将数据流入,完成海量数据的存储、计
算、服务化,构成企业的核心数据能力,
为前台基于数据的定制化创新和业务中台
基于数据反馈的持续演进提供了强大支
撑。开发数据中台之数据加工总线组件。

项目收获:

掌握一线互联网企业数据中台构建流程
通过了解巨头企业的项目架构,理解巨型
项目的思想。
掌握数据加工总线组件的设计与开发。
项目展示
项目架构

数千学员真实好评,远超一门体系课的收获,给你私教般的学习体验

定制化课程服务,学习效率翻倍,帮你轻松度过面试关

关注课程公众号,还能畅览更多有料干货

「 扫码关注课程公众号 」
「 扫码试读配套资料 」

除了出色的视频内容,这里还有伴你整个技术生涯的“技术社区”

学习时你能在这里获取答案,工作后你能在这里解决难题

问答专区
作业专区
笔记专区
资料专区
编程遇难点,名师来指点;疑难汇总一键查看,海量问答覆盖全面
多方位知识面,分层巩固吸收;学练测一体,一对一项目点评
脱离时空限制,随记随查很方便;总结课程重点,分享提升代码经验
横向拓展,超全配套教辅资源;纵向延伸,源码开放更助知识理解
*为保证课程内容紧跟市场变化,课程章节将逐步开放,直至课程完结
了解更多

课程大纲及学习周期安排 (详细版)

阶段一: 走进大数据
  • 第1周
  • 第2周
  • 第3周
  • 第4周
  • 第5周
学好大数据先攻克Linux

在步入大数据殿堂之前,先带领大家快速掌握大数据的必备技能:Linux的操作使用,为后面学习大数据技术打下坚实基础。预习资料传送门:http://u3v.cn/5Moy2x

课程安排:
  1. 1、掌握Linux虚拟机的安装和配置
  2. 2、使用ScecureCRT连接Linux虚拟机
  3. 3、掌握Linux中常见高级命令(vi、wc、sort、date、jps、kill等命令)的使用
  4. 4、掌握Linux中三剑客(grep、sed、awk)的常见用法
  5. 5、掌握Linux的高级配置(ip、hostname、防火墙)
  6. 6、掌握Shell脚本的开发
  7. 7、掌握Shell中变量、循环和判断的使用
  8. 8、掌握Shell中的扩展内容
  9. 9、掌握Linux中crontab定时器的使用
  10. 10、了解认识什么是大数据
  11. 11、大数据产生的背景
  12. 12、大数据的4V特征
  13. 13、大数据的行业应用
  14. 【本周思考与讨论】
  15. 1、结合自己的实际情况,明确学习目标、制定学习计划。有计划、有执行、有落实,必有收获!
  16. 2、利用学习的Linux高级技能实现论坛访问日志数据分析,看一下到底是谁在暴力攻击你的网站?
  17. 3、某云服务器被挖矿病毒程序侵入,病毒程序很顽强,如何开发一个脚本监控并杀掉此病毒程序?
  18. 4、手动安装JDK配置环境变量太繁琐了,如何开发一个一键安装配置JDK的程序?
  19. 5、为什么使用jps命令查看不到正在运行的Java进程?
  20. 6、在SecureCRT中按Ctrl+s会发生什么现象,尝试一下?
  21. 7、如何确认Crontab中的定时任务是否正常执行?
  22. 8、使用crontab -e 和 vi /etc/crontab配置的定时任务有什么区别?
  23. 9、谈一谈你眼中的大数据是什么样的?
  24. 学习贵在坚持,每天进步一点点!
大数据起源之初识Hadoop

Hadoop是大数据开创者,引领者,学习大数据必经之路,本周带领大家了解Hadoop,以及Hadoop集群的安装部署。预习资料:http://u3v.cn/626VYg

课程安排:
  1. 1、什么是Hadoop
  2. 2、Hadoop发行版介绍
  3. 3、Hadoop版本演变历史
  4. 4、Hadoop3.x的细节优化
  5. 5、Hadoop三大核心组件介绍
  6. 6、伪分布集群安装部署
  7. 7、分布式集群安装部署
  8. 8、Hadoop的客户端节点
  9. 【本周思考与讨论】
  10. 1、如何让你对大数据平台进行技术选型,你是选择原生Hadoop还是CDH/HDP?这样选择的依据是什么?
  11. 2、谈一下你对Hadoop的认知,Hadoop的出现到底改变了什么?
  12. 3、你在安装Hadoop集群的时候都遇到了哪些坑?如何解决的?
  13. 4、动手配置一个Hadoop客户端节点,都有哪些注意事项?
  14. 5、Hadoop客户端节点是怎么识别Hadoop集群的?
  15. 6、如果让你规划一套大数据平台的部署方案,你会如何规划?
  16. 授人以鱼不如授人以渔,加油,打工人!
Hadoop之HDFS的使用

通过生活场景"小明租房"案例引入HDFS核心架构,掌握HDFS的常见Shell操作以及Java代码操作,对以后实现海量数据的存储打下基础。

课程安排:
  1. 1、生活场景引入:"小明租房"案例一步一步引入Hadoop中的分布式存储架构
  2. 2、HDFS的Shell介绍
  3. 3、HDFS的常见Shell操作
  4. 4、HDFS案例实操
  5. 5、Java代码操作HDFS
  6. 6、HDFS的高级Shell命令
  7. 7、HDFS读数据过程分析
  8. 8、HDFS写数据过程分析
  9. 9、HDFS写数据源码分析
  10. 【本周思考与讨论】
  11. 1、还有哪些和HDFS类型的分布式文件系统?它们都有什么特点?
  12. 2、如何实现大海捞针,从HDFS中揪出不经常使用并且占用空间的大文件?
  13. 3、如何获取指定的HDFS目录下所有文件的Block块信息?
  14. 4、在工作中最常用的是使用shell命名操作HDFS还是使用Java代码操作?
  15. 5、我们自己串联多块硬盘实现海量数据存储和使用HDFS有什么区别?
  16. 6、HDFS集群之间是否可以实现数据迁移?
  17. 7、如何通过JS代码(或者C++、PHP之类的代码)获取HDFS中的文件信息?
  18. 知其然也要知其所以然!
Hadoop之HDFS核心进程剖析

通过对HDFS中核心进程NameNode、SecondaryNameNode、DataNode进行详细分析,帮助大家更好的理解HDFS的底层原理

课程安排:
  1. 1、NameNode介绍
  2. 2、NameNode深入
  3. 3、SecondaryNameNode介绍
  4. 4、DataNode介绍
  5. 5、HDFS的回收站
  6. 6、HDFS的安全模式详解
  7. 7、实战:定时上传数据至HDFS
  8. 8、HDFS的高可用和高扩展机制分析
  9. 【本周思考与讨论】
  10. 1、HDFS中的回收站和windows中的回收站有什么区别?
  11. 2、Hadoop中必须要有SecondaryNameNode进程吗?
  12. 3、HDFS中NameNode内存将要耗尽,有什么解决方案?
  13. 4、一台128G内存的NameNode节点理论上可以存储多少文件的元数据?
  14. 5、HDFS中的安全模式是为了干什么?有什么意义?
  15. 6、HDFS的存储能力理论上来说是有极限的,如何扩容?
  16. 7、开发脚本实现定时向HDFS中上传内容和下载内容
  17. 动手一次胜过浏览万次,多做,多练!
Hadoop之初识MR

通过"计算扑克牌中的黑桃个数"案例引入MapReduce的思想,详细分析了MapReduce的执行流程,并且通过开发WordCount案例加深理解。

课程安排:
  1. 1、MapReduce介绍
  2. 2、 MapReduce执行原理
  3. 3、实战:WordCount案例图解
  4. 4、实战:WordCount案例开发
  5. 5、MapReduce任务日志查看
  6. 6、停止Hadoop集群中的任务
  7. 7、MapReduce程序扩展
  8. 【本周思考与讨论】
  9. 1、谈一下你对本地计算的理解?它的计算性能为什么这么高?
  10. 2、如何开发一个只有map阶段的MapReduce任务?这种任务的应用场景是什么?
  11. 3、使用MapReduce如何开发自定义二次排序Key?
  12. 4、使用MapReduce如何实现统计TopN的需求?
  13. 5、谈一谈你对源码分析的看法?如何快速高效分析项目源码?
  14. 6、如果MapReduce任务中没有shuffle过程会出现什么现象?
  15. 7、MapReduce中的Combiner阶段在什么场景下适合使用?
  16. 8、如何使用MapReduce对数据实现全局排序?
  17. 源码是解决一切问题的根源,一言不合,源码中见分晓!
阶段二: PB级离线数据计算分析存储方案
  • 第6周
  • 第7周
  • 第8周
  • 第9周
  • 第10周
  • 第11周
拿来就用的企业级解决方案

详细分析了小文件的解决方案、数据倾斜的解决方案、YARN调度器的使用、以及Hadoop在CDH和HDP中的使用。

课程安排:
  1. 1、小文件问题之SequenceFile
  2. 2、小文件问题之MapFile
  3. 3、案例:小文件存储和计算
  4. 4、 数据倾斜问题分析
  5. 5、数据倾斜案例实战
  6. 6、YARN的基本情况介绍
  7. 7、YARN中的调度器分析
  8. 8、案例:YARN多资源队列配置和使用
  9. 9、Hadoop官方文档使用指北
  10. 10、Hadoop在CDH中的使用
  11. 11、Hadoop在HDP中的使用
  12. 【本周思考与讨论】
  13. 1、在工作中如何遇到了小文件问题,都有哪些解决方法?你推荐是用哪种?理由是什么?
  14. 2、能不能使用zip或者rar文件解决HDFS中的小文件问题?
  15. 3、总结一下数据倾斜产生的原因,如何避免?如何解决?
  16. 4、如何从一批数据中找出倾斜的key?
  17. 5、分析一下Hadoop中的RPC框架?
  18. 6、想一下,如果给你一个10T内存、6400个CPU的大数据集群,你会如何在YARN中分配多个资源队列?
  19. 7、在MapReduce程序中使用gzip数据压缩方式对程序计算性能进行优化,对比一下性能提升了多少?
  20. 8、在MapReduce中如何实现多路输入(同时指定多个不同的输入目录)?
  21. 9、在MapReduce中如何实现多路输出(按照一定规则,将结果输出到多个不同的目录中)?
  22. 【福利加餐】
  23. 1、大数据技术揭开抖音推荐的真相
  24. 2、大厂资深HR教你如何准备简历和面试
  25. 3、扩展知识-Hadoop3.0新特性之纠删码技术
  26. 4、疑难问题-课程内容典型疑难问题整理【第一弹】
  27. 5、面试题-课程内容常见面试题整理【第一弹】
  28. 理论和实践是好基友,学练结合,效果增倍!
Flume从0到高手一站式养成记

Flume是一个分布式、高可靠、高可用的系统,能够有效的收集、聚合、移动大量的日志数据,在数据采集领域,属于中流砥柱,在这里通过原理、实战、监控、优化等层面对Flume进行学习。

课程安排:
  1. 1、快速了解Flume
  2. 2、Flume的三大核心组件
  3. 3、Flume安装部署
  4. 4、Flume的Hello World
  5. 5、案例:采集文件内容上传至HDFS
  6. 6、Flume高级组件之Source Interceptors
  7. 7、Flume高级组件之Channel Selectors
  8. 8、Flume高级组件之Sink Processors
  9. 9、各种自定义组件
  10. 10、Flume优化
  11. 11、Flume进程监控
  12. 【本周思考与讨论】
  13. 1、设想一下,给你几百台机器让你采集日志数据,你应该如何快速高效的实现?
  14. 2、和Flume类似的日志数据采集工具还有Logstash、Filebeat,他们有什么典型区别?如何进行技术选型?
  15. 3、如何开发一个通用的监控程序来监控Flume进程的运行情况,实现监控+预警+自动重启一条龙服务?
  16. 4、如何使用Flume中的自定义拦截器实现数据分目录存储?
  17. 5、如果Flume中内置的sink组件不够用,如何开发自定义的Sink组件实现数据存储?
  18. 6、 Flume中哪些地方用到了事务机制?
  19. 合适的才是最好的,技术选型的时候要坚持此原则!
数据仓库Hive从入门到小牛

频繁的开发MapReduce是非常繁琐的,并且很多业务人员是不懂代码的,如何让他们也可以很方便的操作HDFS中的海量数据呢?Hive的横空出世,解决了这一难题。

课程安排:
  1. 1、快速了解Hive
  2. 2、数据库和数据仓库的区别
  3. 3、Hive安装部署
  4. 4、Hive使用方式之命令行方式
  5. 5、Hive使用方式之JDBC方式
  6. 6、Set命令的使用
  7. 7、Hive的日志配置
  8. 8、Hive中数据库的操作
  9. 9、Hive中表的操作
  10. 10、Hive中数据类型的应用
  11. 11、Hive表类型之内部表+外部表
  12. 12、Hive表类型之内部分区表
  13. 13、Hive表类型之外部分区表
  14. 14、Hive表类型之桶表+视图
  15. 15、Hive数据处理综合案例
  16. 16、Hive高级函数之分组排序取TopN
  17. 17、Hive高级函数之行转列
  18. 18、Hive高级函数之列转行
  19. 19、Hive的排序函数
  20. 20、Hive的分组和去重函数
  21. 21、一个SQL语句分析
  22. 22、Hive的Web工具-HUE
  23. 【本周思考与讨论】
  24. 1、如何在Hive中开发自定义SQL函数实现单词首字母大写转换功能?
  25. 2、如何开发开发只产生一次shuffle且无子查询的SQL语句?
  26. 3、使用Hive SQL统计一份订单销售数据,计算出月环比
  27. 4、针对一个用到了union all和group by的SQL,在数据量很大的情况下,就会很慢,如何优化此SQL?
  28. 5、在一份海量数据中,如何使用HiveSQL发现倾斜的Key?
  29. 6、摘取自某同学工作中的实际需求:使用Hive加载指定复杂嵌套格式的数据
  30. 7、生产环境中为什么建议使用Hive外部表?
  31. 8、Hive分区表如何开启自动加载分区?
  32. 9、Hive中支持多种数据存储格式,默认是TextFile,还可以SequenceFile、RCFile、ORCFile等,这4种数据存储格式有什么优缺点?
Hive扩展内容

针对Hive中的数据压缩格式、数据存储格式、SQL执行计划进行扩展分析,进一步提高Hive的存储能力和计算性能。

课程安排:
  1. 1、常见的数据压缩格式介绍
  2. 2、数据压缩格式选择建议和压缩位置
  3. 3、数据压缩格式案例实战分析
  4. 4、默认未压缩格式演示
  5. 5、Deflate压缩格式演示
  6. 6、Gzip压缩格式演示
  7. 7、Bzip2压缩格式演示
  8. 8、Lz4压缩格式演示
  9. 9、Snappy压缩格式演示
  10. 10、Lzo压缩格式演示
  11. 11、数据存储格式之TextFile的原理及使用
  12. 12、数据存储格式之SequenceFile的原理及使用
  13. 13、数据存储格式之RCFile的原理及使用
  14. 14、数据存储格式之ORC的原理及使用
  15. 15、数据存储格式之Parquet的原理及使用
  16. 16、数据存储格式总结
  17. 17、数据压缩格式和存储格式在数仓中的应用
  18. 18、什么是explain
  19. 19、查看SQL的执行计划-explain
  20. 20、查看SQL执行计划的扩展信息-explain extended
  21. 21、查询SQL的数据来源-explain dependency
  22. 22、Hive SQL案例分析-开启Map端聚合(Combiner)
  23. 23、Hive SQL案例分析-大表Join小表
  24. 【本周思考与讨论】
  25. 1、为什么要在Hive中集成压缩格式?
  26. 2、如何在Hive中针对Map阶段的中间结果设置压缩?
  27. 3、针对小文件的问题,在Hive中应该如何解决?
  28. 4、在Hive数据仓库中应该如何选择合适的数据存储格式和压缩格式?
快速上手NoSQL数据库HBase

HBase是一个高可靠 、高性能 、面向列 、可伸缩的NoSQL数据库,解决了HDFS无法实现修改删除的问题,适合应用在高并发实时读写的应用场景中。

课程安排:
  1. 1、HBase核心原理介绍
  2. 2、列式存储简介及优点
  3. 3、HBase典型应用场景及应用案例分析
  4. 4、HBase的优缺点总结
  5. 5、HBase逻辑存储模型详解
  6. 6、HBase集群安装部署
  7. 7、HBase常用命令之基础命令和DDL命令
  8. 8、HBase常用命令之增删改查命令和命名空间的操作
  9. 9、HBase JavaAPI开发环境配置
  10. 10、HBase JavaAPI之增加和查询操作
  11. 11、HBase JavaAPI之查询多版本数据和删除操作
  12. 12、HBase JavaAPI之创建表和删除表
  13. 13、Region概念详解
  14. 14、HBase物理架构详解
  15. 15、HBase底层架构详解
  16. 16、WAL预写日志系统
  17. 17、HFile文件及布隆过滤器介绍
  18. 18、HFile的合并机制详解
  19. 19、Region的分裂机制详解
  20. 20、Region的负载均衡策略详解
  21. 21、列族高级设置
  22. 22、Scan全表扫描功能详解
  23. 23、HBase批量导入和批量导出功能详解
  24. 24、HBase链接池分析
  25. 25、HBase预分区、Rowkey列族的设计原则
  26. 26、HBase核心参数优化
  27. 27、HBase扩展内容(Hive+HBase、Phoenix、协处理器、Elasticsearch+HBase)
  28. 28、HBase常见问题总结
  29. 29、HBase实现分页功能
  30. 30、封装HBaseUtils工具类
  31. 【本周思考与讨论】
  32. 1、如果想支持海量数据读写需求和SQL查询分析需求,有哪些解决方案或技术组件可以实现?
  33. 2、HDFS是不支持修改删除的,为什么HBase是基于HDFS的,HBase却可以支持修改删除?
  34. 3、如果有固定多个字段组合查询的需求,应该对HBase做哪些设计?
  35. 4、为什么在大数据领域很多技术框架底层数据存储倾向于使用列式存储?
  36. 5、谈一谈你的HBase中的多数据版本特性的理解?
  37. 6、谈一谈你对HBase中列族的理解?
数据分析引擎之Impala

Hive的计算延迟比较高,不适合应用在即席查询需求中,因此Impala出现了,它是使用C++实现的基于内存的分布式计算引擎,可以提供低延迟,高性能的计算能力。

课程安排:
  1. 1、什么是Impala
  2. 2、Impala的优点和缺点
  3. 3、Impala + Hive架构分析
  4. 4、Impala三大核心组件详解
  5. 5、Impala的整体运行架构
  6. 6、基于CDH平台的Impala安装部署
  7. 7、impala-shell客户端命令行使用
  8. 8、Impala JDBC代码访问
  9. 9、Impala Hue页面访问
  10. 10、Impala中内部表的使用
  11. 11、Impala中外部表的使用
  12. 12、Impala中分区表的使用
  13. 13、Impala中refresh命令的原理及使用
  14. 14、Impala中invalidate metadata命令的原理及使用
  15. 15、Impala 的数据存储和数据压缩
  16. 16、Impala SQL VS Hive SQL
  17. 17、Impala 和 Hive的典型应用场景
  18. 18、Impala 集成HBase(包含Hive集成HBase)
  19. 【本周思考与讨论】
  20. 1、Impala是否可以完全取代Hive?
  21. 2、针对Hive中包含了Date字段的表,如何处理才能比较好的兼容ImpalaSQL?
阶段三: Spark+电商离线数据仓库设计与实战
  • 第12周
  • 第13周
  • 第14周
  • 第15周
  • 第16周
  • 第17周
7天极速掌握Scala语言

Scala的函数式编程受到很多框架的青睐,例如Kafka、Spark、Flink等框架都是使用Scala作为底层源码开发语言,下面就带着大家7天极速掌握Scala语言。

课程安排:
  1. 1、快速了解Scala
  2. 2、Scala环境安装配置
  3. 3、Scala中的变量和数据类型
  4. 4、Scala中的表达式和循环
  5. 5、Scala集合体系之Set+List+Map
  6. 6、Scala中的Array和Tuple
  7. 7、Scala中函数的使用
  8. 8、Scala面向对象之类的使用
  9. 9、Scala面向对象之对象和伴生对象
  10. 10、Scala面向对象之apply和main的使用
  11. 11、Scala面向对象之接口的使用
  12. 12、Scala函数式编程之匿名函数和高阶函数的使用
  13. 13、Scala高级特性之模式匹配和隐式转换
  14. 【本周思考与讨论】
  15. 1、谈一下你对Scala语言的认知,Scala和Java有什么异同?Scala的语法格式和Python有没有相似之处?
  16. 2、Scala中的匿名函数和Java中的匿名函数有什么区别?
  17. 3、如何使用Scala代码读取MySQL数据库中的数据?
  18. 4、如何使用Scala实现单例设计模式?Scala中不支持静态关键字,如何实现单例?
  19. 5、Scala中的数据类型和Java中的数据类型有什么区别?
  20. 6、Scala代码和Java代码可以无缝集成吗?
  21. 7、分析一下Scala中的map和tuple 的区别?
  22. 8、Scala中的下划线 _ 有哪些作用?
Spark快速上手

Spark是目前企业中应用最广泛的计算引擎,盘它!实际案例详细分析Spark中的Transformation算子和Action算子使用,RDD持久化,共享变量使用,最后通过一个综合案例加深理解。

课程安排:
  1. 1、快速了解Spark
  2. 2、Spark 集群安装部署(Standalone+ON YARN)
  3. 3、Spark工作原理分析
  4. 4、什么是RDD
  5. 5、Spark架构原理
  6. 6、Spark项目开发环境配置
  7. 7、WordCount代码开发(Java+Scala)
  8. 8、Spark任务的三种提交方式
  9. 9、Spark开启historyServer服务
  10. 10、创建RDD的三种方式
  11. 11、Transformation和Action介绍
  12. 12、Transformation操作开发实战
  13. 13、Action操作开发实战
  14. 14、RDD持久化原理
  15. 15、RDD持久化开发实战
  16. 16、共享变量之Broadcast Variable的使用
  17. 17、共享变量之Accumulator的使用
  18. 18、案例实战:TopN主播统计
  19. 19、面试题
  20. 【本周思考与讨论】
  21. 1、谈一下你对Spark的理解,Spark和Hadoop之间是什么关系?
  22. 2、按照你的理解,在工作中最常用的是Spark的哪一种任务提交方式?说出你的理由?
  23. 3、你们目前工作中开发Spark代码是使用scala语言还是java语言?你倾向于使用哪一种语言?
  24. 4、在Spark程序中将处理的结果数据按照一定的规则,输出到多个不同的目录中,实现多路输出
  25. 5、如何使用Spark程序实现对WordCount的结果排序输出?
  26. 6、如何使用Spark实现自定义二次排序Key的开发?
  27. 7、Spark中join和cogroup的区别?
  28. 8、Spark如何读取多个不同目录下的数据(多路输入)?
  29. 9、介绍一下Spark的远程进程通信机制?
Spark性能优化的道与术

通过对Spark中的宽依赖、窄依赖、Stage、Shuffle机制进行详细分析,加深对Spark的理解,以及对Spark中的checkpoint机制通过源码层面进行深度剖析。

课程安排:
  1. 1、宽依赖和窄依赖
  2. 2、Stage的理解
  3. 3、Spark任务的三种提交模式
  4. 4、Shuffle介绍
  5. 5、三种Shuffle机制分析
  6. 6、checkpoint概述
  7. 7、checkpoint和持久化的区别
  8. 8、checkpoint代码开发和执行分析
  9. 9、checkpoint源码分析之写操作和读操作
  10. 10、Spark程序性能优化分析
  11. 11、高性能序列化类库Kryo的使用
  12. 12、持久化或者checkpoint
  13. 13、JVM垃圾回收调忧
  14. 14、提高并行度
  15. 15、数据本地化
  16. 16、算子优化
  17. 17、SparkSql快速上手使用
  18. 18、实战:SparkSQL实现TopN主播统计
  19. 【本周思考与讨论】
  20. 1、谈一下你对宽依赖和窄依赖的理解,以及Stage的个数和宽依赖之间的关系?
  21. 2、谈一下你对Spark性能优化的总结,到底哪种优化策略的效果最明显?
  22. 3、想要在Spark中直接操作MySQL应该如何实现?
  23. 4、如何在SparkSQL中使用自定义函数(UDF)?
  24. 5、算子优化在优化方案中常见吗?都适合在哪些场景中使用?
  25. 6、Spark中的repartition和coalesce有什么区别?
  26. 7、谈一下你对SparkSQL和Hive的理解?
  27. 8、分析一下SparkSQL的执行流程?
Spark3.x扩展内容

基于Spark3.x版本进行更新迭代,重点分析Spark3.x中的新特性,扩展SparkSQL相关内容,并且增加Spark Shuffle新方案-Celeborn。

课程安排:
  1. 1、Spark 3.0.0版本介绍
  2. 2、基于Spark 3.x版本开发代码
  3. 3、在已有的大数据集群中集成Spark 3.x环境
  4. 4、向YARN中同时提交Spark 2.x和Spark 3.x的代码
  5. 5、Spark 1.x~3.x的演变历史
  6. 6、自适应查询执行之自适应调整Shuffle分区数量
  7. 7、自适应查询执行之动态调整Join策略
  8. 8、自适应查询执行之动态优化倾斜的 Join
  9. 9、Spark 3.x新特性之动态分区裁剪
  10. 10、Spark 3.x新特性之加速器感知调度
  11. 11、Spark 3.x新特性之Catalog 插件 API
  12. 12、Spark 3.x新特性之更好的 ANSI SQL 兼容性
  13. 13、在SparkSQL 命令行中集成Hive
  14. 14、在SparkSQL 代码中集成Hive
  15. 15、SparkSQL写入Hive表的几种方式
  16. 16、Spark传统Shuffle存在的问题
  17. 17、Celeborn核心原理-优点-架构
  18. 18、Celeborn安装部署
  19. 19、Spark集成Celeborn实战
  20. 【本周思考与讨论】
  21. 1、禁用动态优化倾斜的 Join策略时,如何解决数据倾斜问题?
  22. 2、禁用动态调整Join策略时,如果实现Map端Join?
  23. 3、动态分区裁剪和SQL中的谓词下推有什么关系?
综合项目:电商数据仓库之用户行为数仓

整合各个业务线数据,为各个业务系统提供统一&规范的数据出口。通过对项目的由来,需求、技术进行分析和选型,实现用户行为数据数仓开发。

课程安排:
  1. 1、项目效果展示
  2. 2、项目的由来
  3. 3、什么是数据仓库
  4. 4、数据仓库基础知识
  5. 5、数据仓库分层
  6. 6、典型数仓系统架构分析
  7. 7、技术选型
  8. 8、整体架构设计
  9. 9、服务器资源规划
  10. 10、生成用户行为数据【客户端数据】
  11. 11、生成商品订单相关数据【服务端数据】
  12. 12、采集用户行为数据【客户端数据】
  13. 13、Sqoop安装部署
  14. 14、Sqoop之数据导入功能
  15. 15、Sqoop之数据导出功能
  16. 16、采集商品订单相关数据【服务端数据】
  17. 17、用户行为数据数仓开发之ods层开发
  18. 18、用户行为数据数仓开发之ods层脚本抽取
  19. 19、用户行为数据数仓开发之dwd层开发
  20. 20、用户行为数据数仓开发之dwd层脚本抽取
  21. 21、用户行为数据数仓需求分析
  22. 22、用户行为数据数仓需求开发
  23. 23、用户行为数据数仓表和任务脚本总结
  24. 【本周思考与讨论】
  25. 1、谈一下你对数据仓库分层的理解,如果分成3层或者5层可以吗?
  26. 2、谈一下你对数仓技术选型的看法,请提出你的思路?
  27. 3、如何使用Sqoop将MySQL表数据导入Hive表中?
  28. 4、如何使用Sqoop将Hive表数据导出到MySQL表中?
  29. 5、开发数仓的时候有哪些注意事项?什么时候容易掉坑里面?
  30. 6、针对数仓脚本的开发心得,交流一下
  31. 7、什么是数据湖?谈一下你的理解?
综合项目:电商数据仓库之商品订单数仓

基于商品订单数据开发数仓,详细分析了拉链表的由来和具体实现。使用数据可视化工具Zepplin实现数据展现,使用Azkaban调度器实现任务依赖调度。

课程安排:
  1. 1、商品订单数据数仓开发之ods层和dwd层
  2. 2、商品订单数据数仓需求分析与开发
  3. 3、什么是拉链表
  4. 4、如何制作拉链表
  5. 5、【实战】基于订单表的拉链表实现
  6. 6、拉链表的性能问题分析
  7. 7、商品订单数据数仓表和任务脚本总结
  8. 8、数据可视化之Zepplin的安装部署和参数配置
  9. 9、数据可视化之Zepplin的使用
  10. 10、任务调度之Crontab调度器的使用
  11. 11、任务调度之Azkaban的安装部署
  12. 12、任务调度之Azkaban提交独立任务
  13. 13、任务调度之Azkaban提交依赖任务
  14. 14、任务调度之在数仓中使用Azkaban
  15. 15、项目优化
  16. 【本周思考与讨论】
  17. 1、使用Hive SQL可以实现数据清洗,使用Spark代码也能实现数据清洗,有什么区别吗?
  18. 2、使用Spark代码实现ods层数据清洗工作,替换掉之前的Hive SQL
  19. 3、针对用户信息表,有必要制作成拉链表吗?说出你的理由?
  20. 4、Crontab和Azkaban都能实现任务调度,应该如何技术选型呢?
  21. 5、如何使用Azkaban实现调度漏斗分析需求相关任务?
  22. 6、Hive和Impala有什么异同?谈一谈你对Impala的理解?
  23. 7、Ooize和Azkaban都是大数据中常用的任务调度工具,谈一下你对Ooize的看法?
阶段四: 高频实时数据处理+海量数据全文检索方案
  • 第18周
  • 第19周
  • 第20周
  • 第21周
  • 第22周
  • 第23周
  • 第24周
  • 第25周
  • 第26周
  • 第27周
消息队列之Kafka从入门到小牛

Kafka是一个支持高吞吐、持久性、分布式的消息队列,非常适合海量数据的实时生产和消费,详细分析了Kafka的核心原理、代码实战、性能优化,以及Kafka的企业级应用。

课程安排:
  1. 1、什么是消息队列
  2. 2、什么是Kafka
  3. 3、Zookeeper安装部署之单机模式和集群模式
  4. 4、 Kafka安装部署之单机模式和集群模式
  5. 5、Kafka中的生产者和消费者
  6. 6、案例:QQ群聊天
  7. 7、Broker扩展内容
  8. 8、Producer扩展内容
  9. 9、Consumer扩展内容
  10. 10、Topic+Partition+Message扩展内容
  11. 11、Kafka中的存储策略
  12. 12、Kafka中的容错机制
  13. 13、Java代码实现生产者代码
  14. 14、Java代码实现消费者代码
  15. 15、消费者代码扩展
  16. 16、Consumer消费Offset查询
  17. 17、Consumer消费顺序
  18. 18、Kafka的三种语义
  19. 19、Kafka参数调忧之JVM参数调忧
  20. 20、Kafka参数调忧之Replication参数调忧
  21. 21、Kafka参数调忧之Log参数调忧
  22. 22、Kafka Topic命名小技巧
  23. 23、Kafka集群监控管理工具(CMAK)
  24. 24、实战:Flume集成Kafka
  25. 25、实战:Kafka集群平滑升级
  26. 【本周思考与讨论】
  27. 1、Kafka和ActiveMQ、RabbitMQ、RocketMQ这些MQ有什么区别?
  28. 2、如何使用Zookeeper实现分布式进程监控?原理是什么?
  29. 3、Zookeeper如何实现分布式共享锁?原理是什么?
  30. 4、如何保证Kafka数据不丢失?
  31. 5、kafka如何保证数据一致性和可靠性?
  32. 6、谈一谈你对Kafka中exactly-once语义的理解?
  33. 7、如何开发一个基于Kafka的Topic Offset变化智能监控工具?
  34. 8、如何开发一个基于Kafka的消费者待消费数据(lag)监控告警工具?
极速上手内存数据库Redis

Redis是一种面向键值对的NoSQL内存数据库,可以满足我们对海量数据的读写需求,在这里我们学习Redis中的五种常用数据类型以及Redis中的一些高级特性,达到快速上手使用。

课程安排:
  1. 1、快速了解Redis
  2. 2、Redis的安装部署
  3. 3、Redis基础命令
  4. 4、Redis多数据库特性
  5. 5、Redis常用数据类型之String
  6. 6、Redis常用数据类型之Hash
  7. 7、Redis常用数据类型之List
  8. 8、Redis常用数据类型之Set
  9. 9、Redis常用数据类型之Sorted Set
  10. 10、案例:存储高一班的学员信息
  11. 11、Java代码操作Redis之单连接
  12. 12、Java代码操作Redis之连接池
  13. 13、提取RedisUtils工具类
  14. 14、Redis高级特性之expire
  15. 15、Redis高级特性之pipeline
  16. 16、Redis高级特性之info
  17. 17、Redis持久化之RDB
  18. 18、Redis持久化之AOF
  19. 19、Redis的安全策略
  20. 20、Redis监控命令-monitor
  21. 21、Redis架构演进过程
  22. 【本周思考与讨论】
  23. 1、如何使用Redis实现一个带有优先级的先进先出队列?
  24. 2、如何使用Scala代码实现RedisUtils工具类?
  25. 3、如何使用Redis方便的获取前10名学生信息以及获取某一个学生的排名?
  26. 4、Redis中事务和管道的区别?
  27. 5、如何查看Redis中的数据使用了多少内存?
  28. 6、Redis的内存碎片问题如何解决?
Flink快速上手篇

快速了解Flink的基本原理和核心特点,掌握Flink中流数据和批数据的编程思路和代码实战,Flink中Standalone集群、ON YARN集群的安装部署,以及Flink中核心API的使用。

课程安排:
  1. 1、快速了解Flink
  2. 2、Flink Streaming程序开发
  3. 3、Flink Batch程序开发
  4. 4、Flink Standalone集群安装部署
  5. 5、Flink ON YARN的第一种方式
  6. 6、Flink ON YARN的第二种方式
  7. 7、向集群中提交Flink任务
  8. 8、Flink核心API介绍
  9. 9、DataStream API之DataSource
  10. 10、DataStream API之Transformation
  11. 11、DataStream API之分区规则介绍
  12. 12、DataStream API之分区规则的使用
  13. 13、DataStream API之DataSink
  14. 14、DataSet API之DataSource
  15. 15、DataSet API之Transformation
  16. 16、DataSet API之DataSink
  17. 17、Table API 和 SQL介绍
  18. 18、创建TableEnvironment对象
  19. 19、TableAPI和SQL的使用
  20. 20、使用DataStream创建表
  21. 21、使用DataSet创建表
  22. 22、将表转换成DataStream
  23. 22、将表转换成DataSet
  24. 【本周思考与讨论】
  25. 1、如何在Flink流计算中开发自定义Source?
  26. 2、如何在Flink流计算中开发自定义Sink?
  27. 3、如何在Flink批处理中创建自定义Source?
  28. 4、如何在Flink批处理中创建自定义Sink?
  29. 5、Flink中的哪些算子容易产生数据倾斜?
  30. 6、分析一下Flink SQL的执行流程?
Flink高级进阶之路

详细剖析Window和Time的使用,Watermark的实战应用,并行度的设置,Kafka Connector的具体应用,Application模式,以及SparkStreaming的特性和使用。

课程安排:
  1. 1、Window的概念和类型
  2. 2、TimeWindow的使用
  3. 3、CountWindow的使用
  4. 4、自定义Window的使用
  5. 5、Window中的增量聚合和全量聚合
  6. 6、Flink中的Time
  7. 7、Watermark的分析
  8. 8、开发Watermark代码
  9. 9、通过数据跟踪观察Watermark
  10. 10、Watermark+EventTime处理乱序数据
  11. 11、延迟数据的三种处理方式
  12. 12、在多并行度下的Watermark应用
  13. 13、Watermark案例总结
  14. 14、并行度介绍及四种设置方式
  15. 15、并行度案例分析
  16. 16、KafkaConsumer的使用
  17. 17、KafkaConsumer消费策略设置
  18. 18、KafkaConsumer的容错
  19. 19、KafkaProducer的使用
  20. 20、KafkaProducer的容错
  21. 21、Flink Application的核心原理及特点介绍
  22. 22、Flink Application模式的使用方式
  23. 23、Flink Application模式下的深度使用-解决胖Jar
  24. 24、SparkStreaming的WordCount程序开发
  25. 25、SparkStreaming整合Kafka
  26. 【本周思考与讨论】
  27. 1、使用FlinkSQL对Kafka中的数据进行操作,如何通过DDL的方式集成Flink和Kafka?
  28. 2、如何在SparkStreaming中使用SparkSQL实现数据计算?
  29. 3、介绍一下 Flink中kafka 消费者的Exactly-Once是如何实现的?
  30. 4、介绍一下Flink中kafka 生产者的Exactly-Once是如何实现的?
  31. 5、介绍一下Flink的两阶段提交机制?
  32. 【福利加餐】
  33. 1、天猫双11大屏的由来
  34. 2、双11大屏需求分析及架构设计
  35. 3、双11大屏指标核心代码开发
  36. 4、双11大屏从0~1全流程跑通
  37. 5、疑难问题-课程内容典型疑难问题整理【第二弹】
  38. 6、面试题-课程内容常见面试题整理【第二弹】
  39. 理论和实践是好基友,学练结合,效果增倍!
Flink1.15新特性及状态的使用

基于Flink1.15版本进行更新迭代,快速掌握基于新版本的代码开发,并且对Flink中的State(状态)的使用与管理进行深度扩展。

课程安排:
  1. 1、Flink最近几个版本的新特性介绍
  2. 2、什么是State(状态)
  3. 3、离线计算是否需要State(状态)?
  4. 4、State相关概念整体概览
  5. 5、State(状态)的类型介绍(RawState和ManagedState)
  6. 6、托管状态(Managed State)的类型对比分析
  7. 7、Keyed State详解(包括原理、数据结构)
  8. 8、Keyed State的使用案例之温度告警-ValueState
  9. 9、Keyed State的使用案例之直播间数据统计-MapState
  10. 10、Keyed State的使用案例之订单数据补全-ListState
  11. 11、Operator State详解(包括原理、数据结构)
  12. 12、Operator State的使用案例之ListState的使用
  13. 13、Operator State的使用案例之UnionListState的使用
  14. 14、Operator State的使用案例之BroadcastState的使用
  15. 【本周思考与讨论】
  16. 1、针对单词计数案例,如果通过MapState维护单词出现的次数是否可行?
  17. 2、Keyed State和Operator State中的ListState,有哪些区别?
  18. 3、Flink流计算任务中使用State是否会导致内存溢出?
Flink1.15之状态的容错与一致性

基于Flink1.15版本深入剖析流式计算任务中状态的容错与一致性,包括State的快照生成和恢复,最后以Kafka+Flink+Kafka场景为例整体分析了Flink任务如何实现端到端的一致性!

课程安排:
  1. 1、State的容错与一致性介绍
  2. 2、流计算中Exactly-once语义的多种实现思路
  3. 3、如何实现Flink任务的端到端一致性?
  4. 4、Checkpoint(快照)机制详解
  5. 5、如何保存多个Checkpoint?
  6. 6、从Checkpoint进行恢复
  7. 7、Savepoint详解
  8. 8、Checkpoint VS Savepoint
  9. 9、Savepoint保证程序可移植性的前提条件
  10. 10、手工触发Savepoint并从Savepoint进行恢复
  11. 11、State Backend(状态的存储方式)
  12. 12、State的生存时间(TTL)
  13. 13、Window中的数据存在哪里?
  14. 14、Checkpoint的生成过程和恢复过程详解
  15. 15、Checkpoint Barrier详解
  16. 16、Kafka+Flink+Kafka实现端到端一致性
  17. 17、Flink-Kafka相关源码分析
  18. 【本周思考与讨论】
  19. 1、如何基于Mysql实现一个支持Exactly-once语义的Sink组件?
  20. 2、Checkpoint在什么时候会自动触发恢复?
  21. 3、在RocksDB中,针对key-value类型的数据,使用ValueState和MapState哪种数据类型效率高?
FlinkSQL(1.15)快速上手

基于Flink1.15版本,主要涉及Flink SQL中的表、列、数据类型、DML语句、滚动+滑动窗口、Watermark、Catalog、HiveModule、SQL Client等功能

课程安排:
  1. 1、Flink SQL快速理解(离线计算+实时计算)
  2. 2、Flink SQL解析引擎之Calcite分析
  3. 3、Flink SQL之DDL案例(FileSystem+Print)
  4. 4、Flink SQL之DDL案例(Kafka+Kafka)
  5. 5、Flink SQL中的静态表和动态表
  6. 6、Flink SQL中的连续查询概念解释
  7. 7、Flink SQL动态表转换为Append-only流
  8. 8、Flink SQL动态表转换为Retract流
  9. 9、Flink SQL动态表转换为Upsert流
  10. 10、Flink SQL中的版本表和时态表函数
  11. 11、Flink SQL常见的数据类型
  12. 12、Flink SQL中常规列和元数据列介绍
  13. 13、Flink SQL中元数据列的使用
  14. 14、Flink SQL中计算列介绍
  15. 15、Flink SQL中的DML语句介绍
  16. 16、Flink SQL滚动窗口和滑动窗口的使用
  17. 17、Flink SQL滚动窗口+Watermark的使用
  18. 18、Flink SQL中Catalog的原理及使用
  19. 19、Flink SQL如何兼容Hive SQL函数和Hive SQL语法
  20. 20、Flink SQL Client客户端工具的使用
  21. 21、Flink SQL Client直接执行SQL脚本文件
  22. 【本周思考与讨论】
  23. 1、Flink SQL开启Hive方言之后是否可以支持Hive中的函数?
  24. 2、Flink SQL如何支持自定义函数?
  25. 3、Flink SQL中的哪些功能会借助于State实现?
FlinkSQL双流JOIN详解

基于Flink1.15版本详细介绍双流JOIN的用法,主要涉及到普通Join、时间区间Join、快照Join、维表Join、数组炸裂、表函数Join、窗口Join等Join类型的原理及实战。

课程安排:
  1. 1、Hive SQL离线Join VS Flink SQL双流Join
  2. 2、Flink SQL双流Join底层原理
  3. 3、Flink SQL的Join类型之普通Join(Regular Join)
  4. 4、普通Join(Regular Join)之Inner Join(Left Join\Right Join\Full Join)的执行流程
  5. 5、普通Join(Regular Join)案例实战
  6. 6、upsert-kafka原理及源码分析
  7. 7、JOIN 执行流程源码分析
  8. 8、GROUP BY执行流程源码分析
  9. 9、SQL92与SQL99中JOIN的语法区别
  10. 10、Flink SQL的Join类型之时间区间Join(Interval Join)
  11. 11、时间区间Join(Interval Join)执行流程
  12. 12、时间区间Join(Interval Join)底层源码剖析
  13. 13、时间区间Join(Interval Join)左边界+右边界
  14. 14、时间区间Join(Interval Join)案例实战
  15. 15、Flink SQL的Join类型之时态/快照Join(Temporal Join)
  16. 16、时态/快照Join(Temporal Join)案例实战
  17. 17、两个普通动态表(仅追加)如何实现Temporal Join
  18. 18、Temporal Join核心源码分析
  19. 19、Flink SQL的Join类型之维表Join(Lookup Join)
  20. 20、维表Join(Lookup Join)案例实战
  21. 21、Flink SQL的Join类型之数组炸裂(Array Expansion)
  22. 22、数组炸裂(Array Expansion)案例实战
  23. 23、Flink SQL的Join类型之表函数Join(Table Function Join)
  24. 24、表函数Join案例实战
  25. 25、时态表函数Join案例实战
  26. 26、Flink SQL的Join类型之窗口 Join(Window Join)
  27. 27、Window Join VS Interval Join
  28. 28、窗口 Join(Window Join)案例实战
  29. 29、Flink SQL 双流JOIN总结
  30. 30、Flink SQL之State TTL
  31. 31、Flink SQL之Checkpoint
  32. 【本周思考与讨论】
  33. 1、Flink SQL多流Join和双流Join有什么区别吗?
  34. 2、Flink SQL如何向企业内部的存储系统中写入数据?
  35. 3、Flink SQL读写Kafka动态表是否可以实现仅一次语义?
全文检索引擎Elasticsearch

Elasticsearch是一个基于Lucene的分布式全文检索引擎,解决了海量数据下数据多条件快速复杂查询的痛点。

课程安排:
  1. 1、Elasticsearch核心原理介绍
  2. 2、常见的全文检索引擎分析
  3. 3、Solr vs Elasticsearch
  4. 4、MySQL VS Elasticsearch
  5. 5、Elasticsearch核心概念剖析
  6. 6、ES集群安装部署
  7. 7、ES集群监控管理工具-cerebro的使用
  8. 8、使用REST API的方式操作ES
  9. 9、使用Java API的方式操作ES
  10. 10、ES分词功能介绍
  11. 11、倒排索引介绍
  12. 12、分词器的作用及工作流程
  13. 13、停用词(常见的中文和英文停用词)
  14. 14、中文分词方式及常见的中文分词器
  15. 15、ES集成中文分词插件(es-ik)
  16. 16、es-ik添加自定义词库(包括热更新词库)
  17. 17、ES Search查询详解
  18. 18、searchType查询类型详解
  19. 19、ES 查询功能扩展(包括过滤、分页、排序、高亮、评分依据等)
  20. 20、ES中分页的性能问题分析
  21. 21、ES aggregations聚合统计案例应用
  22. 22、ES中的settings和mapping详解
  23. 23、ES的偏好查询(分片查询方式)分析
  24. 24、ES中的routing路由功能详解
  25. 25、ES的索引库模板和索引库别名的使用
  26. 26、ES SQL的使用
  27. 27、ES性能优化策略分析
  28. 【本周思考与讨论】
  29. 1、ES适合存储海量数据吗?在快速复杂查询和海量数据存储上如何权衡?
  30. 2、ES如何对半结构化和非结构化数据(例如:Word、Excel、Pdf等)提供快速检索功能?
  31. 3、ES中的数据Schema到底是动态生成还是手工指定,哪种方案比较好?
  32. 4、ES是否可以替换掉大数据中的Hive?
  33. 5、ES整合HBase可以解决哪种场景下的问题?
Es+HBase仿百度搜索引擎项目

基于Elasticsearch+HBase实现仿百度搜索引擎的海量数据存储和检索功能,可以提供海量数据下的多条件快速复杂检索能力。

课程安排:
  1. 1、大数据领域海量数据存储现状
  2. 2、大数据领域常见的SQL分析引擎
  3. 3、目前常见的全文检索引擎
  4. 4、海量数据存储+快速复杂查询需求分析及解决方案
  5. 5、仿百度搜索引擎项目架构设计
  6. 6、项目整体架构流程分析
  7. 7、ES和HBase数据同步的三种方案
  8. 8、ES高级特性扩展之_source字段
  9. 9、ES高级特性扩展之index和store属性
  10. 10、开发仿百度搜索引擎项目
  11. 11、调用接口获取数据导入HBase和Redis
  12. 12、通过ES对HBase中的数据建立索引
  13. 13、对接Web项目,提供页面检索功能
  14. 14、从0~1运行项目
  15. 15、项目中遇到的典型问题
  16. 【本周思考与讨论】
  17. 1、为什么要基于Elasticsearch+HBase实现海量数据存储和建立索引,单独使用Elasticsearch不行吗?
  18. 2、Hive、Impala、Spark、Flink这些引擎为什么不适合海量数据检索需求?
  19. 3、Elasticsearch如果是存储商品数据,索引库的mapping信息该如何设计比较合理?
  20. 4、如何保证Elasticsearch和HBase中的数据一致性?
阶段五: 综合项目:三度关系推荐系统+数据中台
  • 第28周
  • 第29周
  • 第30周
直播平台三度关系推荐V1.0

构建直播平台用户三度关系推荐系统,详细分析数据采集/数据分发/数据存储/数据计算/数据展现等功能,完整复现互联网企业大数据项目从0~1,从1~N的开发过程。

课程安排:
  1. 1、项目介绍
  2. 2、项目需求分析
  3. 3、技术选型
  4. 4、整体架构设计
  5. 5、Neo4j快速上手使用
  6. 6、数据采集架构详细分析
  7. 7、数据来源分析
  8. 8、模拟产生数据
  9. 9、数据采集聚合
  10. 10、数据分发
  11. 11、数据落盘
  12. 12、数据计算核心指标详细分析与实现
  13. 13、三度关系推荐页面数据接入
  14. 14、三度关系推荐流程演示
  15. 15、项目代码双语支持
  16. 16、项目总结
  17. 【本周思考与讨论】
  18. 1、如果让你来设计这个项目的架构,你会如何设计?
  19. 2、如何使用SparkStreaming解决实时粉丝关注数据乱序的问题?不能借助于第三方工具。
  20. 3、如何使用Spark代码实现三度关系列表数据导出MySQL?目前课程中使用的是Sqoop实现的
直播平台三度关系推荐V2.0

分析V1.0架构存在的问题及弊端,重新设计整体架构方案,进行迭代优化,基于最新的架构方案重新实现核心功能代码,开发数据接口,优化数据传输逻辑,提高数据安全性。

课程安排:
  1. 1、现有V1.0技术架构分析
  2. 2、V2.0技术架构设计
  3. 3、数据计算核心指标详细分析
  4. 4、历史粉丝关注数据初始化
  5. 5、实时维护粉丝关注数据
  6. 6、每天定时更新主播等级
  7. 7、每天定时更新用户活跃时间
  8. 8、每周一计算最近一月主播视频评级
  9. 9、每周一计算最近一月主播视频评级
  10. 10、三度关系列表数据导出到Redis
  11. 11、数据接口定义与开发
  12. 12、项目代码双语支持
  13. 13、项目总结
  14. 【本周思考与讨论】
  15. 1、如果是你,你会如何优化此项目的架构?
  16. 2、如何使用Flink代码实现三度关系列表数据导出到Redis?目前课程中使用的是Sqoop实现的
  17. 3、针对目前Neo4j中的数据,还有哪些属性需要建立索引?
数据中台大屏

掌握一线互联网企业数据中台构建流程,了解巨头企业的项目架构,理解巨型项目的思想,掌握数据中台之数据加工总线子系统的底层实现。

课程安排:
  1. 1、什么是中台
  2. 2、中台化主要解决的问题
  3. 3、中台的延伸
  4. 4、什么是数据中台
  5. 5、数据中台演进的四个阶段
  6. 6、数据中台需要具备三大能力
  7. 7、企业级数据中台架构分析
  8. 9、目前大数据领域实时计算的现状
  9. 10、数据中台之数据加工总线介绍
  10. 11、数据加工总线架构图分析
  11. 12、开发数据加工总线计算引擎(基于SparkSQL)
  12. 13、开发数据加工总线计算引擎(基于FlinkSQL)
  13. 14、掌握如何在流式SQL中调用HTTP接口
  14. 15、支持流式SQL中的自定义函数返回多列字段
  15. 【本周思考与讨论】
  16. 1、谈一谈你对数据中台的理解?
  17. 2、课程中提供了基于Spark的通用实时计算引擎,如果想要开发基于SparkSQL+Spark Core的通用离线计算引擎的话,该如何实现?
  18. 3、课程中提供了基于Flink的通用实时计算引擎,如果想要开发基于FlinkSQL的通用离线计算引擎的话,该如何实现?
阶段六: 电商实时数据仓库(湖仓一体)设计与实战
  • 第31周
  • 第32周
  • 第33周
  • 第34周
  • 第35周
  • 第36周
  • 第37周
  • 第38周
实时OLAP引擎之ClickHouse

详细分析了目前业内常见的OLAP数据分析引擎,重点学习ClickHouse的核心原理及使用,包括常见的数据类型、数据库、MergeTree系列表引擎、分布式集群、副本、分片、分区等核心功能的使用。

课程安排:
  1. 1、OLAP引擎的起源
  2. 2、OLAP引擎的分类
  3. 3、大数据领域OLAP引擎典型应用场景及选型依据
  4. 4、ClickHouse的由来及概述
  5. 5、ClickHouse的优缺点
  6. 6、ClickHouse单机安装部署
  7. 7、ClickHouse节点基础环境修改及核心目录介绍
  8. 8、ClickHouse常见客户端的使用(Cli+JDBC+DBeaver)
  9. 9、ClickHouse中常见数据类型的使用(基础、复合、特殊数据类型)
  10. 10、ClickHouse中数据库的操作
  11. 11、ClickHouse中表的DDL和DML操作
  12. 12、MergeTree(合并树)系列表引擎介绍
  13. 13、MergeTree建表语句详解
  14. 14、MergeTree中的一级索引和二级索引
  15. 15、MergeTree中的数据分区特性
  16. 16、MergeTree中的数据副本及数据TTL特性
  17. 17、集群、副本、分片和分区概念解释
  18. 18、集群基础环境安装部署-1
  19. 19、副本特性的使用及副本写入流程
  20. 20、分片特性的使用
  21. 21、集群整体规划与配置
  22. 22、分布式DDL语句
  23. 23、Distributed表引擎的原理及实战
  24. 24、JDBC代码操作集群及集群的使用建议
  25. 25、ClickHouse完整查询语句介绍
  26. 26、ClickHouse中WITH、IN、JOIN语句的使用
  27. 【本周思考与讨论】
  28. 1、HBase是否可以替代ClickHouse?
  29. 2、ClickHouse在实时数据仓库中的定位?
  30. 3、谈一下你对ClickHouse中表引擎的理解?
实时数仓-Kafka Eagle+DS

针对实时数据仓库项目中需要用到的数据监控(Kafka Eagle)和任务调度(DolphinScheduler)技术组件进行扩展,为构建实时数据仓库提供底层技术支撑。

课程安排:
  1. 1、Kafka Eagle(EFAK)简介
  2. 2、Kafka Eagle(EFAK)安装部署
  3. 3、Kafka Eagle(EFAK)常见功能的使用
  4. 4、DolphinScheduler简介
  5. 5、DolphinScheduler基础环境配置
  6. 6、DolphinScheduler伪分布安装
  7. 7、DolphinScheduler常见功能介绍
  8. 8、案例实战-单个Shell任务调度
  9. 9、案例实战-调度已开发好的Shell脚本任务
  10. 10、案例实战-调度带依赖的Shell任务
  11. 11、案例实战-使用Shell插件调度HiveSQL
  12. 12、案例实战-使用HiveCli插件调度HiveSQL
  13. 13、案例实战-使用SQL插件调度HiveSQL
  14. 14、案例实战-使用Shell插件调度Spark任务
  15. 15、案例实战-使用Spark插件调度Spark任务
  16. 16、案例实战-使用Shell插件调度Flink任务
  17. 17、案例实战-使用Flink插件调度Flink任务
  18. 【本周思考与讨论】
  19. 1、如果需要自研一个Kafka监控平台,你希望如何设计?
  20. 2、谈一下你的主流分布式任务调度工具的理解?
实时数仓-Flink CDC数据采集

针对实时数据仓库项目中需要用到的数据库实时数据采集(Flink CDC)技术组件进行扩展,为构建实时数据仓库提供底层技术支撑。

课程安排:
  1. 1、Flink CDC 简介
  2. 2、Flink CDC生态概览
  3. 3、Flink CDC版本和Flink版本对应关系
  4. 4、MySQL CDC介绍
  5. 5、MySQL服务器基础环境配置要求
  6. 6、MySQL CDC快速上手使用
  7. 7、MySQL CDC之基于DataStream API实现数据采集和处理
  8. 8、MySQL CDC之基于Flink SQL实现数据采集和处理
  9. 9、MySQL CDC自定义反序列化类
  10. 10、MySQL CDC支持的高级特性
  11. 11、高级特性之启动模式(数据读取策略)原理及案例实战
  12. 12、高级特性之DataStream Source原理及案例实战
  13. 13、高级特性之全增量一体化原理及案例实战
  14. 14、高级特性之增量快照数据读取算法原理及案例实战
  15. 15、高级特性之Exactly-Once 语义原理及案例实战
  16. 16、高级特性之动态加表原理及案例实战
  17. 17、高级特性之分库分表原理及案例实战
  18. 18、高级特性之元数据列原理及案例实战
  19. 19、MySQL CDC使用中可能遇到的问题
  20. 20、MySQL和Flink SQL数据类型映射关系
  21. 【本周思考与讨论】
  22. 1、Flink CDC 2.x版本如何采集数据库中没有主键的表?
  23. 2、Flink CDC是否可以取代Sqoop这种采集工具?
实时数仓-Paimon(数据湖)快速上手

针对实时数据仓库项目中需要用到的数据湖存储系统Paimon(Flink Table Store)进行扩展,为构建湖仓一体架构提供底层技术支撑,本周主要涉及Paimon的基础内容,便于快速上手使用。

课程安排:
  1. 1、什么是Apache Paimon
  2. 2、Paimon的整体架构
  3. 3、Paimon的核心特点
  4. 4、Paimon支持的生态
  5. 5、基于Flink SQL操作Paimon
  6. 6、基于Flink DataStream API 操作Paimon
  7. 7、Paimon中的内部表和外部表
  8. 8、Paimon中的分区表和临时表
  9. 9、Paimon中的Primary Key表(主键表)
  10. 10、Paimon中的Append Only表(仅追加表)
  11. 11、Changelog Producers原理及案例实战
  12. 12、Merge Engines原理及案例实战
  13. 13、Paimon中的Catalog详解
  14. 14、Paimon中的Table详解
  15. 15、Paimon之CDC数据摄取
  16. 16、Paimon集成Hive引擎(Hive Metastore Catalog)
  17. 17、Paimon底层存储文件深入剖析
  18. 18、Paimon性能优化
  19. 【本周思考与讨论】
  20. 1、Paimon是否可以替换Kafka的功能?
  21. 2、Paimon是否可以取代ClickHouse实现OLAP查询?
实时数仓-Paimon(数据湖)高级进阶

针对实时数据仓库项目中需要用到的数据湖存储系统Paimon(Flink Table Store)进行扩展,为构建湖仓一体架构提供底层技术支撑,本周主要涉及Paimon的高级内容,便于深度使用。

课程安排:
  1. 1、Paimon之Hive Catalog的使用
  2. 2、动态修改Paimon表属性
  3. 3、查询Paimon系统表
  4. 4、批量读取Paimon表
  5. 5、流式读取Paimon表
  6. 6、流式读取高级特性Consumer ID
  7. 7、Paimon CDC数据摄取功能
  8. 8、CDC之MySQL数据同步到Paimon
  9. 9、CDC之Kafka数据同步到Paimon
  10. 10、CDC高级特性之Schema模式演变
  11. 11、CDC高级特性之计算列
  12. 12、CDC高级特性之特殊的数据类型映射
  13. 13、CDC高级特性之中文乱码
  14. 14、Hive引擎集成Paimon
  15. 15、在Hive中配置Paimon依赖
  16. 16、在Hive中读写Paimon表
  17. 17、在Hive中创建Paimon表
  18. 18、Hive和Paimon数据类型映射关系
  19. 19、Paimon底层文件基本概念
  20. 20、Paimon底层文件布局
  21. 21、Paimon底层文件操作详解
  22. 22、Flink流式写入Paimon表过程分析
  23. 23、读写性能优化详细分析
  24. 24、Paimon中快照、分区、小文件的管理
  25. 25、管理标签(自动管理+手工管理)
  26. 26、管理Bucket(创建+删除+回滚)
  27. 【本周思考与讨论】
  28. 1、Paimon与计算引擎(Flink\Spark\Hive)之间的关系?
  29. 2、Paimon能否取代Kafka实现消息队列的功能?
实时数仓-湖仓一体项目

基于Flink SQL+Paimon+Hive构建湖仓一体项目,提高数据分析时效性,为业务部门提供分钟级别的实时数据支撑。

课程安排:
  1. 1、离线数据仓库架构分析
  2. 2、实时数据仓库之Lambda架构分析
  3. 3、实时数据仓库之Kappa(批流一体)架构分析
  4. 4、湖仓一体架构分析
  5. 5、数据仓库架构发展之路
  6. 6、湖仓一体架构发展之路
  7. 7、日志采集工具选型
  8. 8、数据库采集工具选型
  9. 9、日志缓冲存储工具选择
  10. 10、数据湖存储工具选择(数据湖四剑客)
  11. 11、实时计算引擎工具选择
  12. 12、实时OLAP分析引擎选择
  13. 13、任务调度工具选择
  14. 14、实时数仓整体架构设计(湖仓一体架构)
  15. 15、用户行为数据湖仓开发
  16. 16、商品订单数据湖仓开发
  17. 17、数据大屏制作(Superset)
  18. 18、湖仓项目任务调度
  19. 【本周思考与讨论】
  20. 1、针对目前的架构,谈一下你的理解,还可以做哪些调整?
  21. 2、谈一下你湖仓一体架构的理解和认识?
一站式流式开发平台StreamPark

Apache StreamPark是一个一站式的流处理计算平台,基于它开发流处理(Flink)任务, 可以极大降低学习成本和开发门槛。

课程安排:
  1. 1、目前实时计算(流处理)面临的问题
  2. 2、什么是Apache StreamPark
  3. 3、StreamPark的核心特性
  4. 4、StreamPark的核心架构
  5. 5、StreamPark安装部署
  6. 6、StreamPark核心模块介绍
  7. 7、基于StreamPark提交Flink SQL任务
  8. 8、基于StreamPark提交Flink Jar包任务
  9. 9、基于StreamPark Rest API管理Flink任务
  10. 10、StreamPark在湖仓项目中的应用
  11. 【本周思考与讨论】
  12. 1、Apache StreamPark和Apache DolphinScheduler如何结合到一起使用?
  13. 2、谈一下你对Apache StreamPark在流式计算领域中所处角色的理解?
大数据分布式SQL网关Kyuubi

Kyuubi 是一个分布式、多租户、高性能的SQL网关,可以为众多计算引擎(Spark、Flink、Hive)提供SQL查询服务。

课程安排:
  1. 1、Kyuubi简介
  2. 2、Kyuubi核心特性
  3. 3、Kyuubi整体分析
  4. 4、Kyuubi运行环境依赖情况
  5. 5、大数据SQL网关方案对比
  6. 6、Kyuubi基础环境安装配置
  7. 7、Kyuubi beeline客户端的基本操作
  8. 8、Kyuubi集成Spark SQL引擎(默认)
  9. 9、Kyuubi Spark SQL集成Hive MetaStore
  10. 10、Kyuubi集成Hive SQL引擎
  11. 11、Kyuubi集成Flink SQL引擎
  12. 12、Kyuubi Flink SQL集成Hive Catalog
  13. 13、Kyuubi Connectors案例实战
  14. 14、Kyuubi JDBC Driver案例实战
  15. 【本周思考与讨论】
  16. 1、在湖仓架构中引入Kyuubi有什么好处?
  17. 2、如果让你自己开发一个通用大数据分析平台,应该如何对Kyuubi进行封装?
资深大数据架构师
徐老师
猎豹移动大数据技术专家,中科院大数据研究院大数据技术专家
专注于大数据技术开发与研究,拥有10年以上一线互联网公司软件研发经验
曾为移动研究院、平安寿险、中信银行、花旗银行、中移在线等企业进行大数据技术企培
著有《Flink入门与实战》、《大数据技术及架构实战派》书籍
曾主导开发海外舆情监控系统、海量数据采集监控平台、OLAP数据分析平台、数据仓库、数据中台等。
在海量数据采集、离线数据计算、实时数据计算、海量数据查询等技术领域有独到见解。

课程适合人群

想要在大数据行业方向
寻求未来发展的
大学毕业生
有一定经验,寻求更高
薪资和岗位的开发人员
技能面窄,想要转到
开发岗的大数据
相关行业人员
在小公司基层岗位,
缺乏大项目经验的从业者
就业前景
普遍困扰
课程特色
内容概览
知识架构
项目展示
学习服务
课程大纲
返回顶部
常见问题

学习咨询

选课、学习遇到问题?
扫码添加指导老师 1V1 帮助你!

扫码加顾问老师 立即咨询

意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师