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();
相关推荐
ly768912 小时前
Elasticsearch 写入链路的 refresh、flush 与 translog 边界:为什么 bulk 吞吐会突然塌陷
大数据·elasticsearch·搜索引擎·translog·写入链路·bulk调优
python与大数据分析12 小时前
大模型 or Not?智慧农业落地,大小模型各有所长
大数据·人工智能
珠海西格电力12 小时前
AI预测与优化:基于机器学习的负荷预测与调度策略
大数据·人工智能·机器学习·信息可视化·架构·能源
HZZD_HZZD12 小时前
商场餐饮铺基本电费怎么算?需量控制与峰值申报
大数据·物联网·腾讯云
wengad13 小时前
嵌入式金融数据上链:挑战、核心问题与解决方案
大数据·金融·区块链·金融创新
starzy199013 小时前
Flink ResourceManager启动流程源码深度剖析:从ClusterEntrypoint到Slot分配的完整链路
java·大数据·flink
Sayai13 小时前
ClickHouse WITH FILL 实战:监控大屏时间序列补零,附多粒度指标表与物化视图级联设计
大数据·运维·数据仓库·clickhouse·物化视图
2603_9547083113 小时前
微能网的核心硬件协调控制装置有哪些功能?
大数据·运维·人工智能·架构·能源
T062051413 小时前
【工具变量】“国家级大数据综合试验区”政策试点DID(2000-2025年)
大数据
samFuB13 小时前
【数据集】A股上市企业劳动雇佣与稳就业数据(dta+xlsx)2010-2024年
大数据