既存のバージョン 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: テーブルの名前。
次のステップ
- テーブル オプションを構成する方法を学習する。
- テーブルを変更する方法を学習する。