Flink 从0到1实战实时风控系统

Flink 核心技能实操 + 亿级数据性能调优 + Groovy 动态规则引擎实践 进阶大数据开发高手

已完结
|
难度:初级
|
时长:共 31 小时 30 分钟
¥299.00
距离活动结束
立即购买
加购物车
已有 198 人在学
  • 提升架构设计思维与能力
  • 构建 Flink 核心技能体系
  • 积累亿级数据实时处理经验
  • 实践 Flink 动态规则引擎
  • 具备生产环境故障处理能力
  • 解锁Flink 生态框架整合技巧
试看本节课 14:51
试看本节课 03:58
试看本节课 11:36
1-1 这是一门帮你进阶的好课
1-2 风控项目对于个人职业能力的提升
3-2 画出风控引擎的系统架构图

课程预览

检测到您还没有关注慕课网服务号,无法接收课程更新通知。请扫描二维码即可绑定
重新观看
黑灰产问题日益突出的当下,“风控”已经成为大多数公司的基础业务之一。能够设计并架构风控体系,是大数据工程师的重要竞争力。课程将基于 Flink+ Groovy 构建风控系统,以生产视角带你掌握风控体系设计的核心要素、Flink 实用技能、优化技巧、故障处理策略等高阶技能,并融合贯通运用到实际工作中,助力提升你的架构设计思维和代码实践能力,少走弯路,加速职业发展。

本章介绍:

通过风控项目的学习,从而提高同学的职业能力,包括项目的深度,以及技术的广度,这是整个课程设计的初衷。并以思维导图的形式,展现整个课程章节安排的框架,以及每个章节的重要知识点

第1章 课程介绍与学习指南
4 节|31分钟
展开
  • 视频:
    1-1 这是一门帮你进阶的好课
    试看
    14:51
  • 视频:
    1-2 风控项目对于个人职业能力的提升
    试看
    03:58
  • 视频:
    1-3 课程设计的思路以及所涵盖的知识点
    06:43
  • 视频:
    1-4 推荐几个课程项目使用的开发工具
    04:38

本章介绍:

风控项目在企业的实际业务中是有很广阔的应用场景,特别是当下羊毛党猖獗,作弊行为防不胜防,对企业的促销推广活动造成很大的损失,针对于优惠券这种薅羊毛集中的场景,企业对于懂得风控技术的人才是有很大需求,这一章是从优惠券风控需求的背景为出发点,针对于优惠券被薅羊毛的环节,初步搭建风控的架构,以及制定风控规则和阈值

第2章 风控项目需求
5 节|48分钟
收起
  • 视频:
    2-1 羊毛党利用群控和接码平台薅尽羊毛
    06:00
  • 视频:
    2-2 优惠券场景下被薅羊毛的业务逻辑漏洞复盘
    05:33
  • 视频:
    2-3 基于领域驱动分析优惠券场景下风控的架构设计
    10:25
  • 视频:
    2-4 基于领域驱动设计的代码目录分层架构思路
    18:28
  • 视频:
    2-5 优惠券场景下的风控规则和阙值确定
    07:08

本章介绍:

继续完善上一章初步形成的风控架构思路,如何将风控规则应用到用户的行为事件,如何计算用户的违规次数,从而触发风控阈值,以及如何在风控引擎运行的过程中,根据实际状况动态的调整风控规则和阈值,这一章主要风控引擎整体的架构图画出来,以及技术栈的选型

第3章 风控引擎架构设计及项目演示
5 节|46分钟
收起
  • 视频:
    3-1 风控引擎架构的设计思路
    14:17
  • 视频:
    3-2 画出风控引擎的系统架构图
    试看
    11:36
  • 视频:
    3-3 风控规则引擎选用Groovy的原因
    08:53
  • 视频:
    3-4 风控引擎整体技术栈以及版本
    08:32
  • 视频:
    3-5 亿级行为数据集提供的不同类型的羊毛党人数分布
    02:14

本章介绍:

风控引擎的核心是Flink,Flink是现在主流企业实时计算的核心大数据组件,对于Flink的掌握是企业大数据人才的核心能力,Flink知识点的深度讲解也是课程对于提高同学技术深度的体现,这一章是从Flink最基础的知识点开始讲解,面对的是没接触过Flink的同学,而接触过Flink的同学也可以从这章节的学习去完善自己的基础知识的一些空白。

第4章 风控引擎组件基础知识准备
17 节|193分钟
展开
  • 视频:
    4-1 本章重点和难点
    03:27
  • 视频:
    4-2 理解Flink数据流编程模型
    14:59
  • 视频:
    4-3 代码演示Flink以流批两种方式实现wordcount(上)
    16:59
  • 视频:
    4-4 代码演示Flink以流批两种方式实现wordcount(下)
    11:29
  • 视频:
    4-5 通过有界流和无界流延伸理解Flink批流一体架构
    16:19
  • 视频:
    4-6 理解Flink4大基石之状态机制
    14:34
  • 视频:
    4-7 代码演示Flink基于状态计算实现wordcount(上)
    13:10
  • 视频:
    4-8 代码演示Flink基于状态计算实现wordcount(下)
    19:07
  • 视频:
    4-9 理解Flink4大基石之窗口机制
    14:47
  • 视频:
    4-10 通过大白话通俗的去理解Flink4大基石之时间机(上)
    09:19
  • 视频:
    4-11 通过大白话通俗的去理解Flink4大基石之时间机(中)
    05:25
  • 视频:
    4-12 通过大白话通俗的去理解Flink4大基石之时间机(下)
    07:01
  • 视频:
    4-13 初步认识Flink的Cep模式匹配
    08:20
  • 视频:
    4-14 理解Flink4大基石之checkpoint机制(上)
    11:47
  • 视频:
    4-15 理解Flink4大基石之checkpoint机制(中)
    05:17
  • 视频:
    4-16 理解Flink4大基石之checkpoint机制(下)
    08:09
  • 视频:
    4-17 本章总结
    12:46

本章介绍:

这一章是项目的准备工作,主要是把项目的运行环境搭建起来,课程是提供了一键部署的docker环境,运行脚本即可把运行环境搭建起来,第2个是数据表结构的设计思路,课程也提供了详细的数据表结构文档。第3个是单元测试,课程也提供了各个封装方法,各个模块的单元测试文档,

第5章 基础设施搭建--环境搭建及单元测试
13 节|115分钟
展开
  • 视频:
    5-1 本章重点和难点
    01:45
  • 视频:
    5-2 画出项目结构图
    09:59
  • 视频:
    5-3 基于docker的一键式搭建项目环境
    08:20
  • 图文:
    5-4 【梳理】项目环境搭建步骤
  • 视频:
    5-5 Springboot基于Maven多模块构建项目
    15:32
  • 视频:
    5-6 基于Junit5+MockMvc的单元测试用例编写(上)
    15:11
  • 视频:
    5-7 基于Junit5+MockMvc的单元测试用例编写(下)
    17:01
  • 视频:
    5-8 Flink流计算的单元测试用例编写(上)
    14:50
  • 视频:
    5-9 Flink流计算的单元测试用例编写(下)
    15:22
  • 视频:
    5-10 基于maven-helper插件解决依赖冲突异常
    06:09
  • 图文:
    5-11 【拓展】简历植入重点及本章涉及面试知识点
  • 图文:
    5-12 【作业】本章作业
  • 视频:
    5-13 本章总结
    10:33

本章介绍:

项目所需工具类的封装,包括Redis,日志,时间,Json,异常错误

第6章 基础设施搭建--springboot工具类封装
14 节|178分钟
展开
  • 视频:
    6-1 本章重点和难点
    02:03
  • 视频:
    6-2 Springboot封装基于FastJson2的json工具类(上)
    12:16
  • 视频:
    6-3 Springboot封装基于FastJson2的json工具类(中)
    10:13
  • 视频:
    6-4 Springboot封装基于FastJson2的json工具类(下)
    11:31
  • 视频:
    6-5 基于LocalDate封装时间工具类+自动生成测试类(上)
    14:38
  • 视频:
    6-6 基于LocalDate封装时间工具类+自动生成测试类(下)
    09:08
  • 视频:
    6-7 Springboot集成slf4j+log4j2(上)
    15:24
  • 视频:
    6-8 Springboot集成slf4j+log4j2(下)
    12:39
  • 视频:
    6-9 Springboot封装自定义异常+全局异常的工具类
    16:55
  • 视频:
    6-10 封装Lettuce+RedisTemplate读写Redis集群(上)
    17:18
  • 视频:
    6-11 封装Lettuce+RedisTemplate读写Redis集群(中)
    16:58
  • 视频:
    6-12 封装Lettuce+RedisTemplate读写Redis集群(下)
    11:48
  • 视频:
    6-13 Springboot封装Hbase工具类
    18:18
  • 视频:
    6-14 本章总结
    07:59

本章介绍:

项目中Flink是会大量重复的调用一些查询方法,例如对于数据库的读写,所以对于这些方法的封装是风控项目很重要的部分,这些封装方法重点的一个是Flink自定义Source和Sink读写Redis,另外一个是将mysql读取的数据转化为Flink数据流。

第7章 基础设施搭建--flink工具类封装
12 节|172分钟
展开
  • 视频:
    7-1 本章重点和难点
    01:14
  • 视频:
    7-2 Flink使用ParameterTool读取配置
    14:59
  • 视频:
    7-3 基于巴希尔(Bahire)-Flink写入Redis集群(上)
    18:37
  • 视频:
    7-4 基于巴希尔(Bahire)-Flink写入Redis集群(下)
    11:24
  • 视频:
    7-5 Flink通过富函数类实现自定义Source
    19:44
  • 视频:
    7-6 Flink自定义Source读取Redis集群(上)
    15:24
  • 视频:
    7-7 Flink自定义Source读取Redis集群(下)
    14:13
  • 视频:
    7-8 Flink自定义Source读取ClickHouse
    17:50
  • 视频:
    7-9 Flink使用JDBC-Connector+预编译批量写入ClickHouse(上)
    12:56
  • 视频:
    7-10 Flink使用JDBC-Connector+预编译批量写入ClickHouse(下)
    13:34
  • 视频:
    7-11 Flink TableSQL Api + 表转流读取Mysql
    21:02
  • 视频:
    7-12 本章总结
    10:14

本章介绍:

事件接入中心是风控引擎的入口,用户的行为数据是从事件接入中心流入,然后才进入到风控引擎的核心进行规则判断,事件接入中心的核心组件是Flume+Kafka,然后通过Kafka进行数据的分流,是两个方向的分流,分别是ClickHouse和Flink,这一章重点是ClickHouse如何从Kafka拉取数据,以及Flink如何基于滑动窗口计算用户行为的一些简单指标值

第8章 风控数据流入口--事件接入中心
18 节|230分钟
展开
  • 视频:
    8-1 本章重点和难点
    02:16
  • 视频:
    8-2 风控事件接入中心架构搭建思路
    06:10
  • 视频:
    8-3 事件中心的数据格式
    04:42
  • 视频:
    8-4 Flume监听目录将行为事件数据写入Kafka
    05:50
  • 视频:
    8-5 Flink1.14使用全新的Kafka Connector读取Kafka
    18:46
  • 视频:
    8-6 Flink1.14自定义反序列化消费Kafka Json格式数据
    16:33
  • 视频:
    8-7 ClickHouse存储用户行为路径序列的表设计思路
    13:24
  • 视频:
    8-8 ClickHouse拉取Kafka Json格式的用户行为数据
    05:59
  • 视频:
    8-9 ClickHouse将用户行为聚合为行为路径序列
    16:03
  • 视频:
    8-10 ClickHouse对用户行为序列进行路径挖掘找出羊毛客(上)
    14:34
  • 视频:
    8-11 ClickHouse对用户行为序列进行路径挖掘找出羊毛客(下)
    15:42
  • 视频:
    8-12 ClickHouse对用户行为维度指标存储的表设计思路
    07:34
  • 视频:
    8-13 Flink Job的Checkpoint, State配置以及并行度的合理数量(上)
    14:24
  • 视频:
    8-14 Flink Job的Checkpoint, State配置以及并行度的合理数量(下)
    16:08
  • 视频:
    8-15 Flink对Kafka数据清洗并转化为POJO对象
    16:16
  • 视频:
    8-16 Flink对事件数据流添加水印保证事件行为的有序性
    17:27
  • 视频:
    8-17 Flink基于滑动窗口每5分钟统计用户最近1小时的登录频率
    20:32
  • 视频:
    8-18 Flink aggregate统计用户最近1小时登录频率的聚合操作
    17:37

本章介绍:

这章是课程的第1个核心章节,这章的重点有2个,1是Redis存储采样指标的思路,如何根据Redis的指标存储id,能在任意时间获取到指定时间的指标值,例如最近3个小时的指标值,第2个重点是Flink指标计算的通用框架,这里的Flink指标计算基本涵盖了Flink重要的函数方法

第9章 风控规则判断依据--指标计算模块
14 节|189分钟
展开
  • 视频:
    9-1 本章重点和难点
    02:06
  • 视频:
    9-2 风控指标的构成以及指标存储的设计思路
    08:36
  • 视频:
    9-3 基于滑动窗口思想的风控指标采样思路
    07:49
  • 视频:
    9-4 基于Redis快速获取风控指标采样的思路
    21:49
  • 视频:
    9-5 风控指标在Redis唯一id的设计思路
    06:34
  • 视频:
    9-6 Flink和POJO对象之间的关系
    17:02
  • 视频:
    9-7 基于Flink实现的指标通用聚合计算框架思路
    10:14
  • 视频:
    9-8 基于Flink实现的指标通用聚合计算框架初步结构
    21:19
  • 视频:
    9-9 运营后台自定义指标聚合计算规则
    04:01
  • 视频:
    9-10 Flink通过单独线程读取指标聚合计算规则
    16:25
  • 视频:
    9-11 将指标聚合计算规则写入到事件流传播给下游算子思路
    19:19
  • 视频:
    9-12 进一步细化运营后台的指标聚合计算规则自定义
    10:19
  • 视频:
    9-13 通过反射机制将指标聚合计算规则写入到事件流
    21:48
  • 视频:
    9-14 keyBy算子根据指标聚合计算规则进行分组
    20:53

本章介绍:

这是课程的第2个重点章节,这一章的重点是Flink读取mysql的风控规则,并将获取的风控规则广播到行为事件流,这里会涉及Flink的一个很重要知识点:Flink的广播流。这一章还有比较重要的知识点是在Flink的行为事件流里,每个行为事件如何匹配上对应的风控规则

第10章 风控系统核心--规则引擎
15 节|219分钟
展开
  • 视频:
    10-1 本章重点和难点
    01:09
  • 视频:
    10-2 window算子根据指标聚合计算规则将事件分配到对应窗口
    26:08
  • 视频:
    10-3 根据指标聚合计算的规则进行增量聚合计算
    28:35
  • 视频:
    10-4 aggregate算子根据指标聚合计算的规则进行结果输出
    22:07
  • 视频:
    10-5 Kafka工具类直接返回事件流以及配置带环境的配置信息
    21:08
  • 视频:
    10-6 风控规则的Mysql表设计思路及运营后台配置
    08:49
  • 视频:
    10-7 风控规则的条件判断表达式解析的方案
    06:46
  • 视频:
    10-8 Aviator引擎的表达式运算及自定义函数
    21:38
  • 视频:
    10-9 Aviator引擎应用于风控规则条件的判断
    14:09
  • 视频:
    10-10 Flink自定义生成规则事件流
    11:56
  • 视频:
    10-11 Flink将规则事件流广播到行为事件流
    11:48
  • 视频:
    10-12 行为事件流读取规则事件流中的风控规则(1)
    14:57
  • 视频:
    10-13 行为事件流读取规则事件流中的风控规则(2)
    13:51
  • 视频:
    10-14 对行为事件使用对应的规则进行风控判断
    10:53
  • 视频:
    10-15 本章总结
    04:41

本章介绍:

这是课程的第3个重点章节,这一章主要讲解一个新的组件:Groovy,风控规则的动态调整会用到Groovy脚本,基本是从0开始讲解Groovy,因为Groovy和Java语法想通,所以掌握Groovy是比较容易的,这章的另一个重要知识点是Flink-cep,同样也是从0开始讲解Flink-cep,所以这章主要是讲解风控规则动态调整所需要的2个组件:Groovy以及Flink-cep

第11章 实时风控--动态规则实现
16 节|185分钟
展开
  • 视频:
    11-1 本章重点和难点
    01:43
  • 视频:
    11-2 哪种类型的风控规则适合实时计算以及实时判定
    03:04
  • 视频:
    11-3 Flink-Cep开发流程及模式匹配
    17:14
  • 视频:
    11-4 Flink-Cep检测最近1分钟登录失败超过阈值的用户
    21:43
  • 视频:
    11-5 Flink-Cep以严格近邻的模式检测连续登录失败的用户
    13:23
  • 视频:
    11-6 Flink-Cep基于迭代条件检测最近15分钟IP频繁变化的用户
    19:20
  • 视频:
    11-7 Flink-Cep检测具有明显薅羊毛特征行为路径的用户
    06:47
  • 视频:
    11-8 Flink-Cep对匹配事件的提取并且输出到事件流
    17:37
  • 视频:
    11-9 Flink-Cep基石 NFA状态转移流程
    07:31
  • 视频:
    11-10 为什么选择Groovy生成Flink-Cep Pattern对象
    06:35
  • 视频:
    11-11 Java集成Groovy之执行Groovy脚本
    07:05
  • 视频:
    11-12 Java集成Groovy之从指定位置加载Groovy脚本
    10:57
  • 视频:
    11-13 Java集成Groovy之调用Groovy脚本的自定义类
    10:51
  • 视频:
    11-14 Groovy能动态加载脚本的底层原理
    13:09
  • 视频:
    11-15 Flink-Cep基于Groovy脚本动态加载Pattern
    20:23
  • 视频:
    11-16 Groovy动态加载脚本频繁触发Full GC 的解决方案
    07:09

本章介绍:

这一章是对Flink-Cep加载Groovy脚本编写单元测试方法

第12章 风控引擎部署--单元测试
8 节|97分钟
展开
  • 视频:
    12-1 总结风控引擎涉及的Flink任务
    06:52
  • 视频:
    12-2 风控运营后台最终定稿版
    11:36
  • 视频:
    12-3 总结Flink-Cep和DataStream Api进行风控的不同使用场景
    04:02
  • 视频:
    12-4 测试Flink-Cep检测登录失败超过阈值的用户
    17:35
  • 视频:
    12-5 测试Flink-Cep检测连续事件序列的用户
    19:34
  • 视频:
    12-6 测试Flink-Cep基于Groovy脚本加载Pattern-
    07:20
  • 视频:
    12-7 通过运营后台动态修改Flink-Cep Pattern参数
    09:21
  • 视频:
    12-8 使用通义灵码和MybatisPlus3.5+ 自动生成CRUD
    20:12

本章介绍:

这一章主要是补充如何结合Groovy和Flink-cep,对风控规则进行动态调整,这里会对Flink-Cep做源码的二次开发,除此之外,风控规则的动态调整,除了使用Groovy和Flink-Cep之外,还补充介绍了另外一种动态调整的方法,通过Flink-CDC监听Mysql存储的风控规则,mysql的信息发生更改,会规则更改的部分广播到行为事件流,

第13章 风控引擎部署--打包部署
13 节|152分钟
展开
  • 视频:
    13-1 部署定时任务 模拟源源不断的行为事件流
    04:55
  • 视频:
    13-2 部署定时任务 ClickHouse将用户每小时的行为事件归档
    03:30
  • 视频:
    13-3 补充 Flink-CDC的底层原理
    06:14
  • 视频:
    13-4 补充 Flink-CDC实时捕获Mysql数据变更
    20:06
  • 视频:
    13-5 补充 Flink-CDC自定义反序列化
    18:33
  • 视频:
    13-6 部署风控规则 Flink-CDC监听规则表
    11:59
  • 视频:
    13-7 补充 Flink 双流Join
    12:24
  • 视频:
    13-8 部署风控规则 通过Join对规则组信息进行维度补充
    06:46
  • 视频:
    13-9 部署风控规则 广播规则使得行为事件携带规则组
    10:35
  • 视频:
    13-10 部署风控规则 遍历规则组产生冗余行为事件并规则判断
    06:49
  • 视频:
    13-11 部署动态cep Flink不停机动态加载 cep 风控规则的方案
    16:00
  • 视频:
    13-12 部署动态cep 修改cep源码注入动态获取Pattern的方法
    15:20
  • 视频:
    13-13 部署动态cep 修改cep源码构造新的NFA进行事件匹配
    18:00

本章介绍:

课程总结以及压测方法的介绍,并对项目进行压测

第14章 风控引擎部署--压测优化
4 节|10分钟
展开
  • 视频:
    14-1 Flink背压的表现
    01:30
  • 视频:
    14-2 Flink流量压测方法
    01:50
  • 视频:
    14-3 Flink背压告警以及造成的影响
    05:02
  • 视频:
    14-4 Flink背压解决方案
    01:12
本课程已完结
适合人群
大数据开发者
Java 开发者
对 Flink 感兴趣的研究者
技术储备
熟悉 Java 基础语法
熟悉 Springboot 基本操作
了解大数据组件基础操作
环境参数
Flink 1.14.5
Clickhouse 21.1.9.41
Springboot 2.6.11
Docker 23.0
Redis 6.2.1
不为别的,只为提升面试通过率
尽管课程时间很长,
但没关系,我们有老师的陪伴,
还有同学之间互相鼓励,彼此帮助,
完成学习后,还能获得慕课网官方认证的证书。
立即购买
数据加载中...
《Flink 从0到1实战实时风控系统》的真实评价
综合评分:分,共 人参与
篇幅原因,只展示最近100条评价

学习咨询

选课、学习遇到问题?

扫码添加指导老师 1V1 帮助你!

添加后老师会第一时间解决你的问题

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