Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A manutenção da tabela delta ajuda você a manter tabelas rápidas e eficientes em armazenamento à medida que elas crescem. Com o tempo, as tabelas Delta podem acumular muitos arquivos pequenos, os dados excluídos podem continuar consumindo espaço de armazenamento e estatísticas obsoletas podem reduzir a eficiência da consulta. A manutenção regular ajuda você a melhorar o desempenho de leitura, recuperar o armazenamento e manter os metadados de tabela alinhados com a maneira como suas cargas de trabalho acessam os dados. Use este artigo como um guia rápido para as principais operações de manutenção disponíveis para tabelas Delta.
Por que a manutenção importa
À medida que as tabelas Delta crescem, a atividade de gravação altera o layout físico da tabela. Trabalhos de ingestão repetidos podem criar muitos arquivos pequenos, operações de atualização e exclusão podem deixar arquivos não referenciados ou linhas marcadas como excluídas, e estatísticas mais antigas podem dificultar que o Spark ignore dados desnecessários. Se você faz a manutenção das tabelas regularmente, reduz a sobrecarga das varreduras, ajuda o Fabric a otimizar as consultas com mais eficiência e evita pagar para manter armazenamento que as versões ativas da tabela não precisam mais.
Usar OPTIMIZE para compactação da lixeira
Use OPTIMIZE quando a tabela Delta tiver acumulado muitos arquivos pequenos e você quiser consolidá-los em menos arquivos maiores. Essa operação melhora o desempenho de leitura reduzindo a sobrecarga de gerenciamento de arquivos e tornando as verificações mais eficientes.
OPTIMIZE também dá suporte a outros argumentos e recursos, como VORDER. Para sintaxe completa, opções e exemplos, veja Compactação da tabela e ordem V.
Use o VACUUM para limpar o armazenamento
Use VACUUM quando quiser remover arquivos de dados não referenciados que são mais antigos do que a janela de retenção configurada. Em Fabric, essa operação ajuda você a recuperar o armazenamento do OneLake após atualizações, exclusões, mesclagens, operações de substituição e compactação.
VACUUM concentra-se na limpeza do armazenamento em vez da otimização de consultas, portanto geralmente complementa outras tarefas de manutenção em vez de substituí-las. Para obter diretrizes de retenção e detalhes de execução, consulte VACUUM.
Usar REORG para reorganização direcionada
Use REORG quando precisar reescrever o estado da tabela para uma meta de manutenção específica em vez de compactação geral de arquivos. No Delta Lake, REORG TABLE ... APPLY (PURGE) remove fisicamente as linhas que os vetores de exclusão marcaram como excluídas. Para obter as opções com suporte e quando usá-las, consulte Reorganizar tabelas Delta com REORG.
Note
REORG normalmente não é necessário porque OPTIMIZE limpa automaticamente arquivos em que mais de 5% de registros são referenciados por vetores de exclusão.
Manter as estatísticas atuais
O Fabric Spark Runtime dá suporte a dois tipos de estatísticas em tabelas Delta: estatísticas de arquivo e estatísticas de tabela.
- Estatísticas do arquivo — o Delta Lake registra, para cada arquivo, os valores mínimos, máximos e as contagens de valores nulos das colunas indexadas sempre que um arquivo de dados é gravado. O mecanismo spark usa essas estatísticas para ignorar arquivos que não podem conter linhas correspondentes a um predicado de consulta, o que reduz a quantidade de dados verificados. Por padrão, as estatísticas são coletadas para as primeiras 32 colunas. Para obter detalhes sobre como o ignorar arquivos funciona e como personalizar para quais colunas as estatísticas são coletadas, consulte Ignorar arquivo.
- Estatísticas de tabela — as estatísticas de nível de coluna agregadas em todos os arquivos na tabela são mantidas automaticamente para que o Spark tenha metadados melhores para o planejamento de consultas. Essas estatísticas melhoram o desempenho por meio de melhores decisões de otimização para filtros, junções e agregações. Para saber como as estatísticas automatizadas funcionam e como configurar, consulte estatísticas automatizadas para tabelas Delta.
Use a compactação automática para o gerenciamento contínuo de arquivos
O Delta Lake também oferece suporte à compactação automática após as gravações, para que as tabelas permaneçam em melhor estado sem exigir uma tarefa manual separada a cada vez. Você pode controlar esse comportamento por meio de propriedades de tabela ou configurações de workspace, dependendo de como você gerencia suas cargas de trabalho do Spark. Consulte Compactação automática para obter detalhes sobre como habilitar.
Executar a manutenção na interface do usuário do lakehouse
Se você preferir um fluxo de trabalho baseado em interface, pode executar ações de manutenção diretamente do explorador Lakehouse, veja manutenção de tabelas Lakehouse.
Siga uma cadência de manutenção prática
Execute OPTIMIZE após uma ingestão de grandes lotes ou sempre que arquivos pequenos começarem a se acumular e tornar as leituras mais lentas. Execute VACUUM em uma cadência regular, como semanal ou após os principais ciclos de compactação, para recuperar o armazenamento de arquivos que a tabela não faz mais referência.
REORG TABLE ... APPLY (PURGE) não é necessário como manutenção de rotina porque OPTIMIZE limpa automaticamente arquivos em que mais de 5% de registros são referenciados por vetores de exclusão. Reserve PURGE para cenários que exigem controle explícito, como conformidade ou obrigações de RGPD. Monitore a condição da tabela com DESCRIBE DETAIL e DESCRIBE HISTORY para que você possa acompanhar contagens de arquivos, tamanho e histórico de manutenção antes e depois de cada operação.
-- View current table state
DESCRIBE DETAIL table_name;
-- View history of transactions
DESCRIBE HISTORY table_name;