La mise à jour d'un catalogue (tel qu'un catalogue REST Apache Iceberg) vous permet de modifier ses propriétés, telles que son mode d'authentification, l'emplacement de l'entrepôt par défaut ou son type de catalogue sous-jacent.
Par exemple, vous pouvez mettre à niveau un catalogue à un seul bucket (gs://) vers un type de catalogue à plusieurs buckets (bl://, recommandé). La mise à niveau de votre catalogue offre des avantages considérables, comme la possibilité de l'étendre sur plusieurs buckets de stockage.
Avant de commencer
- Consultez À propos du catalogue d'environnements d'exécution Lakehouse pour comprendre le fonctionnement du catalogue d'environnements d'exécution Lakehouse et les limites du service.
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles. - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM
role (roles/serviceusage.serviceUsageAdmin), which
contains the serviceusage.services.enable permission. Learn how to grant
roles.
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
Verify that billing is enabled for your Google Cloud project.
Enable the BigLake API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM
role (roles/serviceusage.serviceUsageAdmin), which
contains the serviceusage.services.enable permission. Learn how to grant
roles.
Rôles requis
Pour obtenir les autorisations nécessaires pour mettre à jour un catalogue, demandez à votre administrateur de vous accorder les rôles IAM suivants :
-
Toutes :
- Administrateur BigLake (
roles/biglake.admin) sur votre projet - Administrateur de l'espace de stockage (
roles/storage.admin) sur votre projet
- Administrateur BigLake (
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Mettre à jour un catalogue
Vous pouvez mettre à jour un catalogue à l'aide de la console Google Cloud , de gcloud ou de l'API REST.
Console
Dans la console Google Cloud , ouvrez la page Lakehouse.
Sur la ligne du catalogue que vous souhaitez mettre à jour, cliquez sur Autres actions sur le catalogue > Modifier.
Sous Configuration du catalogue, modifiez les paramètres que vous souhaitez mettre à jour.
Sélectionnez Enregistrer.
gcloud
Option 1 : Mettre à jour les propriétés du catalogue
Pour mettre à jour les propriétés du catalogue (comme la description ou les zones géographiques restreintes), exécutez la commande 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"]
Remplacez les éléments suivants :
CATALOG_ID: ID de votre catalogue d'exécution Lakehouse.PROJECT_ID: ID de votre projet Google Cloud .DESCRIPTION: (facultatif) description du catalogue.CREDENTIAL_MODE: (facultatif) méthode d'authentification. Utilisezend-userpour les identifiants de l'utilisateur final ouvended-credentialspour le mode de distribution d'identifiants.RESTRICTED_LOCATIONS: (facultatif) liste de chemins d'accès ou de buckets de stockage supplémentaires autorisés, séparés par une virgule. Attention : Si vous spécifiez plusieurs chemins d'accès ou buckets qui se chevauchent, cela peut entraîner des conflits de métadonnées, des écrasements de données accidentels ou des problèmes de sécurité tels que des fuites d'autorisations.
Option 2 : Mettre à niveau un catalogue à un seul bucket (gs://) vers un catalogue à plusieurs buckets (bl://) (recommandé)
Pour migrer un catalogue à un seul bucket (gs://) vers un catalogue à plusieurs buckets (bl://) (recommandé), exécutez la commande gcloud beta biglake iceberg catalogs update et définissez le paramètre --catalog-type sur biglake :
gcloud beta biglake iceberg catalogs update CATALOG_ID \ --project="PROJECT_ID" \ --catalog-type="biglake"
REST
Option 1 : Mettre à jour les propriétés du catalogue
Pour modifier les propriétés d'un catalogue (comme sa description) à l'aide de l'API REST, envoyez une requête PATCH au point de terminaison UpdateIcebergCatalog avec le updateMask approprié :
PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.description
Le corps de la requête doit contenir une charge utile JSON IcebergCatalog avec les champs à mettre à jour :
{
"description": "Updated catalog description"
}
Option 2 : Mettre à niveau un catalogue à un seul bucket (gs://) vers un catalogue à plusieurs buckets (bl://) (recommandé)
Pour mettre à niveau son type à l'aide de l'API REST, envoyez une requête PATCH au point de terminaison UpdateIcebergCatalog avec catalogType dans updateMask :
PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.catalogType
Le corps de la requête doit contenir une charge utile JSON IcebergCatalog avec le nouveau type de catalogue :
{
"catalogType": "BIGLAKE"
}
Remplacez les éléments suivants :
PROJECT_ID: ID de votre projet Google Cloud .CATALOG_ID: ID de votre catalogue d'exécution Lakehouse.