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. Além das integrações do mecanismo de consulta, o catálogo de ambientes de execução do Lakehouse implementa a especificação da API REST do catálogo do Iceberg de código aberto, permitindo que clientes REST compatíveis interajam diretamente com os recursos da tabela.

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.

  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 fornecimento de credenciais: Leitor do BigLake (roles/biglake.viewer) – o projeto
  • Gravar dados da tabela no modo de fornecimento de credenciais: Editor do BigLake (roles/biglake.editor) – o projeto
  • Ler dados da tabela no modo de fornecimento 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 fornecimento 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 de 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