Ao atualizar um catálogo (como um catálogo REST do Apache Iceberg), é possível modificar as propriedades dele, como modo de credencial, local padrão do data warehouse ou tipo de catálogo subjacente.
Por exemplo, é possível fazer upgrade de um catálogo de um único bucket (gs://) para um tipo de catálogo de vários buckets (bl://), o que é recomendado. A atualização do catálogo oferece benefícios significativos, como permitir que ele abranja vários buckets de armazenamento.
Antes de começar
- Leia Sobre o catálogo de ambientes de execução do Lakehouse para entender como ele funciona e as limitações do serviço.
- 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.
Funções exigidas
Para receber as permissões necessárias para atualizar um catálogo, peça ao administrador que conceda a você os seguintes papéis do IAM:
-
Todos:
- Administrador do BigLake (
roles/biglake.admin) no projeto - Administrador do Storage (
roles/storage.admin) no projeto
- Administrador do BigLake (
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Atualizar um catálogo
É possível atualizar um catálogo usando o console do Google Cloud , o gcloud ou a
API REST.
Console
No console do Google Cloud , abra a página Lakehouse.
Na linha do catálogo que você quer atualizar, clique em Mais ações do catálogo > Editar.
Em Configuração do catálogo, modifique as configurações que você quer atualizar.
Selecione Salvar.
gcloud
Opção 1: atualizar as propriedades do catálogo
Para atualizar as propriedades do catálogo (como descrição ou locais restritos),
execute o comando 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"]
Substitua:
CATALOG_ID: o ID do catálogo do ambiente de execução do Lakehouse.PROJECT_ID: o ID do projeto Google Cloud .DESCRIPTION: (opcional) uma descrição do catálogo.CREDENTIAL_MODE: (opcional) o método de autenticação. Useend-userpara Credenciais do usuário final ouvended-credentialspara Modo de venda de credenciais.RESTRICTED_LOCATIONS: (opcional) uma lista separada por vírgulas de outros buckets ou caminhos de armazenamento permitidos. Atenção: se você especificar vários caminhos ou intervalos sobrepostos, isso poderá causar conflitos de metadados, substituições acidentais de dados ou problemas de segurança, como vazamento de permissões.
Opção 2: fazer upgrade de um catálogo de um único bucket (gs://) para um catálogo de vários buckets (bl://) (recomendado)
Para fazer upgrade de um catálogo de bucket único (gs://) para um
catálogo de vários buckets (bl://), que é o recomendado, execute o comando gcloud beta biglake iceberg catalogs update
e defina o parâmetro --catalog-type como biglake:
gcloud beta biglake iceberg catalogs update CATALOG_ID \ --project="PROJECT_ID" \ --catalog-type="biglake"
REST
Opção 1: atualizar as propriedades do catálogo
Para modificar as propriedades de um catálogo (como a descrição) usando a API REST, faça uma solicitação PATCH para o endpoint UpdateIcebergCatalog com o updateMask adequado:
PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.description
O corpo da solicitação precisa conter um payload JSON IcebergCatalog com os campos a serem atualizados:
{
"description": "Updated catalog description"
}
Opção 2: fazer upgrade de um catálogo de um único bucket (gs://) para um catálogo de vários buckets (bl://) (recomendado)
Para fazer upgrade do tipo usando a API REST, faça uma solicitação PATCH
para o endpoint UpdateIcebergCatalog com o catalogType no updateMask:
PATCH /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs/CATALOG_ID?updateMask=icebergCatalog.catalogType
O corpo da solicitação precisa conter um payload JSON IcebergCatalog com o novo tipo de catálogo:
{
"catalogType": "BIGLAKE"
}
Substitua:
PROJECT_ID: o ID do projeto Google Cloud .CATALOG_ID: o ID do catálogo do ambiente de execução do Lakehouse.