Conceitos do catálogo REST do Apache Iceberg

Este documento apresenta uma visão geral do catálogo REST do Apache Iceberg do metastore do BigLake, incluindo a hierarquia de recursos e os tipos de catálogo compatíveis.

O catálogo REST do Apache Iceberg no metastore do BigLake usa uma hierarquia de recursos para organizar seus dados. A tabela a seguir oferece uma visão geral desses recursos:

Hierarquia de recursos

Recurso Descrição
Catálogo O contêiner de nível superior, um catálogo, permite organizar namespaces e tabelas em grupos lógicos dividindo-os em diferentes catálogos.
Namespace Um agrupamento lógico usado para organizar tabelas em um catálogo. Ele funciona como bancos de dados, esquemas ou diretórios.
Tabela As tabelas contêm definições de linhas e colunas que podem ser consultadas.

Tipos de catálogo aceitos

Ao configurar o cliente, você especifica um local do depósito. Essa escolha determina como seu catálogo opera e se integra a outros serviços do Google Cloud. A tabela a seguir descreve os tipos de catálogo compatíveis:

Tipo de catálogo Descrição
Bucket do Cloud Storage Todos os dados de um catálogo são armazenados em um único bucket do Cloud Storage. Para dados compartilhados em vários buckets, são necessários vários catálogos.
Federação do BigQuery Permite usar o catálogo REST do Iceberg para gerenciar e consultar tabelas visíveis para o BigQuery. Para mais informações, consulte Federação de catálogos com o BigQuery.

Detalhes do warehouse do catálogo

Recomendado

  • Data warehouse de bucket do Cloud Storage (gs://): essa é a abordagem padrão em que o catálogo gerencia diretamente os metadados e arquivos de dados do Iceberg em um bucket do Cloud Storage especificado por você. Essa opção oferece controle direto sobre o layout dos dados e é compatível com a venda de credenciais para controle de acesso refinado. Isso permite criar e gerenciar tabelas do BigLake para Apache Iceberg.

    Por exemplo, se você criou um bucket para armazenar seu catálogo e o nomeou como iceberg-bucket, tanto o nome do catálogo quanto o do bucket serão iceberg-bucket. Isso será usado mais tarde ao consultar seu catálogo no BigQuery usando a sintaxe P.C.N.T. Por exemplo: my-project.biglake-catalog-id.quickstart_namespace.quickstart_table

Alternativa

  • Federação do BigQuery (bq://): essa abordagem permite usar o catálogo REST do Iceberg para gerenciar e consultar tabelas visíveis para o BigQuery, sem precisar criar um recurso de catálogo. Para mais informações, consulte Federação de catálogos com o BigQuery.

Estrutura de nomenclatura P.C.N.T.

Ao consultar tabelas do metastore do BigLake no BigQuery, você usa uma estrutura de nomenclatura de quatro partes, geralmente chamada de P.C.N.T:

  • Projeto: o ID do projeto Google Cloud que é proprietário do catálogo.
  • Catálogo: o nome do catálogo do BigLake Metastore.
  • Namespace: o namespace do Iceberg (equivalente a um conjunto de dados do BigQuery).
  • Tabela: o nome da tabela.

Por exemplo, my-project.biglake-catalog-id.my-namespace.my-table

Federação de catálogos com o BigQuery

É possível usar a interface do catálogo REST do Iceberg para gerenciar e consultar tabelas visíveis para o BigQuery. Os catálogos de federação do BigQuery não exigem a criação de um recurso de catálogo. Eles podem ser usados em qualquer projeto que tenha a API BigQuery ativada. Isso permite que você:

Como esses recursos são gerenciados pelo BigQuery, você precisa ter as permissões necessárias aplicáveis. A venda de credenciais não é compatível com catálogos federados.

Para ativar a federação, configure seu cliente com o formato de data warehouse bq://projects/PROJECT_ID no campo WAREHOUSE_PATH nos exemplos de configuração do cliente em Usar o catálogo REST do Iceberg. Também é possível incluir um local do BigQuery para restringir solicitações futuras a um único local usando o formato bq://projects/PROJECT_ID/locations/LOCATION.