Iceberg カタログを設定すると、Realtime Compute for Apache Flink を使用して Alibaba Cloud Data Lake Formation (DLF) の Iceberg テーブルに直接アクセスできます。このトピックでは、Iceberg カタログの作成、表示、削除方法、および開発コンソールで Iceberg データベースとテーブルを管理する方法について説明します。
注意事項
Ververica Runtime (VVR) 11.1 以降のバージョンのみが、Iceberg カタログと Iceberg テーブルの作成と設定をサポートします。
DLF カタログのみがサポートされています。
Iceberg DLF カタログの作成
DLF でカタログを作成します。詳細については、「DLF クイックスタート」をご参照ください。
DLF カタログは Flink ワークスペースと同じリージョンにある必要があります。そうでない場合、後続のステップでそれらを関連付けることはできません。
Realtime Compute for Apache Flink の開発コンソールで Iceberg カタログを作成します。
説明この操作は、ご利用の DLF カタログへのマッピングを作成します。Flink でカタログを作成または削除しても、DLF 内の実際のデータには影響しません。
Iceberg REST 経由で DLF カタログに作成されたすべてのテーブルはIceberg テーブルです。
ご利用のワークスペースの [操作] 列で、[コンソール] をクリックします。
左側のナビゲーションメニューで、 をクリックします。
新しいスクリプトを作成します。SQL エディターで、次の SQL 文をコピーして貼り付けます。右下隅にある [環境] をクリックし、VVR 11.2.0 以降のセッションクラスターを選択し、SQL 文を実行して Iceberg REST 経由で DLF カタログを登録します。
CREATE CATALOG `catalog_name` WITH ( 'type' = 'iceberg', 'catalog-type' = 'rest', 'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com/iceberg', 'warehouse' = 'iceberg_test', 'rest.signing-region' = 'cn-hangzhou', 'io-impl' = 'org.apache.iceberg.rest.DlfFileIO' );次の表にオプションを説明します。
オプション
説明
必須
例
type
タイプ。これを
icebergに設定します。はい
iceberg
catalog-type
カタログタイプ。これを
restに設定します。はい
rest
token.provider
トークンプロバイダー。これを dlf に設定します。
はい
dlf
uri
Iceberg REST 経由で DLF カタログにアクセスするために使用される URI。詳細については、「Iceberg REST」をご参照ください。
はい
http://ap-southeast-1-vpc.dlf.aliyuncs.com/iceberg
warehouse
ご利用の DLF カタログの名前。
はい
iceberg_test
rest.signing-region
DLF のリージョン ID。詳細については、「エンドポイント」をご参照ください。
はい
ap-southeast-1
io-impl
これを
org.apache.iceberg.rest.DlfFileIOに設定します。はい
org.apache.iceberg.rest.DlfFileIO
Iceberg データベースの管理
[データクエリ] ページで、テキストエディターに次のコマンドを入力し、コードを選択して [実行] をクリックします。
データベースの作成
Iceberg カタログを作成すると、
defaultという名前のデータベースがカタログ内に自動的に作成されます。-- my-catalog をご利用のカタログ名に置き換えます。 USE CATALOG `my-catalog`; -- my_db をカスタムデータベース名に置き換えます。 CREATE DATABASE `my_db`;データベースの削除
重要DLF カタログからデフォルトのデータベースを削除することはできません。
-- my-catalog をご利用のカタログ名に置き換えます。 USE CATALOG `my-catalog`; -- my_db を削除したいデータベースの名前に置き換えます。 DROP DATABASE `my_db`; -- テーブルが含まれていない場合にのみデータベースを削除します。 DROP DATABASE `my_db` CASCADE; -- データベースとその中のすべてのテーブルを削除します。
Iceberg テーブルの管理
テーブルの作成
テーブルスキーマの変更
テーブルの削除
Iceberg カタログの表示または削除
Realtime Compute for Apache Flink コンソールで、対象のワークスペースの [操作] 列にある [コンソール] をクリックします。
[データ管理] ページで、Iceberg カタログを表示または削除できます。
[カタログリスト] ページでは、[カタログ名] と [タイプ] を表示できます。カタログ内のデータベースとテーブルを表示するには、[表示] をクリックします。
削除: [カタログリスト] ページで、削除したいカタログを見つけ、[操作] 列の [削除] をクリックします。
説明Iceberg カタログを削除すると、Flink プロジェクトのデータ管理からレコードが削除されるだけです。Iceberg テーブルのデータファイルには影響しません。カタログを削除した後、Iceberg カタログを再度作成することで、その中の Iceberg テーブルを再利用できます。
または、[データクエリ] ページのテキストエディターに
DROP CATALOG <catalog name>;と入力し、コードを選択して [実行] をクリックすることもできます。