当前位置: 首页 > article >正文

Flink Data Source详解

注意在高版本中SourceFunction以及其子类RichSourceFunction、ParallelSourceFunction等已经被标记为废弃,所以我们要看数据源的实现只需要关注Source接口(org.apache.flink.api.connector.source.Source)。了解Source背后的架构和运行原理有助于我们更好的使用Source,或者自定义实现新的数据源。

1. Data Source概览

1)核心组件

一个数据源有三个核心组件:split、SplitEnumerator和SourceReader。

  • split(分片):是对source数据的一部分切分,如一个文件或者日志分区。分片是 source 进行任务分配和数据并行读取的基本粒度。
  • SourceReader(源读取器):会请求split并进行处理,例如读取split所表示的文件或日志分区。SourceReader 在 TaskManagers 上的 SourceOperators 中并行运行,并生成并行的事件流/记录流。 
  • SplitEnumerator(分片枚举器):SplitEnumerator会生成split并将它们分配给 SourceReader。它在 JobManager 上以单实例运行,负责对未分配的split进行维护,并以均衡的方式将其分配给 reader。 

http://www.kler.cn/a/456993.html

相关文章:

  • 计算机网络 (17)点对点协议PPP
  • 电子应用设计方案80:智能桌椅系统设计
  • Python中PDF转Word的技术
  • WebRTC:实现浏览器与移动应用的实时通信
  • springboot511基于SpringBoot视频点播系统的设计与实现(论文+源码)_kaic
  • Android原生Widget使用步骤
  • Cookie+Redis+自定义参数解析器+AOP+自定义校验注解实现鉴权+改动CustomException
  • windows C#-嵌套类型
  • 原点安全再次入选信通院 2024 大数据“星河”案例
  • 【Linux学习六】压缩和解压类
  • 安装宝塔面板 安装MySQL 使用DataGrip连接
  • IDEA开发Java应用的初始化设置
  • Ubuntu 下使用命令行将 U 盘格式化为 ext4、FAT32 和 exFAT 的详细教程
  • Android 版本号、代号、API级别对应关系汇总
  • 【Unity Shader】【图形渲染】 Shader数学基础14:裁剪空间
  • 在K8S中,nodePort默认端口范围是多少?为什么是这个端口范围?
  • 【go每日一题】 责任链模式的实现
  • 学习C++:运算符
  • 【PSINS】EKF、UKF、CKF三个滤波下的组合导航(松组合)对比
  • 面向对象的设计原则与设计模式
  • HuggingFace peft LoRA 微调 LLaMA
  • Mysql数据库中,监测某张表中某字段的修改情况(被哪个ip所修改、新老值)
  • InceptionNeXt: When Inception Meets ConvNeXt
  • 不安全物联网的轻量级加密:综述
  • 【最新】宇鹿家政小程序系统v1.1.3高级版源码全开源+搭建环境
  • 太通透了,Android 流程分析 蓝牙enable流程(stack/hidl)