1.Flink 任务之间通信开销 -6

用户头像
小知识点
关注
发布于: 2020 年 08 月 24 日

通过网络链接逐条发送,不断低效,还会导致很多额外开销。

在Flink中采用多种技术,下面介绍



  • 基于信用值的流量控制

  • 任务链接

1. 基于信用值的流量控制-工作原理

(1)接收任务会给发送任务授予一定的信用值,其实就是保留用来接收它数据的网络缓冲

(2)一旦发送端接收到信用值,就会在信用值范围内尽可能多的传输数据,并且附带积压量

(3)接收端使用保留的缓冲来处理接收到的数据

(4)依据发送到积压量信息来决定下一轮信用的优先级

(5)信用值是根据各个发送端的积压量来决定的

(6)该机制在出现数据倾斜的时候,有效地分配网络资源



2. 任务链接

(1)目的:在某些情况下降低本地开销

(2)前提条件:多个算子必须有相同的并行度且通过本地转发通道



(3)多个算子的函数被“融合”到同一个任务,在同一个线程内执行



(4)函数之间的记录传输基本上不存在序列化及通讯开销

(5)缺点:有时候需要对过程任务链接进行切分,或者将两个计算量大的函数分配到不同的处理槽中,这个时候就会有问题



(6)任务链接默认是打开的,后面会讲解



读书笔记:《基于ApacheFlink的流处理》



用户头像

小知识点

关注

奇迹的出现往往就在再坚持一下的时候! 2018.04.02 加入

还未添加个人简介

评论

发布
暂无评论
1.Flink任务之间通信开销-6