Todos os produtos
Search
Central de documentação

MaxCompute:Consultas incrementais

Última atualização: Jun 26, 2026

As tabelas delta suportam gravação e armazenamento incremental de dados. O MaxCompute oferece uma sintaxe SQL dedicada para consultas incrementais, voltada a pipelines de processamento incremental em tempo quase real. Uma consulta incremental lê apenas os arquivos delta em um intervalo de versões especificado, mescla esses arquivos e retorna o resultado sem ler os arquivos base gerados pela compactação ou pelo clustering.

Funcionamento

image.png

O diagrama ilustra uma consulta incremental em uma tabela transacional chamada src, com duas colunas: pk e val.

Linha do tempo das alterações de dados:

  • Cinco transações de gravação ocorrem nos instantes t1 a t5 e geram cinco arquivos delta.

  • A compactação é executada em t2 e t4 e produz dois arquivos base: b1 e b2.

Ao enviar uma instrução SQL de consulta incremental, o MaxCompute executa as seguintes etapas:

  1. Analisa o intervalo de versões especificado (valores de Begin e End).

  2. Localiza todos os arquivos delta com carimbos de data/hora dentro desse intervalo.

  3. Mescla os dados desses arquivos delta conforme a política de mesclagem definida.

  4. Retorna o resultado mesclado como saída da consulta.

Motivo da exclusão dos arquivos base: A compactação e o clustering reorganizam os registros existentes para otimizar o armazenamento, sem adicionar novos registros lógicos. Incluir arquivos base duplicaria dados já capturados em arquivos delta anteriores. O MaxCompute exclui os arquivos base por projeto para garantir que os resultados incrementais reflitam apenas novas gravações líquidas.

Semântica do intervalo de versões

Os valores de Begin e End definem o intervalo de versões. Cada valor identifica uma versão temporal específica no histórico de transações da tabela.

Begin

End

Arquivos delta lidos

Resultado

t1-1

t1

d1

Registros do arquivo delta d1

t2

não especificado

d1, d2

Registros dos arquivos delta d1 e d2

t1

t2-1

nenhum

Vazio — nenhuma transação de gravação ocorreu no intervalo (t1, t2)

Limitações

  • Exclusão de arquivos base: Registros reorganizados por compactação ou clustering não aparecem nos resultados de consultas incrementais. Como essas operações não adicionam novos registros lógicos, excluir seus arquivos de saída não omite nenhum dado novo líquido.

  • Resultados vazios em intervalos sem atividade: Se o intervalo especificado estiver totalmente entre dois pontos de compactação, sem transações de gravação, a consulta retornará linhas vazias.