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

FlinkCDC 数据倾斜

场景:
Mysql 整库采集至 Paimon 出现数据倾斜现象

FlinkCDC 数据倾斜处理(参考处理思想)

数据倾斜问题可以通过多表混合读取的方式来解决。在引入多表混合读取之前,Flink CDC 会按顺序读取完所有表的全量数据,导致下游 sink 在读取单一表数据时发生倾斜。实现多表混合读取后,Flink CDC 会同时读取多张表的 chunk 数据,例如先读取 tableA 的 chunk1,再读取 tableB 的 chunk1,以此类推,直到所有表的 chunk 数据都被读取,从而保证了每个 sink 都有数据流入,有效解决了数据倾斜问题。FlinkCDC 3.0 版本对于一张表的处理,会均匀派发给空闲子任务进行并行处理。

FlinkCDC Mysql

org.apache.flink.cdc.connectors.mysql.source.enumerator.MySqlSourceEnumerator#assignSplits派发 split 给子任务


sinkDemo

  1. org.apache.flink.streaming.api.datastream.DataStream#sinkTo(org.apache.flink.api.connector.sink2.Sink<T>)

  2. org.apache.flink.streaming.api.datastream.DataStreamSink#forSink

  3. org.apache.flink.connector.kafka.sink.KafkaWriter#write

  4. org.apache.flink.connector.kafka.sink.KafkaRecordSerializationSchemaBuilder.KafkaRecordSerializationSchemaWrapper#serialize

  5. org.apache.flink.kafka.shaded.org.apache.kafka.clients.producer.KafkaProducer#doSend

  6. org.apache.kafka.clients.producer.KafkaProducer#partition

publicintpartition(Stringtopic,Objectkey,byte[]keyBytes,Objectvalue,byte[]valueBytes,Clustercluster,intnumPartitions){returnkeyBytes==null?this.stickyPartitionCache.partition(topic,cluster):Utils.toPositive(Utils.murmur2(keyBytes))%numPartitions;}

http://www.jsqmd.com/news/653553/

相关文章:

  • 避坑指南:STM32F103多通道捕获中断冲突的5种解决方案
  • 缓存数据库一致性
  • OpenClaw 完整安装教程与最新版安装包
  • iOS App审核通关指南:MFi配件集成与PPID填写实战
  • PyTorch 2.8开源镜像实战教程:在RTX 4090D上部署本地化AI客服视频应答系统
  • 终极指南:5步实现老Mac升级最新macOS的完整方案
  • 2026年进口gl8改装用户口碑推荐厂家 - 品牌宣传支持者
  • GOOSE协议深度解析:从报文帧结构到变电站实时通信实战
  • 告别Windows依赖:在Ubuntu 22.04下用命令行搞定RK3588系统烧录与分区定制
  • ClaudeCode安装与使用
  • 树莓派4B+nrf52840 dongle搭建Thread边界路由保姆级教程(含常见错误排查)
  • OSNet轻量化设计剖析:从基础卷积到OSBlock的演进之路
  • OneMore插件终极指南:3分钟掌握表格全选技巧,OneNote效率飙升300%
  • Keil MDK AC6迁移后printf不打印?手把手教你修复串口重定向(附ST官方方案)
  • IEEE 802.3u是1995年发布的快速以太网标准,将以太网传输速率从10Mbps提升至100Mbps
  • 3步掌握:终极免费文档下载神器使用全攻略
  • ChatGLM3-6B-128K代码实例:Function Call调用示例
  • 【缺陷检测】k-means分割Otsu阈值检测水果和蔬菜缺陷(外部和内部缺陷)【含Matlab源码 15334期】
  • 三点定圆心半径易语言实现
  • 告别链接错误:手把手教你用gcc在Linux下正确编译和调用静态库.a文件
  • Windows 下 OpenClaw 快速搭建与使用指南
  • SCI投稿全周期沟通指南:从投稿信到校稿信的实战模板与策略
  • 基于STM32LXXX的模数转换芯片ADC(HX710A)驱动C程序设计
  • 软件离线分析中的查询性能优化
  • Hot100部分
  • 从零到英雄:CodeCombat游戏化编程学习之旅
  • 59、实现:页头在顶部,页脚永远在页面底部
  • 现代智能汽车中的无线技术11.7——TCU之远程OTA升级业务
  • Excel也能玩转熵权法?手把手教你不用编程做指标权重分析
  • PowerDMIS迭代法