Flink 核心技术与实战
张利兵
第四范式数据中台架构师,Apache Flink 贡献者
16166 人已学习
新⼈⾸单¥68
课程目录
已完结/共 91 讲
第一章:Apache Flink介绍 (5讲)
第七章:Flink监控与性能优化 (5讲)
第九章:项目实战-使用Flink构建推荐系统实时数据流 (2讲)
Flink 核心技术与实战
登录|注册
留言
13
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 06 | Flink集群架构
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程介绍
02 | 内容综述
03 | 流处理技术概览
04 | Flink发展历史与应用场景
05 | Flink核心特性
06 | Flink集群架构
07 | Flink集群运行模式
08 | Flink集群资源管理器支持
09 | Standalone原理讲解与实操演示
10 | Flink On Yarn部署讲解
11 | Flink On Yarn实操演示
12 | Flink On Kubernetes部署讲解
13 | Flink On Kubernetes实操:Session模式
14 | Flink On Kubernetes实操:Per-job模式
15 | Flink On Kubernetes Native部署讲解
16 | Flink On Kubernetes Native实操演示
17 | Flink高可用配置原理讲解
18 | Flink高可用配置实操演示
19 | 分布式流处理模型
20 | DataStream API实践原理
21 | Flink时间概念
22 | Watermark实践原理
23 | Watermark与Window的关系
24 | Watermark Generator
25 | Windows窗口计算
26 | Window Assigner
27 | Window Trigger
28 | Window Evictors
29 | Window Function
30 | Windows多流合并
31 | Process Function应用
32 | SideOutput旁路输出
33 | Asynchronous I/O异步操作
34 | Pipeline与StreamGraph转换
35 | Flink类型系统
36 | 自定义SourceFunction
37 | 项目实战:基于DataStream API实现PV,UV统计
38 | 有状态计算概念
39 | 状态类型及应用
40 | KeyedState介绍与使用
41 | OperatorState介绍与使用
42 | BroadcastState介绍与使用
43 | Checkpoint实现原理
44 | Savepoint与Checkpoint
45 | StateBackends状态管理器
46 | State Schema Evolution
47 | State序列化与反序列化
48 | Queryable State介绍与使用
49|项目实战:实时交易反欺诈项目介绍
50|项目实战:实时交易反欺诈项目演示
51|Flink Table API/SQL介绍与使用
52|Table API/SQL核心概念
53|DataStream & DataSet 与Table相互转换
54|Table Connector介绍与使用
55|Querying Dynamic Tables
56|TimeStamp与Watermark时间属性定义
57|Query With Temporal Condition
58|Join With Dynamic Table
59|Join With Temporal Function
60|Join With Temporal Tables
61|Catalog原理与使用
62|Apache Hive集成
63|SQL Client介绍与使用
64|Flink SQL Table数据类型
65|自定义Function
66|Table Connector使用
67|自定义Connector
68|new tablesource & tablesink api
69|项目实战:基于Flink SQL实现Top10商品统计
70|Runtime整体架构
71|Flink Client实现原理
72|ResourceManager资源管理
73|Dispatcher任务分发器
74|JobGraph提交与运行(上)
75|JobGraph提交与运行(下)
76|Task执行与调度
77|Task重启和容错策略
78|集群组件RPC通信机制
79|NetworkStatck实现原理
80|Flink内存管理
81|Metric指标分类与采集
82|Flink REST API介绍与使用
83|Checkpoint监控与调优
84|反压监控与原理
85|Flink内存配置与调优
86|PyFlink实践与应用
87|Flink复杂事件处理:Complex event process
88|Alink机器学习框架介绍与使用
89|Stateful Function介绍与使用
90|实时推荐系统项目设计与实现
91|结束语
本节摘要
登录 后留言

全部留言(13)

  • 最新
  • 精选
布兰特
老师 我想读Flink源码,应该从哪里读起啊?

作者回复: 老师下个月会出一本源码解析的书,到时候可以关注下

2020-08-31
6
10
泊浮目
张老师,想请教下:同样是网络通信,我注意到JobManager和TaskManager通过akka来通信,而TaskManager之间的数据通信却是用Netty。请问为什么要这么做呢?如果没什么特殊理由的话,一定是统一用一种技术栈来做通信更好吧?

作者回复: JobManager和TaskManager之间RPC通信只是为了发送一些控制信息,例如控制Task的启停,以及TaskManager的注册等,以及组件之间的HeartBeat操作等。而TaskManager之间不会直接进行RPC通信,TM之间主要是数据的交互,就是MapReduce中Shuffle,对数据的交互走的是基于Netty实现的Network Stack。 其实Akka问题还是比较多的,尤其是版本问题,而在Flink里面就是基于Flink实现了一下RPC通信功能,这里社区后期进行统一的,有可能就像Spark框架把Akka去掉,直接用Netty实现RPC即可,当然这个动作变动的比较大,影响面比较广,因此可能会放在未来版本中实现。

2020-08-29
6
mini希
老师好,请问每次执行app-jar,是否每次都要把app用到的所有jar传输到jm和tm上面,如果app用到的jar比较多,会不会在传输上花费很长时间,如何优化?

作者回复: 不管是在哪种模式下都需要上传Jar包,只不过App模式下Jar包可以提前传在分布式HDFS中,这样Client就不需要每次上传了,JM可以直接从HDFS上获取Jar包,本质上就是降低上传开销

2020-09-11
3
1
Geek_0d79dd
jobgraph不会拆分吧,jobgraph只会把多个节点合并成operatorChain,executionGraph才会拆成并行化执行。

作者回复: 这块后面会在DataStream章节中详细讲解

2020-09-06
2
1
阿朱
我有一次提交job的时候遭遇整个虚机无响应,后台查看到是当时IOPS超高,等过了两三分钟之后才有响应,后来再次使用同一个jar提交没有再出现问题,想问一下老师这种问题有可能是在什么环节出现了问题

作者回复: 这个问题还是要看Client端主机具体情况的,通常情况下Client提交Jar包到Cluster的时候,最大的IO消耗就是Jar包的传输,Jar包越大传输时间IO也越高。传输的过程中还要看Session集群的情况,如果RPC网络连接出现异常重连等情况,会Block整个客户端的提交过程,这个时候会有重新提交的过程,IO通常也会很高,因此还是要具体问题具体分析,可以把Master的日志拿下来看看,里面针对Dispatcher的日志进行分析,看看有什么具体的原因。 谢谢

2020-08-31
1
lujg
Application 模式下,client的功能是不一致的吧?

作者回复: Application模式主要解决的是Client负载的问题,包括JobGraph提交以及Jar ship的性能问题。另外Application更像Spark里面的Cluster模式,区别就是Driver是在Client本地还是在Cluster上,但是需要注意Spark里面的Driver是要和Executor之间交互的,在Flink里面只会通过JobManager和TaskManager交互,Client仅仅只是编译性的工作,生成JobGraph和提交作业,以及对Job的运行状况进行监控,所以还是和Spark有些区别的。

2020-08-27
1
醉月竹影
老师 您关于源码的书出了吗

作者回复: 预计一月份,敬请期待

2020-12-26
林润娥是我女朋友
老师 不会java和scala 会python 这们课可以学好吗

作者回复: 原理都是一样的,接口基本上都是些语法上的区别,没什么问题的,加油,后面我们看有时间把Python的接口讲一下

2020-10-15
D.
老师的语速太快了,flink小白来说,很难跟进呀

作者回复: 东西太多了,时间又比较有限,但是还是想尽可能的把Flink的很多精华讲给大家,后面可以适当的放慢点哈

2020-10-14
小乙哥
期待后面课程能够有这样一个例子:具体任务-》client处理过程-》生成的JobGraph是什么样子-》JobManger提交的Task-》TaskManger具体执行时候的形态。可能对这些不了解,所以这个很重要的宏观架构介绍,吸收体会不是特别深

作者回复: 这里先有一个大概的认识,Runtime章节会对这块进行深入的介绍

2020-08-30
2
收起评论