2.2自定义source,配置mysql数据源 packagenet.xdclass.class6.sink;importjava.sql.Connection;importjava.sql.Date;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importorg.apache.flink.configuration.Configuration;importorg.apache.flink.streaming.api.functions.sink.RichSinkFunction;importnet.xdclass.mod...
接下来,我们需要自定义MySQL Sink,实现将数据写入MySQL的功能。 classMySQLSinkextendsRichSinkFunction<String>{privateConnectionconnection;@Overridepublicvoidopen(Configurationparameters)throwsException{super.open(parameters);connection=DriverManager.getConnection(properties.getProperty("url"),properties.getProperty("usernam...
相较于《0基础学习PyFlink——使用PyFlink的Sink将结果输出到外部系统》中输出到终端的Sink,我们只需要修改器with字段的连接器即可。 my_sink_ddl="""CREATE TABLE WordsCountTableSink (`word` STRING,`count` BIGINT) WITH ('connector' = 'jdbc','url' = 'jdbc:mysql://127.0.0.1:3306/words_count_db?
studentDS.addSink(new CustomSinkToMysql()); // 4.execute env.execute(); } public static void main(String[] args) throws Exception { // sinkToMysqlByLambda(); //验证结果中id=5001是插入的数据 // sinkToMysql();//验证结果中id=5002是插入的数据 sinkToMysql2();//验证结果中id=5003是插...
一个Person的类,对应MySQL中的一张表的字段。 模拟几条数据流,写入到 MySQL中。 packageicu.wzk;importorg.apache.flink.configuration.Configuration;importorg.apache.flink.streaming.api.datastream.DataStreamSource;importorg.apache.flink.streaming.api.functions.sink.RichSinkFunction;importorg.apache.flink.streaming...
自定义MysqlSink类 import java.sql.{Connection, DriverManager} import com.google.gson.Gson import org.apache.flink.configuration.Configuration import org.apache.flink.streaming.api.functions.sink.{RichSinkFunction, SinkFunction} class MysqlSink(url: String, user: String, pwd: String) extends RichSink...
flink 将mysql作为Source和Sink的代码示例 1.maven导入 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.34</version> </dependency> 2.SourceFromMySQL工具类java代码 import org.apache.flink.configuration.Configuration;...
之前其实在《从0到1学习Flink》—— 如何自定义 Data Sink ?文章中其实已经写了点将数据写入到 MySQL,但是一些配置化的东西当时是写死的,不能够通用,最近知识星球里有朋友叫我: 写个从 kafka 中读取数据,经过 Flink 做个预聚合,然后创建数据库连接池将数据批量写入到 mysql 的例子。
tEnv.executeSql(sinkTable); tEnv.executeSql("insert into mysql_sink select id,username,password from mysql_source"); System.out.println("MySQL to MySQL "); } } 完整SQL如下 CREATE TABLE mysql_source ( id INT, username STRING, password STRING ...
flink JDBC SQL Connector sink到mysql表,mysql表有主键和唯一键,定义sink mysql 表唯一键为主键,任务报Caused by: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '1711666254861078528-ORDonoff-0' for key 'DEVICEID_DATACODE_DEL'