Sobre o catálogo de tempo de execução do Lakehouse

O catálogo de tempo de execução do Lakehouse é um serviço sem servidor totalmente gerenciado que fornece uma única fonte confiável para seu data lakehouse. Ele permite que vários mecanismos, incluindo Apache Spark, Apache Flink e BigQuery, compartilhem tabelas e metadados sem copiar arquivos.

O catálogo de tempo de execução do Lakehouse oferece suporte à delegação de acesso ao armazenamento (venda de credenciais), o que melhora a segurança ao remover a necessidade de acesso direto ao bucket do Cloud Storage. Ele também se integra ao Knowledge Catalog para governança, linhagem e qualidade de dados unificadas.

Principais recursos

Como um componente do Google Cloud Lakehouse, o catálogo de tempo de execução do Lakehouse oferece várias vantagens para gerenciamento e análise de dados, incluindo uma arquitetura sem servidor, interoperabilidade do mecanismo com APIs abertas, uma experiência unificada do usuário e análises, streaming e IA de alta performance quando usado com o BigQuery. Para mais informações sobre esses benefícios, consulte O que é o Google Cloud Lakehouse?

Mecanismos compatíveis

O catálogo de ambiente de execução do Lakehouse é compatível com vários mecanismos de consulta, incluindo (mas não se limitando a) Apache Spark, Apache Flink e Trino. A tabela a seguir fornece links para a documentação de cada mecanismo:

Engine Documentação
Apache Spark Guia de início rápido: usar com o Spark
Apache Flink Usar com o Apache Flink
Trino Usar com o Trino

Opções de configuração

O catálogo do ambiente de execução do Lakehouse pode ser configurado de duas maneiras: com o endpoint do catálogo REST do Apache Iceberg ou com o endpoint do catálogo personalizado do Apache Iceberg para BigQuery. A melhor opção depende do seu caso de uso, conforme mostrado na tabela a seguir:

Caso de uso Recomendação
Novos usuários do catálogo de tempo de execução do Lakehouse que querem que o mecanismo de código aberto deles acesse dados no Cloud Storage e precisam de interoperabilidade com outros mecanismos, incluindo BigQuery e AlloyDB para PostgreSQL. Use o endpoint do catálogo REST do Apache Iceberg.
Usuários atuais do catálogo do ambiente de execução do Lakehouse que têm tabelas com o catálogo personalizado do Apache Iceberg para BigQuery. Continue usando o catálogo personalizado do Apache Iceberg para o endpoint do BigQuery, mas use o catálogo REST do Apache Iceberg para novos fluxos de trabalho. As tabelas criadas com o endpoint do catálogo personalizado do Apache Iceberg para BigQuery ficam visíveis com o catálogo REST do Apache Iceberg pela federação de catálogos do BigQuery.

Diferenças com o metastore do BigLake (clássico)

O catálogo de tempo de execução do Lakehouse é o metastore recomendado no Google Cloud, enquanto o metastore do BigLake (clássico) é considerado um recurso legado.

As principais diferenças entre o catálogo do ambiente de execução do Lakehouse e o metastore do BigLake (clássico) incluem o seguinte:

  • O catálogo de tempo de execução do Lakehouse oferece suporte a uma integração direta com mecanismos de código aberto, como o Spark, o que ajuda a reduzir a redundância ao armazenar metadados e executar jobs. As tabelas no catálogo de tempo de execução do Lakehouse são acessíveis diretamente de vários mecanismos de código aberto e do BigQuery.
  • O catálogo do ambiente de execução do Lakehouse é compatível com o endpoint do catálogo REST do Apache Iceberg, mas o metastore do BigLake (clássico) não é.

Limitações do catálogo de ambiente de execução do Lakehouse

As seguintes limitações se aplicam às tabelas no catálogo de tempo de execução do Lakehouse:

Gerenciamento de tabelas

  • Não é possível criar ou modificar tabelas de catálogo REST do Lakehouse Iceberg com instruções de linguagem de definição de dados (DDL) ou linguagem de manipulação de dados (DML) do BigQuery. É possível modificar tabelas do catálogo REST do Lakehouse Iceberg usando a API BigQuery (com a ferramenta de linha de comando bq ou bibliotecas de cliente), mas isso pode causar mudanças incompatíveis com o mecanismo externo.
  • As tabelas de catálogo de tempo de execução do lakehouse não são compatíveis com operações de renomeação nem com a instrução ALTER TABLE ... RENAME TO do Spark SQL.
  • As tabelas do catálogo de ambiente de execução do Lakehouse não são compatíveis com clustering.
  • As tabelas do catálogo de ambiente de execução do Lakehouse não são compatíveis com nomes de colunas flexíveis.
  • O catálogo do ambiente de execução do Lakehouse não é compatível com visualizações do Apache Iceberg.

Consulta

  • O desempenho da consulta para tabelas de catálogo de tempo de execução do Lakehouse no mecanismo do BigQuery pode ser lento em comparação com a consulta de dados em tabelas padrão do BigQuery. Em geral, a velocidade da consulta deve ser equivalente à leitura de dados do Cloud Storage.
  • Uma simulação do BigQuery de uma consulta que usa uma tabela de catálogo de tempo de execução do Lakehouse pode relatar um limite inferior de 0 bytes de dados, mesmo que as linhas sejam retornadas. Isso acontece porque a quantidade de dados processados da tabela não pode ser determinada até que a consulta completa seja executada. A execução da consulta gera um custo para processar esses dados.
  • Não é possível referenciar uma tabela do catálogo de ambiente de execução do Lakehouse em uma consulta de tabela curinga.

API e metadados

  • Não é possível usar o método tabledata.list para recuperar dados de tabelas de catálogo de tempo de execução do Lakehouse. Em vez disso, salve os resultados da consulta em uma tabela do BigQuery e use o método tabledata.list nessa tabela.
  • A exibição de estatísticas de armazenamento de tabelas do catálogo do ambiente de execução do Lakehouse não é compatível.

Cotas e limites

  • As tabelas de catálogo de tempo de execução do Lakehouse no BigQuery estão sujeitas às mesmas cotas e limites que as tabelas padrão.

A seguir