论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
大数据
›
数据仓库与分析
›
flink StreamGraph剖析
flink StreamGraph剖析
半亩花草
金牌会员
|
4 天前
|
显示全部楼层
|
阅读模式
楼主
主题
855
|
帖子
855
|
积分
2565
Flink程序有三部分operation构成,分别是源source、转换transformation、目标地sink。这三部分构成DAG。
DAG起首天生的是StreamGraph。
用户代码在添加operation的时间会在env中缓存(变量transformations),在env.execute()实行的时间才会天生对应StreamGraph。
天生StreamGraph
transformations中只存了3个变量,其实是5个。
getStreamGraph顾名思义就是天生StreamGraph。
最后是getStreamGraphGenerator(transformations).generate()天生。getStreamGraphGenerator获取天生器,generate天生StreamGraph
generate方法中起首创建了StreamGraph对象,再遍历transformations给StreamGraph添加相干操作信息(transform(transformation))。别的部分都是处理相干的运行参数(实行参数、checkpoint参数、savepoint参数等)
transform中主要有三部分。
没有并行度,添加并行度
要是指定了slotGroup,将必要的slot资源记录到slotSharingGroupResources中
最后现实转换。优先使用_translatorMap_中存在的translator。这些translator是已经定义好的表明器,可以根据不同场景选择是流模式还是批模式。传统是legacyTransform
legacyTransform
根据情况处理单个流输入或多个流输入。
translate根据情况选择批处理或者流处理
addOperator和addEdge是重点方法,添加顶点和边。
StreamEdge
一个edge连接上下游两个node。
edgeId:唯一id
sourceId、targetId:连接的上下游node的id
outputPartitioner:分区器
StreamNode
一个node可以有多个edge
inEdges、outEdges:node的入边和出边
jobVertexClass:封装用户函数的实行类
StreamGraph
有多个streamNodes构成,streamNodes之间是streamEdge相连。
类似以下这种:
streamNodes:缓存graph所有的node
sources:DAG的输入源集合
sinks:DAG的输出源集合
添加node
addSink、addSource、addOperator是主要方法。可以看到addSink、addSource也是addOperator。
addOperator中addNode是添加StreamNode的方法。
addNode就是创建StreamNode对象,并添加到streamNodes中。
添加edge
方法是addEdge,内部调用addEdgeInternal
addEdgeInternal中前面是处理虚拟节点的。后面是调用createActualEdge来添加
createActualEdge中起首确定partitioner,没有指定partitioner就优先使用ForwardPartitioner,要求上下游并行度一样,否则使用RebalancePartitioner。
然后创建StreamEdge对象,并将相干信息绑定到对应的StreamNode上。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
半亩花草
金牌会员
这个人很懒什么都没写!
楼主热帖
本周涨粉一倍,我决定再开源一个商超管 ...
YOLOV5 代码复现以及搭载服务器运行 ...
【Redis】BigKey问题
安装Python
.net6下[WPF+yolov5+opencvsharp]
《C++性能优化指南》 linux版代码及原 ...
经典Python题目:一个列表或者数组去重 ...
Spring Boot 宣布移除 run 命令,真让 ...
go-zero插件goctl-swagger的坑
APP性能优化
标签云
挺好的
服务器
快速回复
返回顶部
返回列表