全部产品
Search
文档中心

E-MapReduce:Terhubung ke Kyuubi

更新时间:Jul 02, 2025

Topik ini menjelaskan cara menggunakan Beeline atau driver Java Database Connectivity (JDBC) untuk terhubung ke Kyuubi. Jika menggunakan Beeline, Anda dapat terhubung melalui ZooKeeper atau langsung ke Kyuubi.

Prasyarat

  • Sebuah kluster DataLake yang mencakup layanan Kyuubi telah dibuat di konsol E-MapReduce (EMR). Untuk informasi lebih lanjut, lihat Buat sebuah kluster.

  • Anda telah masuk ke kluster DataLake. Untuk informasi lebih lanjut, lihat Masuk ke sebuah kluster.

Gunakan Beeline untuk terhubung ke Kyuubi

Anda dapat menggunakan Hive Beeline atau Kyuubi Beeline untuk terhubung ke server Kyuubi. Dalam kluster EMR, Kyuubi Beeline dikenal sebagai kyuubi-beeline. Contoh berikut menunjukkan cara menggunakan kyuubi-beeline untuk terhubung ke Kyuubi.

Kluster umum

  • (Direkomendasikan) Metode 1: Gunakan ZooKeeper untuk Terhubung ke Kyuubi

    kyuubi-beeline -n user1 \
      -u "jdbc:hive2://master-1-1:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=kyuubi"
  • Metode 2: Terhubung Langsung ke Kyuubi

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

    Jalankan perintah berikut untuk mengirimkan file SQL:

    kyuubi-beeline -n user1 -u "jdbc:hive2://master-1-1:10009/" -f query1.sql

Kluster dengan keamanan tinggi

Sebelum terhubung ke Kyuubi, jalankan perintah kinit untuk otentikasi identitas. Untuk informasi lebih lanjut tentang Kerberos, lihat Operasi Dasar pada Kerberos.

  • (Direkomendasikan) Metode 1: Gunakan ZooKeeper untuk Terhubung ke Kyuubi

    kyuubi-beeline -n user1 \
      -u "jdbc:hive2://master-1-1:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=kyuubi;principal=kyuubi/_HOST@EMR"
  • Metode 2: Terhubung Langsung ke Kyuubi

    kyuubi-beeline -n user1 -u "jdbc:hive2://master-1-1:10009/;principal=kyuubi/_HOST@EMR"

Gunakan driver JDBC untuk terhubung ke Kyuubi

Contoh berikut menggunakan proyek Maven untuk menjelaskan cara menggunakan driver JDBC Hive dalam menghubungkan aplikasi Java ke Kyuubi.

Dependensi Maven

Tambahkan dependensi berikut ke proyek Maven:

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

Contoh kode

Kluster umum

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();
    }
}

Kluster dengan keamanan tinggi

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;principal=kyuubi/_HOST@EMR";

    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();
    }
}

Referensi