カタログ(Apache Iceberg REST カタログなど)を更新すると、認証情報モード、デフォルトのウェアハウスの場所、基盤となるカタログタイプなどのプロパティを変更できます。たとえば、従来の Cloud Storage バケット カタログ(gs:// カタログ)を BigLake カタログ(bl:// カタログ)にアップグレードできます。
始める前に
-
BigLake API を有効にします。
API を有効にするために必要なロール
API を有効にするには、
serviceusage.services.enable権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。詳しくは、ロールを付与する方法をご覧ください。
必要なロール
カタログの更新に必要な権限を取得するには、 次の IAM ロールを付与するよう管理者に依頼してください。
-
すべて:
- プロジェクトに対する BigLake 管理者 (
roles/biglake.admin) - ストレージ管理者 (
roles/storage.admin) プロジェクトに対する
- プロジェクトに対する BigLake 管理者 (
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。
カタログの更新
カタログの構成を更新できます。たとえば、説明、認証情報モード、許可されるロケーションを変更できます。
また、既存の Cloud Storage バケット カタログ(従来の gs:// カタログ)を BigLake カタログ(bl://
カタログ)にアップグレード することもできます。アップグレードされたカタログは、元のバケットの名前を保持します。アップグレード後、複数のバケットを関連付けて、制限付きのロケーションを構成できます。
カタログは、
Google Cloud コンソール、gcloudまたは REST API を使用して更新できます。
コンソール
コンソールで、[Lakehouse] ページを開きます。 Google Cloud
更新するカタログの行で、 [その他のカタログ操作 > 編集] をクリックします。
[カタログ構成] で、更新する設定を変更します。
[保存] を選択します。
gcloud
gcloud beta biglake iceberg catalogs update コマンドを使用します。
gcloud beta biglake iceberg catalogs update CATALOG_ID \ --project="PROJECT_ID" \ [--description="DESCRIPTION"] \ [--credential-mode="CREDENTIAL_MODE"] \ [--restricted-locations="RESTRICTED_LOCATIONS"] \ [--catalog-type=biglake]
次のように置き換えます。
CATALOG_ID: Lakehouse ランタイム カタログの ID。PROJECT_ID: 実際の Google Cloud プロジェクト ID。DESCRIPTION: (省略可)カタログの説明。CREDENTIAL_MODE: (省略可)認証方法。エンドユーザーの認証情報 にはend-user、認証情報ベンディング モード にはvended-credentialsを使用します。RESTRICTED_LOCATIONS: (省略可)追加で許可されるストレージ バケットまたはパスのカンマ区切りのリスト。
REST
REST API を使用してカタログを変更するか、そのタイプをアップグレードするには、適切な updateMask を使用して UpdateIcebergCatalog エンドポイントに PATCH リクエスト
を行います。
PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.catalogType,icebergCatalog.description
リクエストの本文には、更新するフィールドを含む IcebergCatalog JSON ペイロードを含める必要があります。
{
"catalogType": "BIGLAKE",
"description": "Updated catalog description"
}
次のように置き換えます。
PROJECT_ID: 実際の Google Cloud プロジェクト ID。CATALOG_ID: Lakehouse ランタイム カタログの ID。