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

Realtime Compute for Apache Flink:StarRocks カタログの管理

最終更新日:May 16, 2026

StarRocks カタログを使用すると、テーブルごとに DDL 文を手動で記述することなく、Realtime Compute for Apache Flink 開発コンソールで StarRocks のメタデータ (データベース、テーブル、パーティション) に直接アクセスできます。Flink は StarRocks テーブルを自動的にマッピングするため、すぐにデータのクエリや書き込みが可能です。

このトピックでは、StarRocks カタログの作成、表示、使用、削除方法について説明します。

制限事項

  • StarRocks カタログには、エンジンバージョン vvr-6.0.6-flink-1.15 以降が必要です。

  • StarRocks カタログはスキーマについては読み取り専用です。カタログを介して StarRocks テーブルを作成または変更することはできません。

StarRocks カタログの作成

コンソール UI と Flink SQL の 2 つの方法が利用可能です。UI を使用する方法を推奨します。

コンソールでの StarRocks カタログの作成

  1. Realtime Compute for Apache Flink コンソールにログインします。管理するワークスペースを探し、[アクション] 列の [コンソール] をクリックします。

  2. 左側のナビゲーションペインで、[カタログ] をクリックします。

  3. [カタログリスト] ページで、[カタログの作成] をクリックします。[カタログの作成] ウィザードの [組み込みカタログ] タブで [StarRocks] を選択し、[次へ] をクリックします。

  4. カタログ パラメーターを設定します。

    重要

    StarRocks カタログの設定は、作成後に変更することはできません。設定を変更するには、既存のカタログを削除して新しいカタログを作成する必要があります。

    パラメーター 説明 必須 注意
    catalog name StarRocks カタログの名前。 はい 小文字と数字のみ使用できます。ハイフン (-)、アンダースコア (_)、大文字は使用できません。
    endpoint フロントエンド (FE) ノードのエンドポイント。 はい フォーマット: jdbc:mysql://IP:port。デフォルトの JDBC ポートは 9030 です。
    dbname 接続先のデフォルトの StarRocks データベース。 はい
    username StarRocks へのアクセスに使用するユーザー名。 はい
    password StarRocks へのアクセスに使用するパスワード。 はい 認証情報の漏洩を避けるため、プレーンテキストパスワードの代わりに変数を使用してください。詳細については、「変数の管理」をご参照ください。

    image

  5. [確認] をクリックします。

カタログは、[カタログリスト] ページに表示されます。

Flink SQL を使用した StarRocks カタログの作成

スクリプトページの SQL エディタで、CREATE CATALOG 文を入力し、その文を選択して、左側の[実行] をクリックします。

CREATE CATALOG <catalogname> WITH (
  'type' = 'starrocks',
  'endpoint' = 'jdbc:mysql://<IP>:<port>',
  'username' = '<username>',
  'password' = '<password>',
  'dbname' = '<dbname>'
);
image..png

設定オプションは VVR のバージョンによって異なります。

VVR 11 以降

オプション 説明 必須 注意
catalogname StarRocks カタログの名前。 はい 小文字 (a-z) と数字 (0-9) のみ使用できます。
type コネクタタイプ。 はい starrocks に設定します。
endpoint フロントエンド (FE) エンドポイント。 いいえ フォーマット: jdbc:mysql://IP:port。デフォルトポート: 9030。このオプションを使用すると、jdbc-urlhttp-url を個別に設定する必要がなくなります。
jdbc-url FE MySQL サーバーの JDBC URL。 いいえ 複数のアドレスはカンマで区切ります。フォーマット: jdbc:mysql://<fe_host1>:<fe_query_port1>,<fe_host2>:<fe_query_port2>http-url と一緒に使用する必要があります。
http-url FE HTTP サーバーの HTTP URL。 いいえ 複数のアドレスはセミコロンで区切ります。フォーマット: <fe_host1>:<fe_http_port1>;<fe_host2>:<fe_http_port2>jdbc-url と一緒に使用する必要があります。
username StarRocks へのアクセスに使用するユーザー名。 はい
password StarRocks へのアクセスに使用するパスワード。 はい プレーンテキストの値の代わりに変数を使用してください。詳細については、「ネームスペース変数」をご参照ください。
dbname 接続先のデフォルトのデータベース。 いいえ default-database と同等です。どちらか一方を使用してください。
default-database 接続先のデフォルトのデータベース。 いいえ dbname との互換性のためのエイリアスです。どちらか一方を使用してください。
table.num-buckets カタログを通じて作成されるテーブルのパーティションごとのデフォルトのバケット数。 いいえ
table.char-expand-multiple カタログを通じてテーブルを作成する際に、VARCHAR および CHAR 列の長さに適用される乗数。 いいえ デフォルト: 4
table.binary-padding カタログを通じてテーブルを作成する際に、VARBINARY および BINARY 列の長さに追加される文字数。 いいえ デフォルト: 2
table.key-type カタログを通じて作成されるテーブルのテーブルタイプ。 いいえ 有効な値: PRI (デフォルト、プライマリキーテーブル)、UNI (一意キーテーブル)、AGG (集計テーブル)、DUP (重複キーテーブル)。
table.keys カタログを通じて作成されるテーブルのキーフィールド。 いいえ
table.distribution-keys カタログを通じて作成されるテーブルの分散列 (バケットキー)。 いいえ 指定しない場合、プライマリキーテーブルはデフォルトでプライマリキーをバケットキーとして使用します。
重要

このパラメーターを空の文字列 ('') に設定しないでください。設定した場合、バケット列が空であるため、プライマリキーテーブルは Distribution column() doesn't exist というエラーで失敗します。プライマリキーをバケットキーとして使用するには、このパラメーターは設定しないでください。

table.enable-null-primary-key Flink が StarRocks の NULL 許容のプライマリキー列を NULL 非許容として扱うかどうか。 いいえ 有効な値: false (デフォルト)、truetrue に設定した場合、予期しない動作を避けるために、アップストリームデータのプライマリキー列に NULL 値がないことを確認してください。

VVR 8 以前

オプション 説明 必須 注意
catalogname StarRocks カタログの名前。 はい 小文字 (a-z) と数字 (0-9) のみ使用できます。
type コネクタタイプ。 はい starrocks に設定します。
endpoint フロントエンド (FE) エンドポイント。 はい フォーマット: jdbc:mysql://IP:port。デフォルトポート: 9030。
username StarRocks へのアクセスに使用するユーザー名。 はい
password StarRocks へのアクセスに使用するパスワード。 はい プレーンテキストの値の代わりに変数を使用してください。詳細については、「ネームスペース変数」をご参照ください。
dbname 接続先のデフォルトのデータベース。 はい

StarRocks カタログの表示

  1. Realtime Compute for Apache Flink コンソールにログインします。目的のワークスペースを探し、[アクション] 列の [コンソール] をクリックします。

  2. 左側のナビゲーションペインで、[カタログ] をクリックします。

  3. [カタログリスト] ページで、カタログを探します。[名前][タイプ] の列に、基本情報が表示されます。

    説明

    カタログ内のデータベースとテーブルを閲覧するには、[操作] 列の [表示] をクリックします。

StarRocks カタログの使用

カタログは StarRocks のデータを 3 レベルの名前空間として公開します: catalog_name.db_name.table_name。 Flink SQL では、各レベルでバッククォートで囲まれた識別子を使用してテーブルを参照します。

Flink 名前空間の階層 対応する StarRocks の要素
カタログ名 Flink でのみ定義
データベース名 StarRocks データベース名
テーブル名 StarRocks テーブル名

StarRocks テーブルからのデータ読み取り

VVR 11 以降

INSERT INTO ${other_sink_table}
SELECT ...
FROM `${catalog_name}`.`${db_name}`.`${table_name}`

VVR 8 以前

OPTIONS ヒントは、ソーステーブルのコネクタパラメーターを指定するために必要です。

INSERT INTO ${other_sink_table}
SELECT ...
FROM `${catalog_name}`.`${db_name}`.`${table_name}`
    /*+
        OPTIONS('connector' = 'starrocks', 'jdbc-url' = 'jdbc:mysql://IP:port', 'scan-url' = 'IP:port')
    */

StarRocks テーブルへのデータ書き込み

VVR 11 以降

INSERT INTO `${catalog_name}`.`${db_name}`.`${table_name}`
SELECT ...
FROM ${other_source_table}

VVR 8 以前

OPTIONS ヒントは、結果テーブルのコネクタパラメーターを指定するために必要です。

INSERT INTO `${catalog_name}`.`${db_name}`.`${table_name}`
    /*+
        OPTIONS('connector' = 'starrocks', 'jdbc-url' = 'jdbc:mysql://IP:port', 'load-url' = 'IP:port', 'sink.buffer-flush.interval-ms' = '5000', 'sink.properties.row_delimiter' = '\x02', 'sink.properties.column_separator' = '\x01')
    */
SELECT ...
FROM ${other_source_table}

CTAS または CDAS を使用した StarRocks への書き込み

CTAS (CREATE TABLE AS SELECT) と CDAS (CREATE DATABASE AS DATABASE) を使用すると、単一のステートメントで既存のソースから StarRocks のテーブルやデータベースを作成できます。

USE CATALOG sr_catalog;

CREATE TABLE IF NOT EXISTS `${table_name}`
WITH (
  ...
) AS TABLE ${other_source_table};


CREATE DATABASE IF NOT EXISTS `${db_name}`
WITH (
  ...
) AS DATABASE ${other_source_database};

完全なウォークスルーについては、「Flink を使用した MySQL から StarRocks へのデータ取り込み」をご参照ください。

StarRocks カタログの削除

重要

カタログを削除しても、実行中のデプロイメントには影響しません。ただし、未公開のデプロイメントや、一時停止が必要なデプロイメントには影響します。注意して進めてください。

コンソール UI と Flink SQL の 2 つの方法が利用可能です。UI を使用する方法を推奨します。

コンソールでの StarRocks カタログの削除

  1. Realtime Compute for Apache Flink コンソールにログインします。目的のワークスペースを見つけ、[アクション] 列の [コンソール] をクリックします。

  2. 左側のナビゲーションペインで、[カタログ] をクリックします。

  3. [カタログリスト] ページで、カタログを見つけ、[アクション] 列の [削除] をクリックします。

  4. 確認ダイアログで、[削除] をクリックします。

カタログは、左側のナビゲーションの[カタログ] ペインから削除されます。

Flink SQL を使用した StarRocks カタログの削除

スクリプトページの SQL エディタに次のステートメントを入力し、そのステートメントを右クリックして[実行]を選択します。

DROP CATALOG `<catalog name>`;

<catalog name> を、削除するカタログの名前に置き換えます。

ステートメントの実行後、左側のナビゲーションの [カタログ] ペインで、カタログが削除されていることを確認します。