1.视界

2.前文回顾

上一篇文章[flink 的 OperatorChain]讲到,OperatorChain 的构造函数会接受一个 recordWriters 参数,recordWriters 是一个 RecordWriter 类型的 List。OperatorChain 会为 chain 的每一条出边创建一个 RecordWriterOutput 实例,RecordWriterOutput 中包裹着 RecordWriter,今天我们就来看看这两个类

3.OperatorChain 构造函数的 recordWriters 是如何生成的

我们来看一下 OperatorChain 构造函数的 recordWriters 参数是如何生成的,代码位于 org.apache.flink.streaming.runtime.tasks.StreamTask.java

可以看到,首先会从 StreamConfig 中获取 JobVertex 的所有出边,也就是 chain 的所有出边,同时获取 chain 中所有操作符的 StreamConfig,然后对每一条边调用 createRecordWriter 方法

createRecordWriter 会从 StreamEdge 上获取 StreamPar

95-230-024-源码-WordCount走读-RecordWriterOutput 和 RecordWriter相关推荐

  1. 变现宝(知识付费)1.024源码独立版支持更新

    变现宝(知识付费)1.024源码独立版支持更新 新增 详情页banner广告 修复 会员折扣为空或为0时专题支付价格都是0.01得bug 修复 不支持会员额度免费解锁的素材会员无法通过支付解锁得bug ...

  2. Golang heap源码简单走读

    golang heap小根堆源码走读 heap概览 在golang中,通过heap给出了一个实现小根堆的接口. type Interface interface {sort.InterfacePush ...

  3. sofa协议服务器,sofa-rpc 服务端源码流程走读

    sofa-rpc是阿里开源的一款高性能的rpc框架,这篇文章主要是对sofa-rpc provider启动服务流程的一个代码走读,下面是我简单绘制的一个基本的关系流程图 下面我们根据sofa-rpc代 ...

  4. 95-230-026-源码-WordCount走读-本地运行SubmitJob的过程

    1.视界 2. 概述 3. 前文回顾 在前面 WordCount走读-获取JobGraph.md 中讲解了如何获取JobGraph,下面是继续执行 org.apache.flink.streaming ...

  5. 95-230-028-源码-WordCount走读-获取ExecutionGraph

    1.视界 2. 概述 本文在 2022年1月16日,更新了1.13版本的源码解析: ExecutionGraph:JobManager 根据 JobGraph 生成ExecutionGraph.Exe ...

  6. 95-230-020-源码-WordCount走读-获取StreamGraph的过程

    1.视界 2.执行程序 需要执行任务,这时会调用如下代码: env.execute("Socket Window WordCount"); 在StreamExecutionEnvi ...

  7. 95-230-010-源码-WordCount走读-概述

    1.视界 2.案例 在Flink中,实现从指定主机名和端口接收字符串消息,对接收到的字符串中出现的各个单词,每隔1秒钟就输出最近5秒内出现的各个单词的统计次数. public class Socket ...

  8. 95-230-022-源码-WordCount走读-获取JobGraph

    1.视界 2. JobGraph概述 2.1 JobGraph是什么? ​ JobGraph:StreamGraph经过优化后生成了 JobGraph,提交给 JobManager 的数据结构.主要的 ...

  9. 95-230-022-源码-WordCount走读-OperatorChain

    1.视界 2. 概述 2.1 OperatorChain 的重要属性 // 所有的操作符,最后每一个 StreamNode 都会包含一个 StreamOperator // 因为不含 StreamOp ...

最新文章

  1. java中解析xml解读,java解析xml(JDOM)
  2. pandas骚操作:分组对数据进行归一化
  3. 第四十期:九个对Web开发者最有用的Python包,掌握这些,工资至少能涨涨
  4. 测试-LoadRunner
  5. uni-app + vue-cli3 安装axios、vant等依赖 - 操作篇
  6. MySQL中表连接方式
  7. 【常见Web应用安全问题】---1、Cross Site Scripting
  8. PostgreSQL update tbl1 from tbl2 一对多的注意事项(到底匹配哪条)
  9. 【SpringMVC笔记】拦截器 + 文件上传下载
  10. Python装饰器几个有用又好玩的例子
  11. AJAX POST跨域 解决方案 - CORS(转载)
  12. 《设计模式》读懂UML类图
  13. java class文件比较_Beyound Compare中比较java字节码class文件
  14. 共码未来 | 2022 Google 谷歌开发者大会参会现场记
  15. VFB直接使用TCP发送电子邮件源码
  16. Mac计时器找不到怎么解决
  17. Android史上最强分割线全攻略
  18. 2020vue运行出现ESLint is disabled since its execution has not been approved or denied yet. Use the ligh
  19. 天轰川 推荐的Javscript大收集 大集锦
  20. @media 的使用规范

热门文章

  1. 联发科发布天玑1200芯片:6nm工艺 采用1+3+4三丛架构设计
  2. 5G手机将不用流量可免费看电视,网友:流量免费,内容付费?
  3. 外媒:柔宇科技搁置赴美上市计划 考虑在中国进行IPO
  4. 终于来了!iOS 13大更新发布,新功能均与新冠疫情有关
  5. 常人不解朱啸虎,读懂已是被裁人
  6. BOSS直聘上线春雷行动 首周吸引上万名应届生参与活动
  7. Redmi K20 Pro尊享版官宣:升级为骁龙855 Plus旗舰平台
  8. 高考志愿怎么填?BOSS直聘发布了一份填报指南
  9. 6月亮相?疑似华为新机nova 5入网:支持40W超级快充
  10. 浏览器缓存机制(优化)