95-230-024-源码-WordCount走读-RecordWriterOutput 和 RecordWriter
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.024源码独立版支持更新
变现宝(知识付费)1.024源码独立版支持更新 新增 详情页banner广告 修复 会员折扣为空或为0时专题支付价格都是0.01得bug 修复 不支持会员额度免费解锁的素材会员无法通过支付解锁得bug ...
- Golang heap源码简单走读
golang heap小根堆源码走读 heap概览 在golang中,通过heap给出了一个实现小根堆的接口. type Interface interface {sort.InterfacePush ...
- sofa协议服务器,sofa-rpc 服务端源码流程走读
sofa-rpc是阿里开源的一款高性能的rpc框架,这篇文章主要是对sofa-rpc provider启动服务流程的一个代码走读,下面是我简单绘制的一个基本的关系流程图 下面我们根据sofa-rpc代 ...
- 95-230-026-源码-WordCount走读-本地运行SubmitJob的过程
1.视界 2. 概述 3. 前文回顾 在前面 WordCount走读-获取JobGraph.md 中讲解了如何获取JobGraph,下面是继续执行 org.apache.flink.streaming ...
- 95-230-028-源码-WordCount走读-获取ExecutionGraph
1.视界 2. 概述 本文在 2022年1月16日,更新了1.13版本的源码解析: ExecutionGraph:JobManager 根据 JobGraph 生成ExecutionGraph.Exe ...
- 95-230-020-源码-WordCount走读-获取StreamGraph的过程
1.视界 2.执行程序 需要执行任务,这时会调用如下代码: env.execute("Socket Window WordCount"); 在StreamExecutionEnvi ...
- 95-230-010-源码-WordCount走读-概述
1.视界 2.案例 在Flink中,实现从指定主机名和端口接收字符串消息,对接收到的字符串中出现的各个单词,每隔1秒钟就输出最近5秒内出现的各个单词的统计次数. public class Socket ...
- 95-230-022-源码-WordCount走读-获取JobGraph
1.视界 2. JobGraph概述 2.1 JobGraph是什么? JobGraph:StreamGraph经过优化后生成了 JobGraph,提交给 JobManager 的数据结构.主要的 ...
- 95-230-022-源码-WordCount走读-OperatorChain
1.视界 2. 概述 2.1 OperatorChain 的重要属性 // 所有的操作符,最后每一个 StreamNode 都会包含一个 StreamOperator // 因为不含 StreamOp ...
最新文章
- java中解析xml解读,java解析xml(JDOM)
- pandas骚操作:分组对数据进行归一化
- 第四十期:九个对Web开发者最有用的Python包,掌握这些,工资至少能涨涨
- 测试-LoadRunner
- uni-app + vue-cli3 安装axios、vant等依赖 - 操作篇
- MySQL中表连接方式
- 【常见Web应用安全问题】---1、Cross Site Scripting
- PostgreSQL update tbl1 from tbl2 一对多的注意事项(到底匹配哪条)
- 【SpringMVC笔记】拦截器 + 文件上传下载
- Python装饰器几个有用又好玩的例子
- AJAX POST跨域 解决方案 - CORS(转载)
- 《设计模式》读懂UML类图
- java class文件比较_Beyound Compare中比较java字节码class文件
- 共码未来 | 2022 Google 谷歌开发者大会参会现场记
- VFB直接使用TCP发送电子邮件源码
- Mac计时器找不到怎么解决
- Android史上最强分割线全攻略
- 2020vue运行出现ESLint is disabled since its execution has not been approved or denied yet. Use the ligh
- 天轰川 推荐的Javscript大收集 大集锦
- @media 的使用规范