Comparar tipos de tabelas

Escolher a arquitetura de tabela certa é fundamental para maximizar o desempenho, reduzir custos e garantir o acesso aos dados nas ferramentas de análise. Esta página explica os diferentes tipos de tabelas e endpoints de exibição disponíveis no Lakehouse para Apache Iceberg, ajudando você a escolher a melhor opção com base nos mecanismos de gravação, nos requisitos de leitura e nas necessidades de controle de gerenciamento.

Formatos de tabela por catálogo ou mecanismo

Selecione um catálogo ou mecanismo para saber mais sobre os formatos de tabela compatíveis, a configuração do metastore, os recursos de otimização de armazenamento e a interoperabilidade do mecanismo.

Catálogo de ambientes de execução do Lakehouse

O catálogo de ambientes de execução do Lakehouse gerencia tabelas do Apache Iceberg pelo endpoint do catálogo REST do Iceberg e oferece interoperabilidade de leitura/gravação contínua em mecanismos compatíveis com o Iceberg (Spark, Flink, Trino) e o BigQuery, com suporte da interface de catálogo REST do Iceberg padrão do setor.

Formatos de tabela compatíveis

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. Antes de usar tabelas V1 atuais com o Lakehouse para Apache Iceberg, faça upgrade delas para uma versão compatível. Para mais informações, consulte Fazer upgrade de tabelas do Iceberg V1 para V2.

Os principais recursos incluem:

  • Metastore: catálogo de ambientes de execução do Lakehouse.
  • Armazenamento: Cloud Storage.
  • Otimização de armazenamento: gerenciada por você ou, opcionalmente, pelo Google (pré-lançamento).
  • Acesso de leitura e gravação:
    • Mecanismos de código aberto: leitura e gravação (GA)
    • BigQuery: leitura/gravação (pré-lançamento)
  • Casos de uso: lakehouse aberto com armazenamento de alto desempenho e nível empresarial para análises avançadas, streaming e IA.

Metastore Hive

O catálogo de ambientes de execução do Lakehouse gerencia tabelas do Apache Hive por um endpoint do metastore do Apache Hive (HMS, na sigla em inglês) otimizado para a compatibilidade do ExternalCatalog do Apache Spark, permitindo que você compartilhe dados perfeitamente entre o Apache Spark, o Apache Hive e o BigQuery. Você cria essas tabelas em mecanismos de código aberto e as armazena no Cloud Storage. Essa opção é melhor se você quiser que o fluxo de trabalho de ETL seja gerenciado por mecanismos de código aberto sem precisar de um metastore Hive auto-hospedado separado e exigir apenas acesso de leitura do BigQuery.

As tabelas gerenciadas pelo endpoint do metastore Hive são tabelas padrão do Apache Hive e do Spark (usando SerDes do Hive ou fontes de dados do Spark), não tabelas do Apache Iceberg. Para criar e gerenciar tabelas do Apache Iceberg no catálogo de ambientes de execução do Lakehouse, use o endpoint do catálogo REST do Iceberg.

Os principais recursos incluem:

  • Metastore: catálogo de ambientes de execução do Lakehouse (pelo personalizadoIMetastoreClient).
  • Armazenamento: Cloud Storage (com suporte a formatos como Parquet, ORC e Avro).
  • Otimização de armazenamento: gerenciada por você ou por terceiros.
  • Acesso de leitura e gravação:
    • Mecanismos de código aberto (Spark e Hive): leitura e gravação.
    • BigQuery: somente leitura.
  • Casos de uso: migração de cargas de trabalho atuais do Spark e do Hive para um metastore sem servidor totalmente gerenciado no Google Cloud.

BigQuery

O BigQuery oferece suporte a tabelas gerenciadas do Apache Iceberg, tabelas nativas e tabelas externas.

  • Tabelas gerenciadas do Apache Iceberg: são tabelas do Apache Iceberg que você cria e gerencia no BigQuery e armazena no Cloud Storage. Embora possam ser lidas por mecanismos de código aberto, o BigQuery é o mecanismo que gerencia os metadados e grava neles. Essa opção é melhor se você quiser que o fluxo de trabalho seja totalmente gerenciado pelo BigQuery.

  • Tabelas nativas: são tabelas nativas do BigQuery. Elas são totalmente gerenciadas e oferecem os recursos de análise e gerenciamento mais avançados. Essa opção é melhor para cargas de trabalho não Iceberg.

  • Tabelas externas: são construções específicas do BigQuery para dados armazenados no Cloud Storage, no Amazon S3 ou no Azure Armazenamento de Blobs. Os dados e metadados são autogerenciados, e o BigQuery tem apenas acesso de leitura. Escolha essa opção para dados que você quer gerenciar diretamente em um catálogo ou armazenamento de terceiros.

Formatos de tabela por produto

Use o gráfico a seguir para comparar tipos de tabelas entre o catálogo de ambientes de execução do Lakehouse e o BigQuery.

Lakehouse

Apache Iceberg (GA) Lakehouse sem bordas (pré-lançamento) Apache Hive (pré-lançamento)
Metastore Catálogo de ambientes de execução do Lakehouse Catálogo de ambientes de execução do Lakehouse Catálogo de ambientes de execução do Lakehouse
Armazenamento Cloud Storage Cloud Storage / Amazon S3 Cloud Storage
Otimização de armazenamento Gerenciado pelo cliente, por terceiros ou pelo Google (pré-lançamento) Gerenciado pelo cliente ou por terceiros Gerenciado pelo cliente ou por terceiros
Leitura/gravação Mecanismos de código aberto (leitura/gravação)

BigQuery (leitura/gravação [pré-lançamento])
Mecanismos de código aberto (leitura)

BigQuery (leitura)
Mecanismos de código aberto (leitura/gravação)

BigQuery (somente leitura)
Operações avançadas Nenhum Nenhum Nenhum
Controle de acesso Segurança no nível da tabela com o IAM Segurança no nível da tabela com o IAM Segurança no nível da tabela com o IAM
Casos de uso Lakehouse aberto Consulte dados em outros provedores de nuvem sem migrar arquivos ou criar pipelines de ETL complexos. Migre cargas de trabalho atuais do Spark e do Hive para um metastore sem servidor totalmente gerenciado,

BigQuery

Tabelas gerenciadas do Apache Iceberg Tabelas externas do Apache Iceberg Tabelas padrão
Metastore BigQuery Metastore externo ou auto-hospedado BigQuery
Armazenamento Cloud Storage Cloud Storage / Amazon S3 / Azure BigQuery
Otimização de armazenamento Gerenciada pelo Google Gerenciado pelo cliente ou por terceiros Gerenciada pelo Google
Leitura/gravação Mecanismos de código aberto (somente leitura com bibliotecas do Iceberg interoperabilidade de leitura/gravação com a API BigQuery Storage)

BigQuery (leitura/gravação)

Mecanismos de código aberto (leitura/gravação)

BigQuery (somente leitura)
Mecanismos de código aberto (interoperabilidade de leitura/gravação com API BigQuery Storage)

BigQuery (leitura/gravação)

Operações avançadas Streaming de alta capacidade com a API BigQuery Storage Write (gRPC), Change Data Capture (CDC) e transações de várias instruções Nenhum Streaming de alta capacidade com a API BigQuery Storage Write (gRPC), Change Data Capture (CDC) e transações de várias instruções
Controle de acesso Segurança no nível da tabela com o IAM, segurança no nível da coluna e máscara de dados Segurança no nível da tabela com o IAM, segurança no nível da coluna, segurança no nível da linha segurança e máscara de dados Segurança no nível da tabela com o IAM, segurança no nível da coluna, segurança no nível da linha segurança e máscara de dados
Casos de uso Lakehouse aberto com armazenamento de alto desempenho e nível empresarial para análises avançadas, streaming e IA Tabelas de preparação para cargas do BigQuery, tabelas legadas somente de consulta tabelas Armazenamento de nível empresarial para análises avançadas, streaming e IA

A seguir