70、Flink 的 DataStream Connector 之 JDBC 连接器详解

1.概述

该连接器可以向 JDBC 数据库写入数据,添加下面的依赖以便使用该连接器(同时添加 JDBC 驱动)

复制代码
<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-connector-jdbc</artifactId>
    <version>3.1.2-1.19</version>
</dependency>

已创建的 JDBC Sink 能够保证至少一次的语义,精确一次可以通过 upsert 语句或幂等更新实现。

使用示例:

复制代码
StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();

env
        .fromElements(...)
        .addSink(JdbcSink.sink(
                "insert into books (id, title, author, price, qty) values (?,?,?,?,?)",
                (ps, t) -> {
                    ps.setInt(1, t.id);
                    ps.setString(2, t.title);
                    ps.setString(3, t.author);
                    ps.setDouble(4, t.price);
                    ps.setInt(5, t.qty);
                },
                new JdbcConnectionOptions.JdbcConnectionOptionsBuilder()
                        .withUrl(getDbMetadata().getUrl())
                        .withDriverName(getDbMetadata().getDriverClass())
                        .build()));
env.execute();
相关推荐
GeminiJM21 分钟前
Elasticsearch minimum_should_match 参数详解
大数据·elasticsearch·jenkins
少废话h42 分钟前
Redis主从与集群搭建全指南
大数据·linux·redis·mysql
TextIn智能文档云平台1 小时前
什么是多模态信息抽取,它和传统OCR有什么区别?
大数据·人工智能
雨中飘荡的记忆2 小时前
HBase实战指南
大数据·数据库·hbase
半吊子全栈工匠2 小时前
如何接手一个数据团队?
大数据·人工智能
新诺韦尔API2 小时前
如何快速接入手机携号转网查询接口?
大数据·智能手机·api
阿里云大数据AI技术3 小时前
Forrester发布流式数据平台报告:Ververica首次跻身领导者行列,实时AI能力获权威认可
人工智能·flink
都市摆渡人3 小时前
反理论产品周刊#3:如何有效地做产品知识管理
大数据
天天向上杰4 小时前
小结:维度建模方法论与实践指南
大数据
EasyCVR4 小时前
视频汇聚平台EasyCVR助力农场实现全场景可视化管理
大数据·人工智能·音视频