Gerenciar tabelas do catálogo REST do Lakehouse Iceberg

O Lakehouse para Apache Iceberg oferece suporte à criação, ao gerenciamento e à consulta de tabelas do catálogo REST do Lakehouse Iceberg armazenadas no Cloud Storage.

Gerenciadas pelo catálogo de ambientes de execução do Lakehouse, essas tabelas podem ser lidas pelo BigQuery e por mecanismos de código aberto conectados. As operações de gravação permanecem restritas ao mecanismo específico que criou a tabela originalmente.

Antes de começar

Consulte a visão geral da tabela para entender os diferentes tipos de tabelas e as implicações do uso delas.

Somente as tabelas do Apache Iceberg V2 (GA) e V3 (pré-lançamento) são compatíveis. As tabelas do Iceberg V1 não são compatíveis. Para fazer upgrade das tabelas V1 atuais, consulte Fazer upgrade das tabelas do Iceberg V1 para V2.

  1. Verifique se o faturamento está ativado para o Google Cloud projeto.

  2. 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ão serviceusage.services.enable. Saiba como conceder papéis.

    Ativar a API

Funções exigidas

Para ter as permissões necessárias para gerenciar tabelas do catálogo REST do Lakehouse Iceberg, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto e no bucket de armazenamento:

  • Criar e excluir tabelas:
    • Administrador do BigLake (roles/biglake.admin) - o projeto
    • Administrador do Storage (roles/storage.admin) - o bucket do Cloud Storage
  • Ler dados da tabela no modo de venda de credenciais: Leitor do BigLake (roles/biglake.viewer) - o projeto
  • Gravar dados da tabela no modo de venda de credenciais: Editor do BigLake (roles/biglake.editor) - o projeto
  • Ler dados da tabela no modo de venda de não credenciais:
    • Leitor do BigLake (roles/biglake.viewer) - o projeto
    • Leitor de objetos do Storage (roles/storage.objectViewer) - o bucket do Cloud Storage
  • Gravar dados da tabela no modo de venda de não credenciais:
    • Editor do BigLake (roles/biglake.editor) - o projeto
    • Usuário de objetos do Storage (roles/storage.objectUser) - o bucket do Cloud Storage

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 personalizados papéis ou outros predefinidos papéis.

Ações de gerenciamento

É possível realizar as seguintes ações de gerenciamento nas tabelas do catálogo REST do Lakehouse Iceberg:

  • Criar uma tabela: crie uma tabela do Apache Iceberg em um namespace do catálogo usando o Google Cloud console, o Spark, o Trino ou a API REST do catálogo do Iceberg (CreateIcebergTable).
  • Listar tabelas: visualize identificadores de tabelas em um namespace usando o Google Cloud console, o Spark, o Trino ou a API REST do catálogo do Iceberg (ListIcebergTableIdentifiers).
  • Receber detalhes da tabela: inspecione o esquema, as propriedades e as credenciais da tabela usando o Google Cloud console, o Spark, o Trino ou a API REST do catálogo do Iceberg (GetIcebergTable, LoadIcebergTableCredentials).
  • Inserir dados: anexe linhas de dados às tabelas do Iceberg usando o Spark ou o Trino.
  • Consultar uma tabela: execute consultas nas tabelas do Iceberg no Spark, no Trino ou no BigQuery usando a nomenclatura de tabela de quatro partes.
  • Alterar uma tabela: evolua o esquema da tabela e atualize as propriedades de metadados usando o Google Cloud console, o Spark, o Trino ou a API REST do catálogo do Iceberg (UpdateIcebergTable).
  • Excluir uma tabela: remova um registro de tabela do catálogo sem limpar os arquivos de armazenamento subjacentes usando o Google Cloud console, o Spark, o Trino ou a API REST do catálogo do Iceberg (DeleteIcebergTable).

A seguir