すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:JDBC を使用した StarRocks インスタンスへの接続

最終更新日:Mar 26, 2026

Java Database Connectivity (JDBC) を使用すると、ご利用の Java アプリケーションを EMR Serverless StarRocks インスタンスに接続し、SQL クエリをプログラムで実行できます。

前提条件

開始する前に、以下を確認してください。

StarRocks インスタンスへの接続

ステップ 1: JDBC ドライバーを Maven プロジェクトに追加

MySQL JDBC ドライバーの依存関係を、ご利用の pom.xml ファイルに追加します。

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>8.0.27</version><!-- Modify the version based on your requirements. -->
</dependency>
説明

StarRocks は公式の JDBC ドライバーを提供していません。この例では、mysql-connector-java を使用しています。互換性の問題が発生する可能性があるため、ご利用のデータベースの公式ウェブサイトで、サポートされている JDBC ドライバーを確認してください。

ステップ 2: 接続してクエリを実行

次の例は、StarRocks インスタンスに接続して SQL クエリを実行します。

public class ConnStarrocks {

    static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
    // Format: jdbc:mysql://<FE node endpoint>:<fe_query_port>/<database>
    static final String DB_URL = "jdbc:mysql://localhost:9030/yourDatabaseName?useSSL=false&serverTimezone=UTC";

    // Replace with your actual username and password.
    static final String USER = "****";
    static final String PASSWORD = "1234*****";

    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        try {
            // Load the JDBC driver.
            Class.forName(JDBC_DRIVER);

            // Establish the connection.
            System.out.println("Connecting.");
            conn = DriverManager.getConnection(DB_URL, USER, PASSWORD);

            // Run a query.
            System.out.println("Instantiating the Statement object...");
            stmt = conn.createStatement();
            String sql = "SELECT id, name, url FROM websites";
            ResultSet rs = stmt.executeQuery(sql);

            // Close resources.
            rs.close();
            stmt.close();
            conn.close();
        } catch (SQLException se) {
            se.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (stmt != null) stmt.close();
            if (conn != null) conn.close();
        }
        System.out.println("Goodbye!");
    }
}

接続が成功すると、出力は次のようになります。

image

パラメーター

次の表は、主要なパラメーターについて説明しています。プレースホルダー値を実際の構成に置き換えてください。

パラメーター説明
JDBC_DRIVERJDBC ドライバーのクラス名。com.mysql.cj.jdbc.Driver
DB_URLStarRocks に接続するための JDBC URL。形式: jdbc:mysql://<Frontend (FE) node endpoint>:<fe_query_port>/<database>。これらの値の取得方法については、「FE ノードエンドポイントとクエリポートの取得」をご参照ください。jdbc:mysql://localhost:9030/load_test
USERユーザー名。デフォルトのadminユーザーには管理者権限があります。また、[ユーザー]ページで作成したカスタムユーザーを使用することもできます。詳細については、「ユーザー管理とデータの権限付与」をご参照ください。admin
PASSWORDユーザーのパスワード。
sql実行する SQL ステートメントです。詳細については、「StarRocks の共有なしインスタンスの使用」をご参照ください。SELECT id, name, url FROM websites

FE ノードエンドポイントとクエリポートの取得

両方の値は、お使いの StarRocks インスタンスの [インスタンス詳細] タブにある [FE Details] セクションにあります。

  • FE ノードエンドポイント: StarRocks インスタンスとご利用のクライアントが同じ VPC にある場合は、内部エンドポイントを使用します。そうでない場合は、パブリックエンドポイントを使用します。その際、セキュリティグループルールが必要なポートからのアクセスを許可していることを確認してください。詳細については、「ネットワークセキュリティ設定の構成」をご参照ください。

  • クエリポート: デフォルトは 9030 です。

次のステップ

Serverless StarRocks Manager の SQL エディターを使用して、SQL ステートメントの作成、実行、管理を行います。詳細については、「EMR StarRocks Manager を使用した EMR Serverless StarRocks インスタンスへの接続」をご参照ください。