A criação de um catálogo (como um catálogo REST do Apache Iceberg ou do Apache Hive) estabelece um endpoint de gerenciamento no catálogo de ambientes de execução do Lakehouse. Esse endpoint aponta para um bucket de data warehouse do Cloud Storage, fornecendo uma camada de metadados que permite que mecanismos de consulta e cargas de trabalho de código aberto interajam diretamente com suas tabelas.
Ao criar seu catálogo para o Lakehouse para Apache Iceberg, você pode escolher entre credenciais do usuário final ou modo de venda de credenciais para delegação de acesso ao armazenamento.
Antes de começar
-
Verifique se o faturamento está ativado para o projeto do Google Cloud .
-
Ative a API BigLake.
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (
roles/serviceusage.serviceUsageAdmin), que contém a permissãoserviceusage.services.enable. Saiba como conceder papéis.
Funções exigidas
Para receber as permissões necessárias para criar 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 (
-
Conta de serviço do catálogo do ambiente de execução do Lakehouse provisionada automaticamente no modo de venda de credenciais:
Usuário de objetos do Storage (
roles/storage.objectUser) no bucket de destino do Cloud Storage. Depois de criar o catálogo, conceda explicitamente a função de usuário de objetos do Storage (roles/storage.objectUser) no bucket de armazenamento à conta de serviço do catálogo de tempo de execução do Lakehouse provisionada automaticamente.
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.
Criar um catálogo
Crie um endpoint de catálogo.
Console
No console do Google Cloud , abra a página Lakehouse.
Selecione Criar catálogo. A página Criar catálogo é aberta.
Selecione o tipo de catálogo:
- Para criar um catálogo REST do Apache Iceberg, selecione Catálogo REST do Iceberg.
- Para criar um catálogo do Apache Hive, selecione Catálogo do Hive.
Em Selecionar um bucket do Cloud Storage, insira o nome do bucket que será usado com seu catálogo. Ou selecione Procurar para escolher em uma lista de buckets ou criar um. Só é possível ter um catálogo por bucket do Cloud Storage.
Em Método de autenticação, selecione Credenciais de usuário final ou Modo de venda de credenciais.
Se você selecionar Modo de venda de credenciais, a conta de serviço do catálogo de tempo de execução do Lakehouse provisionada automaticamente vai exigir o papel explícito de Usuário de objetos do Storage (
roles/storage.objectUser) no bucket de destino do Cloud Storage. Por padrão, ele é criado com acesso somente para leitores. Sem essa função, as credenciais vendidas não têm escopo suficiente para realizar gravações de armazenamento.Selecione Criar.
Seu catálogo é criado e a página Detalhes do catálogo é aberta.
Em Método de autenticação, selecione Definir permissões do bucket.
Na caixa de diálogo, selecione Confirmar.
Isso verifica se a conta de serviço do catálogo tem o papel de administrador de objetos do Storage no bucket de armazenamento. Se você criar catálogos usando
gcloudou o Terraform, conceda essa função manualmente.
REST
Para criar um endpoint de gerenciamento de catálogo usando a API REST, faça uma solicitação POST
para o endpoint CreateIcebergCatalog:
POST /iceberg/v1/restcatalog/extensions/projects/PROJECT_ID/catalogs?icebergCatalogId=CATALOG_ID
O corpo da solicitação precisa conter um payload JSON IcebergCatalog que define a configuração do catálogo, como o data warehouse do bucket do Cloud Storage e o modo de autenticação.
Substitua:
PROJECT_ID: o ID do projeto Google Cloud .CATALOG_ID: o ID do catálogo do ambiente de execução do Lakehouse.