既存のバージョン 1(V1)の Apache Iceberg テーブルがある場合は、Apache Iceberg REST カタログのエンドポイントで使用する前に、クエリエンジンを使用してアップグレードする必要があります。詳細については、テーブルを変更するをご覧ください。
始める前に
-
BigLake API を有効にします。
API を有効にするために必要なロール
API を有効にするには、
serviceusage.services.enable権限が必要です。プロジェクトを作成した場合は、オーナーロール(roles/owner)を介してこの権限がすでに付与されている可能性があります。それ以外の場合は、Service Usage 管理者ロール(roles/serviceusage.serviceUsageAdmin)を介してこの権限を取得できます。ロールを付与する方法をご覧ください。 - Apache Iceberg REST カタログのエンドポイントを使用して、Lakehouse ランタイム カタログを設定します。
必要なロール
テーブルのアップグレードに必要な権限を取得するには、プロジェクトとストレージ バケットに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
認証情報ベンディング モードでテーブルをアップグレードする:
BigLake 編集者(
roles/biglake.editor) - プロジェクト -
認証情報ベンディング モード以外でテーブルをアップグレードする:
- BigLake 編集者(
roles/biglake.editor) - プロジェクト - ストレージ オブジェクト ユーザー(
roles/storage.objectUser) - Cloud Storage バケット
- BigLake 編集者(
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。
テーブルをアップグレードする
Iceberg V1 テーブルを V2 にアップグレードするには、クエリエンジンで次のコマンドを実行します。
Spark
ALTER TABLE CATALOG_NAME.SCHEMA_NAME.TABLE_NAME SET TBLPROPERTIES ('format-version'='2');
次のように置き換えます。
CATALOG_NAME: カタログの名前。SCHEMA_NAME: スキーマの名前。TABLE_NAME: テーブルの名前。
次のステップ
- テーブル オプションを構成する方法を学習する。
- テーブルを変更する方法を学習する。