このトピックでは、Paimon REST を使用して Serverless StarRocks から Data Lake Formation (DLF) カタログにアクセスする方法について説明します。
前提条件
バージョン 3.3.8 以降の Serverless StarRocks インスタンスを作成済みであること。インスタンスを作成していない場合は、「インスタンスの作成」をご参照ください。インスタンスのバージョンが古い場合は、「バージョンのアップグレード」をご参照ください。
Serverless StarRocks サービスと DLF が同じ VPC 内にあること。
DLF カタログの作成
詳細については、「DLF の概要」をご参照ください。
StarRocks ユーザーの作成と権限の付与
DLF は、アクセスの制御に Resource Access Management (RAM) を使用します。デフォルトでは、StarRocks ユーザーは DLF にアクセスする権限を持っていません。RAM ユーザーと同じ名前の内部ユーザーを作成し、そのユーザーに必要な権限を付与する必要があります。
RAM ユーザーを作成します。
Alibaba Cloud アカウントまたは RAM 管理者として Resource Access Management (RAM) コンソールにログインします。
新しい RAM ユーザーを作成するか、既存のユーザーを選択します。詳細については、「RAM ユーザーの作成と権限の付与」をご参照ください。
説明RAM ユーザーの名前は、StarRocks の命名規則に従う必要があります。使用できるのは、文字、数字、アンダースコア (_) のみです。ハイフン (-) やピリオド (.) は使用できません。
DLF で RAM ユーザーに権限を付与します。
Serverless StarRocks で、RAM ユーザーと同じ名前のユーザーを作成します。このユーザーに、外部カタログの作成とすべてのカタログの表示権限を付与します。次に、このユーザーを RAM ユーザーに関連付けます。
EMR Serverless StarRocks コンソールにログインします。
[インスタンスリスト] ページで、StarRocks インスタンスの [操作] 列にある [接続] をクリックします。詳細については、「EMR StarRocks Manager を使用して StarRocks インスタンスに接続する」をご参照ください。
ユーザー名に `admin` または StarRocks スーパー管理者を指定して、StarRocks インスタンスにログインします。
EMR StarRocks Manager ページの左側のナビゲーションウィンドウで、[セキュリティセンター] > [ユーザー管理] を選択し、[ユーザーの追加] をクリックします。
ダイアログボックスで、次のパラメーターを設定し、[OK] をクリックします。
[ユーザーソース] で、[RAM ユーザー] を選択します。
ユーザー名: 前のステップで権限を付与した RAM ユーザーを選択します。
パスワード: パスワードを作成します。
ロール: デフォルト値は public です。
ユーザーが追加されたら、そのユーザーに権限を付与します。
[ユーザー管理] ページで、ユーザーを見つけ、[操作] 列の [権限付与] をクリックします。
[権限管理] タブで、[権限の追加] をクリックします。
[権限の追加] パネルで、次のパラメーターを設定し、[OK] をクリックします。
リソース: リソースを選択します。
権限設定: 付与する権限を選択します。
説明StarRocks Manager で付与するデータベースと権限の設定は、StarRocks の内部テーブルにのみ適用されます。DLF データカタログのアクセス権限を変更するには、Data Lake Formation コンソールで対応する RAM ユーザーの権限を変更する必要があります。
(オプション) ユーザーが関連付けられていることを確認します。
前の操作には 10〜20 秒の遅延があります。その後、このユーザーとして StarRocks Manager にログインできます。[SQL エディター] ページの [クエリリスト] セクションで、
アイコンをクリックして SQL クエリを作成します。SQL エディターで次のコマンドを実行して、現在のユーザーに関連付けられている RAM ユーザー ID を表示します。RAM ユーザー ID が空でない場合、ユーザーは正常に関連付けられています。show property;
StarRocks でカタログに接続する
この操作により、DLF カタログへのマッピングが作成されます。Flink でカタログを作成または削除しても、DLF 内の実際のデータには影響しません。
RAM ユーザーに関連付けられているユーザーとして StarRocks Manager にログインします。その後、カタログを作成または表示して、DLF 外部テーブルにアクセスできます。
[SQL エディター] ページの [クエリリスト] セクションで、
アイコンをクリックして SQL クエリを作成します。次の SQL 文を入力し、[実行] をクリックして外部カタログを作成します。
CREATE EXTERNAL CATALOG `paimon_catalog` PROPERTIES ( 'type' = 'paimon', 'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com', 'paimon.catalog.type' = 'rest', 'paimon.catalog.warehouse' = 'xxx_test', 'token.provider' = 'dlf' );次の表にパラメーターを示します。
パラメーター
説明
例
type
必須。StarRocks カタログのタイプ。DLF は
paimonのみをサポートします。paimon
uri
必須。DLF エンドポイント。フォーマットは
http://[region-id]-vpc.dlf.aliyuncs.comです。http://cn-hangzhou-vpc.dlf.aliyuncs.com
paimon.catalog.type
必須。Paimon カタログのタイプ。DLF の場合、このパラメーターを
restに設定します。rest
paimon.catalog.warehouse
必須。Paimon カタログの名前。名前は DLF コンソールから取得できます。
xxx_test
token.provider
必須。REST サービスプロバイダー。DLF の場合、このパラメーターを
dlfに設定します。dlf
