搞懂flink-flink一些容易忽略的细节1

搞懂flink-flink一些容易忽略的细节1,第1张

搞懂flink-flink一些容易忽略的细节1 整体架构,这张图算是老生常谈了,不过确实很经典把所有大的概念和细节都展示出来了

1,checkpoint是在JM段做的,容错和重启也是在JM做的

2,Client 会把任务转换成streamGraph和JobGraph,JM端会生成ExecutionGraph然后分发给TM去执行

3,checkpoint可以从最近的一次重启任务,只能保证不丢数,不能保证只处理一次,实际上是至少处理一次,所以还需要结合两阶段提交去解决

4,JM去调度作业的时候需要去资源管理器ResourceMananger去申请资源,然后再去分发给TM执行

5,windowTrigger的几种处理结果

1)continue 继续不做任何 *** 作

2)Fire  触发计算,处理窗口数据

3)Purge  触发清理,清理窗口里的数据

4)Fire+Purge  触发计算+清理数据

6,waterMark理解为deadline更合适一下,用于数据延迟处理,乱序等问题,双流join

7,延迟严重需要用到allowedLateness (允许迟到机制/旁路输出)

8,state状态的概率,面试官问道这个问题我会懵了一下,现在我帮大家梳理下应该从哪几个点怎么回答一下

1)总体来说,state状态就是flink保持中间结果和缓存一些数据

2)如果一次计算不依赖上下游,则称为无状态计算,否则是有状态计算

3)分为 原始状态(用户自己管理) 托管状态(flink系统管理)

4)根据是否有key分为   keyedState(跟key绑定)   OperatorState(整个算子级别的只支持ListState)

5)广播状态,广播出去算子本地存储,必须是MapState

6)三张存储方式 MemoryStateBackend   FSStateBackend   RocksDB

7)持久化策略:增量持久化  全量持久化

8)状态过期清理策略 StateTtlConfig

9,checkpoint和savepoint本质没区别,cp是系统每隔一段时间做的快照,用于任务容错重启,sp是用户定义的一个快照,用于比较大的调整比如系统升级,ABtest等

10,checkpoint里保存的是什么,如果是kakfa处理数据,则每次checkpoint提交成功即为offset的一次提交

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5676709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存