flink-jdbc-driver

devtools/2024/10/19 2:20:50/

        Flink JDBC 驱动程序是一个 Java 库,使客户端能够通过 SQL 网关将 Flink SQL 发送到 Flink 集群。

     首先启动:1.flink集群,随意任何集群。

     2.启动flink-sql-gateway:

sql-gateway.sh start -Dsql-gateway.endpoint.rest.address=localhost

验证sql- gateway

curl http://localhost:8083/v1/info
  1. Maven 依赖项

    Flink JDBC 驱动是一个通过 JDBC API 访问 Flink 集群的库。有关 Java 中 JDBC 的一般用法,请参见 JDBC 教程。

  2. 在项目的pom.xml中添加以下依赖项,或者下载 flink-jdbc-driver-bundle-{VERSION}.jar 并将其添加到你的 Classpath 中。

       

 <dependency><groupId>org.apache.flink</groupId><artifactId>flink-sql-jdbc-driver-bundle</artifactId><version>${flink.version}</version></dependency>
  1. 使用特定 URL 连接到 Java 代码中的 Flink SQL 网关。
  2. 执行您想要的任何语句。

     

java">public class Main {public static void main(String[] args) throws SQLException {Properties properties = new Properties();properties.setProperty("table.exec.sink.not-null-enforcer","DROP");DataSource dataSource = new FlinkDataSource("jdbc:flink://ip:8083", properties);try (Connection connection = dataSource.getConnection()) {try (Statement statement = connection.createStatement()) {/*statement.execute("CREATE TABLE student (\n" +"  id VARCHAR(255),\n" +"  sid VARCHAR(255),\n" +"  name VARCHAR(255),\n" +"  PRIMARY KEY (id) NOT ENFORCED" +") WITH (\n" +"   'connector' = 'jdbc',\n" +"   'url' = 'jdbc:mysql://ip:3306/test?characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true',\n" +"   'username' = 'test',\n" +"   'password' = 'test@123',\n " +"   'table-name' = 'student' " +")");statement.execute("CREATE TABLE students (\n" +"  id VARCHAR(255),\n" +"  sid VARCHAR(255),\n" +"  name VARCHAR(255),\n" +"  PRIMARY KEY (id) NOT ENFORCED" +") WITH (\n" +"   'connector' = 'jdbc',\n" +"   'url' = 'jdbc:mysql://ip:3306/test?characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true',\n" +"   'username' = 'test',\n" +"   'password' = 'test@123',\n " +"   'table-name' = 'students' " +")");*/statement.execute("CREATE TABLE students (\n" +"  name STRING,\n" +"  sid BIGINT,\n" +"  PRIMARY KEY (sid) NOT ENFORCED" +") WITH (\n" +"   'connector' = 'paimon',\n" +"   'path' = 'hdfs://ip:8072/paimon/hive/olap_mz.db/students'\n" +")");//statement.execute("INSERT INTO students VALUES ('1', 's1', 'Hi'), ('2', 's2','Hello')");try (ResultSet rs = statement.executeQuery("SELECT st.sid,count(st.sid) as coun FROM students st group by st.sid")) {while (rs.next()) {System.out.println(rs.getLong(1) +","+rs.getLong(2) );}statement.close();}connection.close();}}}
}

注释的是mysql的,运行的是paimon的。


http://www.ppmy.cn/devtools/125155.html

相关文章

STM32 GPIO输出输入配置:【图文讲解】

1&#xff1a;输出配置 STM32 GPIO输出有四种配置&#xff1a;开漏输出\推挽输出\复用开漏\复用推挽 1&#xff1a;开漏输出&#xff1a; 输出端相当于三极管的集电极。要得到高电平状态需要上拉电阻才行&#xff0c;适合于做电流型的驱动&#xff0c;其吸收电流的能力相对强…

HarmonyOS NEXT 应用开发实战(三、ArkUI页面底部导航TabBar的实现)

在开发HarmonyOS NEXT应用时&#xff0c;TabBar是用户界面设计中不可或缺的一部分。本文将通过代码示例&#xff0c;带领大家一同实现一个常用的TabBar&#xff0c;涵盖三个主要的内容页&#xff1a;首页、知乎日报和我的页面。以模仿知乎日报的项目为背景驱动&#xff0c;设定…

「实战应用」如何用图表控件LightningChart可视化天气数据?(一)

LightningChart.NET完全由GPU加速&#xff0c;并且性能经过优化&#xff0c;可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D&#xff0c;高级3D&#xff0c;Polar&#xff0c;Smith&#xff0c;3D饼/甜甜圈&#xff0c;地理地图和GIS图表以及适用于科学…

对MVC详细解读

一、MVC模式的详细组成部分 1. 模型&#xff08;Model&#xff09; 数据结构&#xff1a; 模型通常使用类或结构来定义应用程序的数据结构。例如&#xff0c;在Ruby on Rails中&#xff0c;模型通常与数据库表相对应&#xff0c;使用Active Record模式。 数据访问层&#xff1…

【AI绘画】Midjourney进阶:三分线构图详解

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AI绘画 | Midjourney 文章目录 &#x1f4af;前言&#x1f4af;什么是构图为什么Midjourney要使用构图 &#x1f4af;三分线构图特点使用场景提示词书写技巧测试 &#x1f4af;小结 &#x1f4af;前言 【AI绘画】Midjourney进阶&a…

中阳:金融市场中的稳健投资平台

在充满不确定性的全球金融市场中&#xff0c;投资者需要一个既稳健又灵活的平台来应对各种市场挑战。中阳凭借其丰富的市场经验、先进的技术平台和广泛的投资产品&#xff0c;成为了无数投资者信赖的金融合作伙伴。本文将详细介绍中阳的核心优势&#xff0c;帮助投资者在复杂的…

中科星图GVE(案例)——AI实现建筑用地变化前后对比情况

目录 简介 函数 gve.Services.AI.ConstructionLandChangeExtraction(image1,image2) 代码 结果 知识星球 机器学习 简介 AI可以通过分析卫星图像、航拍影像或其他地理信息数据&#xff0c;实现建筑用地变化前后对比。以下是一种可能的实现方法&#xff1a; 数据获取&am…

LeetCode 每日一题 2024/10/7-2024/10/13

记录了初步解题思路 以及本地实现代码&#xff1b;并不一定为最优 也希望大家能一起探讨 一起进步 目录 10/7 871. 最低加油次数10/8 1436. 旅行终点站10/9 3171. 找到按位或最接近 K 的子数组10/10 3162. 优质数对的总数 I10/11 3164. 优质数对的总数 II10/12 3158. 求出出现两…