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

FlinkCDC-MYSQL批量写入

一、运行环境

(1)Flink:1.17.2

(2)Scala:2.12.20

(3)Mysql:5.7.43     ##开启binlog

二、代码示例

         思路:通过滚动窗口收集一批数据推给sink消费。binlog日志对于dataStream是没有key的,那么需要给每条数据造一个key。两种方式:(1)通过UUID创建一个全局key。(2)解析数据中的时间字段作为key。

package org.example;import com.ververica.cdc.connectors.mysql.source.MySqlSource;
import com.ververica.cdc.connectors.mysql.table.StartupOptions;
import com.ververica.cdc.debezium.JsonDebeziumDeserializationSchema;
import lombok.val;
import org.apache.flink.api.common.eventtime.WatermarkStrategy;
import org.apache.flink.api.common.functions.MapFunction;
import org.apache.flink.api.java.tuple.Tuple2;
import org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.windowing.ProcessWindowFunction;
import org.apache.flink.streaming.api.windowing.assigners.TumblingProcessingTimeWindows;
import org.apache.flink.streaming.api.windowing.time.Time;
import org.apache.flink.streaming.api.windowing.windows.TimeWindow;
import org.apache.flink.util.Collector;
import org.example.sink.MyJdbcSinkFunction;import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import java.util.UUID;public class FLCDCToMySql {public static

http://www.mrgr.cn/news/63157.html

相关文章:

  • 设计模式最佳实践代码总结 - 结构型设计模式篇 - 代理模式最佳实践
  • 编程之路:蓝桥杯备赛指南
  • 10 go语言(golang) - 数据类型:哈希表(map)及原理(二)
  • c++应用网络编程之十三Linux下的epoll模式应用
  • 如何在本地搭建一个three.js的开发环境
  • AIGC实战——生成式人工智能总结与展望
  • 第三百零七节 Log4j教程 - Log4j日志格式、Log4j日志到文件
  • Android开发教程viewpager2点击指示标也能切换
  • (C#面向初学者的 .NET 的生成 AI) 第 2 部分-什么是 AI 和 ML?
  • 解读!中国人工智能大模型技术白皮书!
  • 基于SSM医药进出口交易系统的设计
  • 大语言模型(LLMs)在安全芯片设计中应用
  • Ubuntu 系统、Docker配置、Docker的常用软件配置(下)
  • Vite构建生产配置“build:prod“: “cross-env NODE_ENV=production vite build“含义
  • 「C/C++」C/C++标准库 之 <cstring> 字符串操作库
  • 【css】CSS 文本溢出显示省略号
  • Ubuntu最简单安装OpenCV
  • OpenCV基础01
  • 树莓派基本设置--4.网络设置
  • 9.排队模型-M/M/1
  • LabVIEW在Windows和Linux开发的差异
  • 学习记录:js算法(八十一):子集
  • C++算法第五天
  • 安捷伦E4991A E4990A阻抗分析仪LCR电桥3Ghz高频
  • js选项卡
  • qt 如何在本地进行打包