カタログの更新

カタログ(Apache Iceberg REST カタログなど)を更新すると、認証情報モード、デフォルトのウェアハウスの場所、基盤となるカタログタイプなどのプロパティを変更できます。たとえば、従来の Cloud Storage バケット カタログ(gs:// カタログ)を BigLake カタログ(bl:// カタログ)にアップグレードできます。

始める前に

  1. プロジェクト Google Cloud に対して課金が有効になっていることを確認します

  2. BigLake API を有効にします。

    API を有効にするために必要なロール

    API を有効にするには、serviceusage.services.enable 権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。詳しくは、ロールを付与する方法をご覧ください。

    API の有効化

必要なロール

カタログの更新に必要な権限を取得するには、 次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。

カタログの更新

カタログの構成を更新できます。たとえば、説明、認証情報モード、許可されるロケーションを変更できます。

また、既存の Cloud Storage バケット カタログ(従来の gs:// カタログ)を BigLake カタログ(bl:// カタログ)にアップグレード することもできます。アップグレードされたカタログは、元のバケットの名前を保持します。アップグレード後、複数のバケットを関連付けて、制限付きのロケーションを構成できます。

カタログは、 Google Cloud コンソール、gcloudまたは REST API を使用して更新できます。

コンソール

  1. コンソールで、[Lakehouse] ページを開きます。 Google Cloud

    [Lakehouse] に移動

  2. 更新するカタログの行で、 [その他のカタログ操作 > 編集] をクリックします。

  3. [カタログ構成] で、更新する設定を変更します。

  4. [保存] を選択します。

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。