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();
相关推荐
Maynor99612 小时前
Nano Banana Pro - Comprehensive Prompt Collection
大数据·prompt
zhongerzixunshi12 小时前
以技术创新为翼 筑就发展新高度
大数据·人工智能·物联网
LJ979511112 小时前
媒体发布进入AI时代:如何用智能工具解放你的传播力?
大数据·人工智能
WZGL123012 小时前
从个体需求到整体守护,科技助力老人安全安心
大数据·人工智能·科技·安全·智能家居
代码方舟12 小时前
不仅是评分:利用 Python 解析天远借贷行为验证API 的 T0-T11 借贷时间轴数据
大数据·开发语言·python
Jackyzhe12 小时前
Flink源码阅读:窗口
大数据·flink
Psycho_MrZhang12 小时前
业务应用系统类型和常用名词
大数据
Hello.Reader12 小时前
Flink Procedures 用 SQL 的 `CALL` 跑 Flink Job(实现、类型推断、命名参数、Catalog 集成一篇搞懂)
大数据·sql·flink
武子康12 小时前
大数据-195 KNN/K近邻算法实战:欧氏距离+投票机制手写实现,含可视化与调参要点
大数据·后端·机器学习
毕小宝12 小时前
Elasticsearch 条件字段为 date 类型时注意事项
大数据·elasticsearch·搜索引擎