You need to enable JavaScript to run this app.
导航
Kyuubi 快速开始
最近更新时间:2023.12.08 17:55:52首次发布时间:2023.12.08 17:55:52

本文为您介绍两种典型的 Kyuubi 使用方式,分别是通过 Beeline 客户端连接 Kyuubi 进行交互式分析、通过标准 JDBC/ODBC 接口进行编程访问。

1 前提条件

  • 已创建火山引擎 E-MapReduce(EMR)Hadoop 类型集群,并在集群中添加了 Kyuubi 服务。详见创建集群添加服务

2 使用 Beeline 客户端连接 Kyuubi

您可以使用 beeline 工具连接到 Kyuubi 服务。

说明

以下示例中的 hostname 命名规则,适用于 EMR 3.5.0 及以后的集群版本,旧版本 hostname 命名规则,详见域名规则

2.1 通过 ZooKeeper 连接到 Kyuubi(推荐)

您需要指定某个具体的用户以连接到 Kyuubi 服务,用户名密码信息可详见用户管理

beeline -n user1 -p user1_password -u "jdbc:hive2://master-1-1:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=kyuubi"

2.2 直连 Kyuubi Thrift 端口

您也可以通过 Thrift 端口,直连 Kyuubi 服务。

beeline -n user1 -p user1_password -u "jdbc:hive2://master-1-1:10009"

3 使用 JDBC 对 Kyuubi 服务进行编程访问

本章节提供一个 Maven 工程示例,使用 Hive JDBC Driver 连接到 Kyuubi。

3.1 依赖引入

<dependency>
    <groupId>org.apache.hive</groupId>
    <artifactId>hive-jdbc</artifactId>
    <version>2.3.9</version>
</dependency>

3.2 代码示例

import java.sql.*;

public class JDBCTest {
    private static String driverName = "org.apache.hive.jdbc.HiveDriver";
    private static String kyuubiJdbcUrl = "jdbc:hive2://master-1-1:10009/default;";

    public static void main(String[] args) throws Exception {
        Class.forName(driverName);
        Connection conn = DriverManager.getConnection(kyuubiJdbcUrl);
        Statement st = conn.createStatement();
        ResultSet res = st.executeQuery("show databases");
        while (res.next()) {
            System.out.println(res.getString(1));
        }
        res.close();
        st.close();
        conn.close();
    }
}