You need to enable JavaScript to run this app.
导航
JDBC使用
最近更新时间:2024.07.11 16:02:11首次发布时间:2024.05.13 16:45:33

1 简介

JDBC是Java DataBase Connectivity的缩写,它是Java程序访问数据库的标准接口,EMR Serverless Spark支持使用JDBC来提交任务,您可以使用标准JDBC接口来访问EMR Serverless Spark,还可以与市面上常见的BI软件进行结合。

2 连接 EMR Serverless Spark

2.1 示例代码

Class.forName("org.volcano.serverless.spark.jdbc.EMRServerlessSparkDriver");
Properties properties = new Properties();
properties.setProperty("user", "Ax");
properties.setProperty("password", "xx");
Connection conn = DriverManager.getConnection("jdbc:emr-serverless-spark://serverless-spark-jdbc.emr.cn-beijing.volces.com:10009/;queue_name=test_sparkjar", properties);
Statement statement = conn.createStatement();
String sql = "select 1";
ResultSet resultSet = statement.executeQuery(sql);
System.out.println(resultSet.getString(1));

2.2 代码解释

  1. 环境准备

依赖:JDK 1.8
JDBC 下载地址:emr-serverless-spark-jdbc-driver.jar

  1. 加载 EMR Serverless Spark JDBC 驱动
Class.forName("org.volcano.serverless.spark.jdbc.EMRServerlessSparkDriver");
  1. 通过 DriverManager EMR Serverless Spark Connection
Connection conn = DriverManager.getConnection("jdbc:emr-serverless-spark://xx:10009/;queue_name=test_sparkjar", properties);
  1. 创建Statement,并执行SQL,获取结果
Statement statement = conn.createStatement();
String sql = "select 1";
ResultSet resultSet = statement.executeQuery(sql);
System.out.println(resultSet.getString(1));

2.3 JDBC 链接串参数说明

jdbc:emr-serverless-spark://${endpoint}:10009/;queue_name=${queueName}&user=${AccessKey}&password=${SecretKey}

注意

如示例,queue_name、user、password三个参数也可以放在Properties中

参数名

说明

endpoint

连接EMR Serverless Spark 的地址,每个region不一样

  • 华北:serverless-spark-jdbc.emr.cn-beijing.volces.com
  • 华东:serverless-spark-jdbc.emr.cn-shanghai.volces.com
  • 华南:serverless-spark-jdbc.emr.cn-guangzhou.volces.com
  • 柔佛:serverless-spark-jdbc.emr.ap-southeast-1.volces.com

queue_name

连接使用的队列名称,不填默认使用公共队列

user

填写租户的AccessKey

password

填写租户的SecretKey

3 生态链接

通过JDBC,您可以在任意支持Hive/Spark/自定义 JDBC连接的BI软件上使用EMR Serverless Spark,下述是一些场景BI软件的连接示例

3.1 使用IDEA连接EMR Serverless Spark

  1. IDEA 数据库连接中,新建一个JDBC连接Driver
  • 点击左上角的+号,添加自定义连接Driver
  • 在Driver Files中,添加EMR Serverless Spark的Driver Jar包
  • Class选择:org.volcano.serverless.spark.jdbc.EMRServerlessSparkDriver

图片

  1. 创建数据源,并选择刚刚我们创建Driver

图片

  1. 填写相关信息

图片
其中:

  • Authentication 选择User&Password
  • 用户名以及密码填写您账户的ak/sk
  • URL可以参考JDBC连接串参数说明
  1. 点击Test connection,如果通过,则说明设置成功

图片

  1. 打开数据库连接console,编写sql,即可开始您的sql分析

图片