As tabelas do Apache Iceberg, gerenciadas pelo catálogo de execução do Lakehouse e pelo endpoint do catálogo REST do Iceberg, são tabelas abertas e interoperáveis do Iceberg que seguem a especificação de tabela do Apache Iceberg de código aberto, que pode ser lida e gravada usando qualquer mecanismo de processamento compatível com o Iceberg ou o BigQuery.
Neste documento, essas tabelas são chamadas de "tabelas do Iceberg do Lakehouse" ou "tabelas do Iceberg".
É possível ativar os seguintes recursos configurando as opções de tabela:
- Interoperabilidade de leitura/gravação (pré-lançamento): suporte de leitura e gravação para vários mecanismos, incluindo o BigQuery, o Serviço Gerenciado para Apache Spark, mecanismos compatíveis com o Iceberg, como mecanismos de código aberto (Apache Spark, Apache Flink e Trino) e mecanismos de terceiros (como o Snowflake).
- Gerenciamento automático de tabelas (pré-lançamento): gerenciamento automático de tabelas (otimização de armazenamento ), como compactação e coleta de lixo.
Além dos recursos anteriores, os seguintes recursos também são compatíveis por padrão com as tabelas do Iceberg do Lakehouse (pré-lançamento).
- Linguagem de definição de dados do BigQuery (pré-lançamento): também é possível criar ou atualizar
tabelas do Iceberg usando instruções DDL do BigQuery (por exemplo,
CREATE TABLE,ALTER TABLE, eDROP TABLE), além de criar ou atualizar tabelas usando mecanismos compatíveis com o Iceberg, como Spark, Flink, e Trino. Depois que as tabelas são criadas, elas ficam disponíveis para leitura e gravação nesses mecanismos e no BigQuery, e fazem parte da mesma construção de catálogo e namespace, gerenciada pelo catálogo de execução do Lakehouse. - Suporte à distribuição de credenciais para o BigQuery (pré-lançamento): o BigQuery oferece suporte ao uso da distribuição de credenciais para autenticação ao ler ou gravar tabelas do Iceberg no catálogo de execução do Lakehouse. É possível definir a distribuição de credenciais no nível do catálogo.
Ações de gerenciamento
É possível realizar as seguintes ações de gerenciamento nas tabelas do Apache Iceberg:
- Criar uma tabela: crie uma tabela do Apache
Iceberg em um namespace de catálogo usando o Google Cloud console,
Spark, Trino, gcloud, BigQuery (pré-lançamento) ou a API do catálogo REST do Iceberg (
CreateIcebergTable). - Listar tabelas: veja os identificadores de tabelas
em um namespace usando o Google Cloud console, o Spark, o Trino, o gcloud, o BigQuery (pré-lançamento) ou a
API do catálogo REST do Iceberg (
ListIcebergTableIdentifiers). - Receber detalhes da tabela: inspecione o
esquema, as propriedades e as credenciais da tabela usando o Google Cloud console,
Spark, Trino, gcloud, BigQuery (pré-lançamento) ou a API do catálogo REST do Iceberg (
GetIcebergTable,LoadIcebergTableCredentials). - Inserir dados: anexe linhas de dados às suas tabelas do Iceberg usando o Spark, o Trino ou o BigQuery (pré-lançamento).
- Consultar uma tabela: execute consultas nas tabelas do Iceberg no Spark, no Trino ou no BigQuery (pré-lançamento) usando a nomenclatura de tabela de quatro partes.
- Modificar dados com DML: atualize, exclua ou mescle linhas de dados nas tabelas do Iceberg usando instruções DML do BigQuery (pré-lançamento), do Spark ou do Trino.
- Alterar uma tabela: evolua o esquema da tabela e
atualize as propriedades de metadados usando o Google Cloud console, o Spark,
o Trino, o gcloud, o BigQuery (pré-lançamento) ou a API do catálogo REST do Iceberg (
UpdateIcebergTable). - Configurar opções de tabela: configure propriedades para ativar o DML do BigQuery (pré-lançamento) e o gerenciamento automático de tabelas.
- Gerenciar ACLs de tabelas: visualize e atualize as políticas do IAM nas tabelas do Iceberg para controlar o acesso de principais específicos (
get-iam-policy,set-iam-policy). - Fazer upgrade das tabelas do Iceberg V1 para V2: faça upgrade das tabelas do Iceberg V1 para o formato V2 compatível.
- Usar vetores de exclusão binária em tabelas do Iceberg V3: Ative vetores de exclusão binária para otimizar o desempenho da exclusão em tabelas do Iceberg V3.
- 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, o gcloud, o BigQuery (pré-lançamento) ou a API do catálogo REST do Iceberg (
DeleteIcebergTable).
A seguir
- Consulte o catálogo REST do Apache Iceberg.
- Saiba como consultar uma tabela.
- Saiba como gerenciar ACLs de tabelas.