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

Data Lake Formation:Flink SQL による DLF へのアクセス

最終更新日:Jun 22, 2026

このトピックでは、Realtime Compute for Apache Flink ワークスペースから Flink SQL と Paimon REST を使用して Data Lake Formation (DLF) カタログに接続する方法について説明します。

前提条件

  • Realtime Compute for Apache Flink のフルマネージドワークスペースが必要です。作成していない場合は、「Realtime Compute for Apache Flink の有効化」をご参照ください。

  • Realtime Compute for Apache Flink ワークスペースと DLF が同じリージョンにあることを確認してください。また、ワークスペースの VPC を DLF ホワイトリストに追加する必要があります。詳細については、「VPC ホワイトリストの設定」をご参照ください。

制限事項

Ververica Runtime (VVR) 11.1.0 以降のバージョンのみが、DLF カタログへの接続をサポートしています。

DLF カタログの作成

詳細については、「 DLF の概要 」をご参照ください。

Flink でのカタログの登録

説明

この操作は、DLF カタログをメタデータとしてのみマッピングします。Realtime Compute for Apache Flink でこのカタログを作成または削除しても、DLF 内の基盤となるデータには影響しません。

  1. Realtime Compute コンソールにログインします。

  2. フルマネージドワークスペースのリストで、対象ワークスペースの名前をクリックしてコンソールを開きます。

  3. UI を使用するか、SQL コマンドを実行してカタログを登録できます。

    UI

    1. 左側のナビゲーションペインで、[Catalogs] をクリックします。

    2. [Catalog List] ページで、[Create Catalog] をクリックします。

    3. [Apache Paimon] を選択し、[Next] をクリックします。

    4. [metastore][rest] に設定します。[catalog name] で、目的の DLF カタログを選択します。[OK] をクリックしてカタログを作成します。

    SQL コマンド

    スクリプトエディターで、次の SQL ステートメントを入力して実行し、カタログを作成します。

    CREATE CATALOG `flink_catalog_name` 
    WITH (
      'type' = 'paimon',
      'metastore' = 'rest',
      'token.provider' = 'dlf',
      'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com',
      'warehouse' = 'dlf_test'
    );

    次の表で各パラメーターを説明します。

    パラメーター

    説明

    必須

    type

    カタログのタイプ。このパラメーターは paimon に固定されます。

    はい

    paimon

    metastore

    メタストアのタイプ。このパラメーターは rest に固定されます。

    はい

    rest

    token.provider

    トークンプロバイダー。このパラメーターは dlf に固定されます。

    はい

    dlf

    uri

    DLF REST Catalog Server にアクセスするための URI です。形式は http://[region-id]-vpc.dlf.aliyuncs.com です。リージョン ID の詳細については、「エンドポイント」をご参照ください。

    はい

    http://cn-hangzhou-vpc.dlf.aliyuncs.com

    warehouse

    ウェアハウスとして使用する基盤となる DLF カタログの名前。

    はい

    dlf_test

一般的なエラー

java.lang.NullPointerException

  • スタックトレースの例:

    Caused by: java.lang.NullPointerException
    	at org.apache.paimon.rest.HttpClient.getRequestUrl(HttpClient.java:180)
    	at org.apache.paimon.rest.HttpClient.get(HttpClient.java:108)
    	at org.apache.paimon.rest.RESTCatalog.<init>(RESTCatalog.java:159)
    	at org.apache.paimon.rest.RESTCatalog.<init>(RESTCatalog.java:141)
    	at org.apache.paimon.rest.RESTCatalogFactory.create(RESTCatalogFactory.java:36)
    	at org.apache.paimon.catalog.CatalogFactory.createUnwrappedCatalog(CatalogFactory.java:84)
    	at org.apache.paimon.catalog.CatalogFactory.createCatalog(CatalogFactory.java:71)
    	at org.apache.paimon.flink.VvrCatalogFactory.createCatalog(VvrCatalogFactory.java:67)
    	at org.apache.paimon.flink.VvrCatalogFactory.createCatalog(VvrCatalogFactory.java:37)
    	at org.apache.flink.table.gateway.vvr.module.delegation.CatalogFactoryWrapper.createCatalog(CatalogFactoryWrapper.java:91)
    	at org.apache.flink.table.factories.FactoryUtil.createCatalog(FactoryUtil.java:572)
    	... 23 more
  • 解決策:

    カタログ設定の uri パラメーターの値を確認してください。値は http:// で始まる必要があります。

ForbiddenException: You are not authorized to do this operation

  • スタックトレースの例:

    Caused by: org.apache.paimon.rest.exceptions.ForbiddenException: Forbidden: You are not authorized to do this operation. Action: dlf:GetConfig. AccessDeniedDetail : {"AuthAction":"dlf:GetConfig","AuthPrincipalType":"AssumedRoleUser","AuthPrincipalOwnerId":"xxxxx","AuthPrincipalDisplayName":"aliyunstreamasidefaultrole:xxxxx","PolicyType":"AccountLevelIdentityBasedPolicy","NoPermissionType":"ImplicitDeny"} requestId:xxxxx
    	at org.apache.paimon.rest.DefaultErrorHandler.accept(DefaultErrorHandler.java:59)
    	at org.apache.paimon.rest.DefaultErrorHandler.accept(DefaultErrorHandler.java:35)
    	at org.apache.paimon.rest.HttpClient.exec(HttpClient.java:205)
    	at org.apache.paimon.rest.HttpClient.get(HttpClient.java:112)
    	at org.apache.paimon.rest.RESTCatalog.<init>(RESTCatalog.java:159)
    	at org.apache.paimon.rest.RESTCatalog.<init>(RESTCatalog.java:141)
    	at org.apache.paimon.rest.RESTCatalogFactory.create(RESTCatalogFactory.java:36
  • 解決策:

    AliyunStreamAsiDefaultRole ロールに AliyunDLFFullAccess ポリシーを付与してください。この手順は、将来の製品アップデートで不要になる場合があります。

    1. Alibaba Cloud アカウントまたは RAM 管理者としてRAM コンソールにログインします。

    2. 左側のナビゲーションペインで、[アイデンティティ] > [ロール] に移動し、AliyunStreamAsiDefaultRole ロールを見つけます。

    3. [Actions] 列で、[Grant Permission] をクリックします。

    4. [ポリシー] セクションで、AliyunDLFFullAccess ポリシーを検索して選択し、[Grant Permissions] をクリックします。