Data Lake Formation (DLF) でデータカタログを作成した後、Flink がそのメタデータにアクセスできるように Flink に登録する必要があります。このトピックでは、Paimon カタログを Flink 環境にリンクして管理する方法について説明します。
事前準備
バージョン要件
VVR 8.0.5 以降:Paimon カタログとテーブルの作成に必要です。
VVR 11.1 以降:DLF をメタストアとして使用するために必要です。
ストレージ要件
Paimon はデータとメタデータを Object Storage Service (OSS) に保存します。ご利用の OSS バケットを次のように設定します。
ストレージクラス:標準ストレージクラスを使用します。詳細については、「ストレージクラス」をご参照ください。
バケットの設定:Flink ワークスペースと同じリージョンに専用のバケットを作成します。データの競合を避けるため、デフォルトのシステムバケットを再利用しないでください。
アクセス権限
AccessKey ペアに、ご利用の OSS バケットまたは DLF ディレクトリに対する読み取りおよび書き込み権限があることを確認してください。フォーマットの互換性
Paimon カタログは Paimon フォーマットのデータのみをサポートします。Lance や Iceberg などの他のデータレイクフォーマットはサポートされていません。
コンソールの更新
カタログ、データベース、またはテーブルを作成または削除した後、更新
ボタンをクリックしてコンソールビューを更新します。
Paimon バージョンのマッピング
Apache Paimon バージョン
VVR バージョン
1.3
11.4
1.2
11.2、11.3
1.1
11
1.0
8.0.11
0.9
8.0.7, 8.0.8, 8.0.9, and 8.0.10
0.8
8.0.6
0.7
8.0.5
0.6
8.0.4
0.6
8.0.3
カタログの作成
Paimon カタログは、さまざまなメタストアタイプを使用してメタデータを管理します。シナリオに最も適したタイプを選択してください。
ファイルシステムカタログ:メタデータを OSS に保存します。単純なデプロイメントに最適です。
DLF カタログ:メタデータを DLF に保存します。統合されたメタデータ管理を必要とするエンタープライズシナリオに最適です。
ファイルシステムカタログの作成
方法 1:コンソールを使用 (推奨)
[カタログ] ページに移動します。
管理ポータルにログインします。対象のワークスペースを見つけ、[操作] 列の [コンソール] をクリックします。
左側のナビゲーションウィンドウで、[カタログ] をクリックします。
[カタログの作成] をクリックし、[Apache Paimon] を選択して、[次へ] をクリックします。
metastoreをfilesystemに設定し、他のカタログ設定を構成します。
方法 2:SQL を使用
[開発] > [スクリプト] の SQL エディターで次のコマンドを実行します。
CREATE CATALOG `my-catalog` WITH (
'type' = 'paimon',
'metastore' = 'filesystem',
'warehouse' = '<warehouse>',
'fs.oss.endpoint' = '<fs.oss.endpoint>',
'fs.oss.accessKeyId' = '<fs.oss.accessKeyId>',
'fs.oss.accessKeySecret' = '<fs.oss.accessKeySecret>'
);一般パラメーター
設定項目
説明
必須
備考
my-catalogPaimon カタログの名前。
はい
カスタム名を入力します。
typeカタログのタイプ。
はい
paimonに設定します。metastoreメタストアのタイプ。
はい
有効な値:
filesystem:メタデータを OSS に保存します。dlf:メタデータを DLF に保存します。
OSS パラメーター
設定項目
説明
必須
備考
warehouse
OSS 内のデータウェアハウスディレクトリ。
はい
フォーマットは
oss://<bucket>/<object>です。各項目は次のとおりです。bucket:ご利用の OSS バケットの名前。object:データが保存されているパス。
OSS コンソールでバケットとオブジェクト名を表示します。
fs.oss.endpoint
OSS サービスのエンドポイント。
はい
Flink と DLF が同じリージョンにある場合は、VPC エンドポイントを使用します。それ以外の場合は、パブリックネットワークエンドポイントを使用します。
warehouse に指定された OSS バケットが Flink ワークスペースと同じリージョンにない場合、または別の Alibaba Cloud アカウントに属する OSS バケットを使用する場合は、このパラメーターが必要です。
詳細については、「リージョンとエンドポイント」および「AccessKey の作成」をご参照ください。
fs.oss.accessKeyId
OSS に対する読み取りおよび書き込み権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID。
はい
fs.oss.accessKeySecret
OSS に対する読み取りおよび書き込み権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey Secret。
はい
DLF カタログの作成
DLF
DLF コンソールに移動し、Flink ワークスペースと同じリージョンにカタログを作成します。詳細については、「DLF のクイックスタート」をご参照ください。
開発コンソールで Paimon カタログを登録します。
説明この操作は DLF カタログへのマッピングを確立するだけです。Flink でこのカタログマッピングを作成または削除しても、DLF 内の実際のデータには影響しません。
対象のワークスペースの名前をクリックします。
UI または SQL コマンドを使用してカタログを登録します。
UI
左側のナビゲーションウィンドウで、[カタログ] をクリックします。
[カタログ] ページで、[カタログの作成] をクリックします。
[Apache Paimon] を選択し、[次へ] をクリックします。
[metastore] を [DLF] に設定し、[カタログ名] フィールドで関連付ける DLF カタログを選択して、[OK] をクリックします。カタログが Flink に登録されます。
SQL
の 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
uriDLF REST Catalog Server へのアクセスに使用される URI。フォーマットは
http://[region-id]-vpc.dlf.aliyuncs.comです。リージョン ID の詳細については、「エンドポイント」をご参照ください。はい
http://cn-hangzhou-vpc.dlf.aliyuncs.com
warehouseDLF カタログの名前。
はい
dlf_test
DLF-Legacy
DLF コンソールに移動し、Flink ワークスペースと同じリージョンにカタログを作成します。詳細については、「スタートガイド」をご参照ください。
開発コンソールで Paimon カタログを登録します。
方法 1:コンソールを使用 (推奨)
[カタログ] ページに移動します。
管理ポータルにログインし、対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
[カタログ] をクリックします。
[カタログの作成] をクリックします。[Apache Paimon] を選択し、[次へ] をクリックします。
[metastore] を [DLF] に設定し、[カタログ名] ドロップダウンリストから関連付ける V1.0 DLF カタログを選択します。その後、他のカタログ設定を構成します。
方法 2:SQL を使用
[開発] > [スクリプト] の SQL エディターで次のコマンドを実行します。
CREATE CATALOG `my-catalog` WITH ( 'type' = 'paimon', 'metastore' = 'dlf', 'warehouse' = '<warehouse>', 'dlf.catalog.id' = '<dlf.catalog.id>', 'dlf.catalog.accessKeyId' = '<dlf.catalog.accessKeyId>', 'dlf.catalog.accessKeySecret' = '<dlf.catalog.accessKeySecret>', 'dlf.catalog.endpoint' = '<dlf.catalog.endpoint>', 'dlf.catalog.region' = '<dlf.catalog.region>', 'fs.oss.endpoint' = '<fs.oss.endpoint>', 'fs.oss.accessKeyId' = '<fs.oss.accessKeyId>', 'fs.oss.accessKeySecret' = '<fs.oss.accessKeySecret>' );次の表にパラメーターを示します。
一般
設定項目
説明
必須
備考
my-catalog
Paimon カタログの名前。
はい
カスタム名を入力します。
type
カタログのタイプ。
はい
値は
paimonに固定されます。metastore
メタストアのタイプ。
はい
値は
dlfに固定されます。OSS
設定項目
説明
必須
備考
warehouse
OSS 内のデータウェアハウスディレクトリ。
はい
フォーマットは
oss://<bucket>/<object>です。各項目は次のとおりです。bucket:ご利用の OSS バケットの名前。object:データが保存されているパス。
OSS コンソールでバケットとオブジェクト名を表示します。
fs.oss.endpoint
OSS サービスのエンドポイント。
はい
Flink と DLF が同じリージョンにある場合は、VPC エンドポイントを使用します。それ以外の場合は、パブリックネットワークエンドポイントを使用します。
Paimon テーブルを OSS-HDFS に保存する場合は、
fs.oss.endpointパラメーターの値をcn-<region>.oss-dls.aliyuncs.comに設定します。例:cn-hangzhou.oss-dls.aliyuncs.com。
fs.oss.accessKeyId
OSS に対する読み取りおよび書き込み権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID。
はい
詳細については、「リージョンとエンドポイント」および「AccessKey ペアの作成」をご参照ください。
fs.oss.accessKeySecret
OSS に対する読み取りおよび書き込み権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey Secret。
はい
DLF
設定項目
説明
必須
備考
dlf.catalog.id
DLF データカタログの ID。
はい
Data Lake Formation コンソールでデータカタログの ID を表示します。
dlf.catalog.accessKeyId
DLF サービスへのアクセスに必要な AccessKey ID。
はい
詳細については、「AccessKey ペアの作成」をご参照ください。
dlf.catalog.accessKeySecret
DLF サービスへのアクセスに必要な AccessKey Secret。
はい
詳細については、「AccessKey ペアの作成」をご参照ください。
dlf.catalog.endpoint
DLF サービスのエンドポイント。
はい
詳細については、「リージョンとエンドポイント」をご参照ください。
説明Flink と DLF が同じリージョンにある場合は、VPC エンドポイントを使用します。それ以外の場合は、パブリックネットワークエンドポイントを使用します。
dlf.catalog.region
DLF が配置されているリージョン。
はい
詳細については、「リージョンとエンドポイント」をご参照ください。
説明リージョンが dlf.catalog.endpoint に指定されたものと同じであることを確認してください。
データベースの管理
[開発] > [スクリプト] の SQL エディターで次のコマンドを実行します。
データベースの作成
Paimon カタログを登録すると、
defaultという名前のデータベースがカタログに自動的に作成されます。追加のデータベースを作成するには、次の SQL ステートメントを実行します。-- my-catalog をご利用の Paimon カタログの名前に置き換えます。 USE CATALOG `my-catalog`; -- my_db を英語のカスタムデータベース名に置き換えます。 CREATE DATABASE `my_db`;データベースの削除
重要defaultデータベースは DLF カタログからは削除できません。ただし、ファイルシステムカタログからは削除できます。-- my-catalog をご利用の Paimon カタログの名前に置き換えます。 USE CATALOG `my-catalog`; -- my_db を削除したいデータベースの名前に置き換えます。 DROP DATABASE `my_db`; -- テーブルが含まれていない場合にのみデータベースを削除します。 DROP DATABASE `my_db` CASCADE; -- データベースとそれに含まれるすべてのテーブルを削除します。
テーブルの管理
テーブルの作成
テーブルスキーマの変更
テーブルの削除
カタログの表示または削除
管理ポータルで、対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
[カタログ] ページで、Apache Paimon カタログを表示または削除します。
[カタログ] ページで、カタログ名とタイプを表示します。カタログ内のデータベースとテーブルを表示するには、[操作] 列の [表示] をクリックします。
[カタログ] ページで、削除するカタログの [操作] 列にある [削除] をクリックします。
説明Flink から Paimon カタログを削除すると、Flink 環境からその定義 (メタデータ) のみが削除されます。基になる Paimon テーブルのデータファイルは影響を受けません。その後、Flink でカタログを再登録して、それらの Paimon テーブルに再度アクセスできます。
または、[開発] > [スクリプト] の SQL エディターで
DROP CATALOG <catalog name>;と入力し、コードを選択して [実行] をクリックします。
