尚硅谷_Flink实时数仓5.0教程发布
mhr18 2024-12-13 12:54 20 浏览 0 评论
-------------------------------------------
教程简介:
在当今电商行业竞争激烈的环境下,数据实时处理与分析成为企业取得成功的关键因素之一。实时处理领域,Flink被普遍认为是下一代大数据流计算引擎,本项目基于Flink实现电商实时数仓,利用Flink强大的功能,实时采集、处理和存储电商业务中的海量数据,并为企业提供了全面、深入的数据分析能力。
教程通过思路分析、画图演示、代码开发等多维方式,对数仓的构架过程及整体实现进行了详细的讲解。相较于实时数仓项目4.0,升级了项目架构设计和各个软件的版本,并采用GitFlow任务流的形式对整体项目进行版本控制,使用StreamPark对项目进行部署和监控。
项目采用的软件及版本:Flink 1.17.1、Hadoop 3.3.4、Flume 1.10.1、Zookeeper 3.7.1、Kafka 3.6.1、Maxwell 1.29.2、Redis 6.0.8、HBase 2.4.11、Doris 2.1.0、StreamPark 2.1.4、FlinkCDC 2.4.2、MySQL 8.0.31等。
-------------------------------------------
教程目录:
001.课程介绍
002.基础_数仓基本概念
003.基础_离线数仓架
004.基础_实时数仓架构
005.基础_ER模型和维度建模
006.基础_事实表和维度表
007.基础_数仓构建流程
008.基础_项目架构以及代码版本控制方式介绍
009.基础_IDEA开发环境搭建
010.环境准备_GitLab的安装
011.环境准备_GitLab的其它配置
012.环境准备_创建用户以及群组
013.环境准备_将初始代码推送到GitLab仓库
014.环境准备_设置Kafka分区数
015.ODS_日志数据采集
016.ODS_配置binlog记录业务数据变化
017.ODS_Maxwell的安装与配置
018.ODS_Maxwell同步数据测试
019.DIM_思路分析_基本流程
020.DIM_思路分析_引入配置表
021.DIM_思路分析_引入FlinkCDC
022.DIM_思路分析_配置表字段完善
023.DIM_FlinkCDC的使用
024.DIM_配置表的创建以及切换开发分支
025.DIM_开发思路分析
026.DIM_基本环境准备以及检查点设置
027.DIM_从Kafka主题中读取数据
028.DIM_转换流中数据类型以及Maxwell问题说明
029.DIM_使用FlinkCDC读取配置表数据
030.DIM_将配置流数据类型封装为实体类对象
031.DIM_封装HBaseUtil工具类
032.DIM_在HBase中建表
033.DIM_广播配置流并和主流进行关联
034.DIM_处理广播流数据
035.DIM_处理主流数据
036.DIM_过滤掉不需要传递的字段
037.DIM_主流数据先到问题分析
038.DIM_在open方法中预加载配置信息
039.DIM_将维度数据同步到HBase表中
040.DIM_封装FlinkSourceUtil工具类
041.DIM_抽取单独的处理函数类
042.DIM_抽取BaseApp基类
043.DIM_抽取方法
044.DIM_封装JdbcUtil工具类
045.DIM_DIM层总结
046.DWD_DWD层介绍
047.DWD_日志分流思路分析
048.DWD_开发思路分析
049.DWD_将脏数据放到侧输出流
050.DWD_创建KafkaSink对象以及Kafka一致性保证
051.DWD_抽取FlinkSinkUtil以及脏数据写到Kafka
052.DWD_新老访客标记修复思路
053.DWD_新老访客标记修复代码实现
054.DWD_埋点日志结构分析
055.DWD_分流代码实现
056.DWD_将不同流的数据写到Kafka主题
057.DWD_抽取方法以及提交代码到GitLab
058.DWD_评论事实表思路分析
059.DWD_FlinkAPI双流Join介绍
060.DWD_内连接
061.DWD_左外连接
062.DWD_右外连接以及全外连接
063.DWD_左外连接结果写到Kafka主题
064.DWD_从Kafka主题中读取数据
065.DWD_从HBase表中读取数据
066.DWD_lookupJoin关联
067.DWD_将关联结果写到Kafka主题
068.DWD_评论事实表开发思路以及环境准备
069.DWD_从topic_db主题中读取数据
070.DWD_过滤出评论数据
071.DWD_从Hbase中读取字典表数据
072.DWD_关联评论表和字典表
073.DWD_将关联的结果写到Kafka主题
074.DWD_抽取工具类封装获取连接器属性的方法
075.DWD_抽取BaseSQLApp基类以及通用的建表方法
076.DWD_加购事实表开发思路分析
077.DWD_过滤出insert类型的加购数据
078.DWD_过滤出update类型的加购数据以及写到Kafka
079.DWD_下单事实表思路分析
080.DWD_下单事实表代码实现
081.DWD_取消订单事实表整体实现
082.DWD_支付成功事实表思路分析
083.DWD_支付成功事实表代码实现
084.DWD_退单事实表整体实现(了解业务)
085.DWD_退款成功事实表整体实现(了解业务)
086.DWD_其它事实表实现思路分析
087.DWD_事实表动态分流思路
088.DWD_开发思路分析
089.DWD_业务数据以及配置表数据读取
090.DWD_在open方法中预加载配置信息
091.DWD_处理广播流中的配置信息
092.DWD_处理主流中的业务数据
093.DWD_将动态分流的事实表写到Kafka主题
094.DWS层介绍
095.Doris_Doris介绍
096.Doris_安装前准备工作
097.Doris_Doris安装以及FE的配置
098.Doris_BE的配置
099.Doris_FE与BE的扩容和缩容
100.Doris_基本概念
101.Doris_Aggregate模型
102.Doris_Unique模型和Duplicate模型
103.Doris_建表其它操作
104.Doris_Range分区
105.Doris_List分区以及分区相关概念
106.Doris_动态分区
107.Doris_Rollup表
108.Doris_物化视图
109.Doris_Flink读写Doris_SQL
110.Doris_Flink读写Doris_API
111.DWS_搜索关键词思路分析
112.DWS_分词工具类
113.DWS_自定义UDTF函数
114.DWS_开发思路分析
115.DWS_读取页面日志数据创建动态表
116.DWS_过滤出搜索行为
117.DWS_分词并和原表字段进行关联
118.DWS_分组、开窗、聚合计算
119.DWS_将聚合结果写到Doris
120.DWS_版本、渠道、地区、新老访客聚合统计思路分析
121.DWS_读取数据并封装为统计的实体类对象
122.DWS_指定Watermark的生成策略
123.DWS_分组、开窗
124.DWS_聚合
125.DWS_将聚合结果写到Doris中
126.DWS_首页、详情页聚合统计思路分析
127.DWS_首页、详情页聚合统计代码实现
128.DWS_独立用户以及回流用户聚合统计思路分析
129.DWS_独立用户以及回流用户聚合统计代码实现
130.DWS_加购独立用户思路分析
131.DWS_加购独立用户代码实现
132.DWS_SKU粒度下单聚合统计需求分析
133.DWS_SKU粒度下单聚合统计开发思路
134.DWS_从Kafka中读取数据并转换为JSON对象
135.DWS_状态+定时器实现去重
136.DWS_状态+抵消实现去重
137.DWS_封装为统计的实体类对象
138.DWS_分组、开窗、聚合计算以及测试可能遇到的问题
139.DWS_在HBaseUtil中封装查询维度的方法
140.DWS_维度关联最基本的实现方式
141.DWS_旁路缓存思路分析
142.DWS_封装RedisUtil工具类
143.DWS_在Redis工具类提供读写数据的方法
144.DWS_旁路缓存代码实现
145.DWS_维度数据发生变化清除缓存数据
146.DWS_关联SPU维度
147.DWS_抽取旁路缓存模板
148.DWS_通过旁路缓存模板关联SKU维度
149.DWS_异步IO介绍
150.DWS_封装异步操作Redis的方法
151.DWS_封装异步操作HBase的方法
152.DWS_发送异步请求关联Sku维度的基本实现
153.DWS_发送异步请求关联Spu维度以及抽取模板
154.DWS_发送异步关联维度模板代码实现
155.DWS_发送异步请求关联SKU维度
156.DWS_关联其它维度并将结果写到Doris
157.DWS_Sku粒度下单聚合统计总结
158.DWS_省份粒度下单聚合统计
159.DWS_去重
160.DWS_封装统计的实体类对象
161.DWS_分组、开窗、聚合计算
162.DWS_关联维度并将结果写到Doris
163.ADS_ADS层介绍
164.ADS_环境准备
165.ADS_总交易额统计思路分析
166.ADS_总交易额统计代码实现
167.ADS_总交易额大屏展示
168.ADS_省份交易额统计思路分析
169.ADS_省份交易额统计代码实现
170.ADS_渠道独立访客数统计思路分析
171.ADS_渠道独立访客数统计代码实现
172.ADS_渠道独立访客大屏展示以及常见错误避坑
173.ADS_总交易额实时展示
174.部署_打包
175.部署_部署前准备工作
176.部署_手动部署到服务器
177.部署_StreamPark介绍
178.部署_StreamPark安装
179.部署_StreamPark其它配置
180.部署_StreamPark中新建项目
181.部署_构建项目
182.部署_发布启动作业
183.部署_合并分支
184.总结
- 上一篇:JWT 登录认证及 token 自动续期方案解读
- 下一篇:常用开发工具
相关推荐
- Java面试题及答案总结(2025版)
-
大家好,我是Java面试陪考员最近很多小伙伴在忙着找工作,给大家整理了一份非常全面的Java面试题及答案。涉及的内容非常全面,包含:Redis、Linux、SpringBoot、Spring、MySQ...
- Java面试题及答案最全总结(2025春招版)
-
大家好,我是Java面试分享最近很多小伙伴在忙着找工作,给大家整理了一份非常全面的Java面试题及答案。涉及的内容非常全面,包含:Spring、MySQL、JVM、Redis、Linux、Spring...
- Java面试题及答案最全总结(2025版持续更新)
-
大家好,我是Java面试陪考员最近很多小伙伴在忙着找工作,给大家整理了一份非常全面的Java面试题及答案。涉及的内容非常全面,包含:Spring、MySQL、JVM、Redis、Linux、Sprin...
- 蚂蚁金服面试题(附答案)建议收藏:经典面试题解析
-
前言最近编程讨论群有位小伙伴去蚂蚁金服面试了,以下是面试的真题,跟大家一起来讨论怎么回答。点击上方“捡田螺的小男孩”,选择“设为星标”,干货不断满满1.用到分布式事务嘛?为什么用这种方案,有其他方案...
- 测试工程师面试必问的十道题目!全答上来的直接免试
-
最近参加运维工程师岗位的面试,笔者把自己遇到的和网友分享的一些常见的面试问答收集整理出来了,希望能对自己和对正在准备面试的同学提供一些参考。一、Mongodb熟悉吗,一般部署几台?部署过,没有深入研究...
- 10次面试9次被刷?吃透这500道大厂Java高频面试题后,怒斩offer
-
很多Java工程师的技术不错,但是一面试就头疼,10次面试9次都是被刷,过的那次还是去了家不知名的小公司。问题就在于:面试有技巧,而你不会把自己的能力表达给面试官。应届生:你该如何准备简历,面试项目和...
- java高频面试题整理
-
【高频常见问题】1、事务的特性原子性:即不可分割性,事务要么全部被执行,要么就全部不被执行。一致性或可串性:事务的执行使得数据库从一种正确状态转换成另一种正确状态隔离性:在事务正确提交之前,不允许把该...
- 2025 年最全 Java 面试题,京东后端面试面经合集,答案整理
-
最近京东搞了个TGT计划,针对顶尖青年技术天才,直接宣布不设薪资上限。TGT计划面向范围包括2023年10月1日到2026年9月30日毕业的海内外本硕博毕业生。时间范围还...
- idGenerator测评
-
工作中遇到需要生成随机数的需求,看了一个个人开发的基于雪花算法的工具,今天进行了一下测评(测试)。idGenerator项目地址见:https://github.com/yitter/IdGenera...
- 2024年开发者必备:MacBook Pro M1 Max深度体验与高效工作流
-
工作机器我使用的是一台16英寸的MacBookProM1Max。这台电脑的表现堪称惊人!它是我用过的最好的MacBook,短期内我不打算更换它。性能依然出色,即使在执行任务时也几乎听不到风扇的...
- StackOverflow 2022 年度调查报告
-
一个月前,StackOverflow开启了2022年度开发者调查,历时一个半月,在6月22日,StackOverflow正式发布了2022年度开发者调查报告。本次报告StackO...
- 这可能是最全面的SpringDataMongoDB开发笔记
-
MongoDB数据库,在最近使用越来越广泛,在这里和Java的开发者一起分享一下在Java中使用Mongodb的相关笔记。希望大家喜欢。关于MongoDB查询指令,请看我的上一篇文章。SpringD...
- Mac M2 本地部署ragflow
-
修改配置文件Dockerfile文件ARGNEED_MIRROR=1//开启国内镜像代理docker/.envREDIS_PORT=6380//本地redis端口冲突RAGFLOW_IMA...
- 别再傻傻分不清!localhost、127.0.0.1、本机IP,原来大有讲究!
-
调试接口死活连不上?部署服务队友访问不了?八成是localhost、127.0.0.1、本机IP用混了!这三个看似都指向“自己”的东西,差之毫厘谬以千里。搞不清它们,轻则调试抓狂,重则服务裸奔。loc...
- 我把 Mac mini 托管到机房了:一套打败云服务器的终极方案
-
我把我积灰的Macmini托管到机房了,有图有真相。没想到吧?一台在家吃灰的苹果电脑,帮我省了大钱!对,就是控制了自己的服务器,省了租用云服务器的钱,重要数据还全捏在自己手里,这感觉真爽。你可...
你 发表评论:
欢迎- 一周热门
-
-
Redis客户端 Jedis 与 Lettuce
-
高并发架构系列:Redis并发竞争key的解决方案详解
-
redis如何防止并发(redis如何防止高并发)
-
Java SE Development Kit 8u441下载地址【windows版本】
-
开源推荐:如何实现的一个高性能 Redis 服务器
-
redis安装与调优部署文档(WinServer)
-
Redis 入门 - 安装最全讲解(Windows、Linux、Docker)
-
一文带你了解 Redis 的发布与订阅的底层原理
-
Redis如何应对并发访问(redis控制并发量)
-
Oracle如何创建用户,表空间(oracle19c创建表空间用户)
-
- 最近发表
- 标签列表
-
- oracle位图索引 (74)
- oracle批量插入数据 (65)
- oracle事务隔离级别 (59)
- oracle主从同步 (56)
- oracle 乐观锁 (53)
- redis 命令 (83)
- php redis (97)
- redis 存储 (67)
- redis 锁 (74)
- 启动 redis (73)
- redis 时间 (60)
- redis 删除 (69)
- redis内存 (64)
- redis并发 (53)
- redis 主从 (71)
- redis同步 (53)
- redis结构 (53)
- redis 订阅 (54)
- redis 登录 (62)
- redis 面试 (58)
- redis问题 (54)
- 阿里 redis (67)
- redis的缓存 (57)
- lua redis (59)
- redis 连接池 (64)