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();
相关推荐
baidu_2593395711 小时前
智慧消防管理系统平台(基于物联网与大数据的城市消防安全解决方案)
大数据·人工智能·物联网·云计算·智慧消防·力安科技·gdliontech.cn
恒拓高科WorkPlus11 小时前
信创即时通讯上线前要验证哪些能力?BeeWorks选型与验证指南
大数据·安全
hhwyqwqhhwy11 小时前
Linux(28)-sysfs层次分析
大数据
菠萝猫yena12 小时前
【git】git 命令常用组合
大数据·git·elasticsearch
Leo.yuan14 小时前
AI辅助数据分析:如何让分析效率提升85%?
大数据·人工智能
Sayai15 小时前
Elasticsearch 压测利器 esrally 从安装到跑分全流程
大数据·elasticsearch·搜索引擎
jikemaoshiyanshi15 小时前
企业落地 Data for AI,怎样搭建标准化云上数据底座?亚马逊云科技五层架构与落地选型路径
大数据
科技发布16 小时前
传播易整合商圈媒体,商场停车场灯箱广告高效落地
大数据·人工智能·媒体
MindUp16 小时前
大模型在命理排盘场景下的多平台功能对比与工程化思考
大数据·人工智能
小刘快学习16 小时前
印刷包装企业的工艺问答与报价,为什么从直连模型改成了聚合网关
大数据·人工智能