Otimização preditiva para Unity Catalog gerenciar tabelas
Observação
Para todas as contas criadas após 11 de novembro de 2024, o site Databricks permite a otimização preditiva por meio do site default.
A otimização preditiva elimina a necessidade de gerenciar manualmente as operações de manutenção para Unity Catalog gerenciar tabelas em Databricks.
Com a otimização preditiva habilitada, o Databricks identifica automaticamente as tabelas que se beneficiariam das operações de manutenção e sua execução para o usuário. As operações de manutenção são executadas apenas conforme necessário, eliminando tanto a execução desnecessária para operações de manutenção quanto a carga associada ao acompanhamento e ao desempenho da solução de problemas.
Importante
A otimização preditiva só é executada em Unity Catalog gerenciar tabelas.
A otimização preditiva não é executada em tabelas de transmissão ou visualizações materializadas criadas em Databricks SQL ou usando o pipeline Delta Live Tables.
Quais operações a otimização preditiva executa?
A otimização preditiva executa as seguintes operações automaticamente para as tabelas habilitadas:
Operação |
Descrição |
---|---|
|
Aciona o clustering incremental para tabelas habilitadas. Consulte Usar clustering líquido para tabelas Delta. Melhora o desempenho da consulta ao otimizar o tamanho dos arquivos. Consulte Otimizar a disposição do arquivo de dados. |
|
Reduz os custos de armazenamento ao excluir arquivos de dados que não são mais referenciados pela tabela. Consulte Remover arquivos de dados não utilizados com vácuo. |
|
Aciona a atualização incremental das estatísticas para melhorar o desempenho da consulta. |
(1) OPTIMIZE
não executa ZORDER
quando executado com otimização preditiva.
(2) A otimização preditiva com ANALYZE
está em pré-visualização pública. Inclui coleta inteligente de estatísticas durante as gravações. Use este formulário para se inscrever no Public Preview. Durante o Public Preview inicial, o ANALYZE
comando pode ser executado em tabelas com 500 colunas ou menos.
Aviso
A janela de retenção do comando VACUUM
é determinada pela propriedade da tabela delta.deletedFileRetentionDuration
, cujo default é 7 dias. Isso significa que VACUUM
remove arquivos de dados que não são mais referenciados por uma versão da tabela Delta nos últimos 7 dias. Se desejar reter dados por mais tempo (como para dar suporte à viagem do tempo por uma duração mais longa), você deverá definir essa propriedade de tabela adequadamente antes de ativar a otimização preditiva, como no exemplo a seguir:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');
Onde ocorre a execução da otimização preditiva?
A otimização preditiva identifica tabelas que se beneficiariam de operações ANALYZE
, OPTIMIZE
e VACUUM
e as coloca em fila para execução usando serverless compute for Job. O senhor account é cobrado pelo compute associado a essas cargas de trabalho usando uma SKU específica para gerenciada pelo Databricks serviço. Veja os preços para Databricks serviço gerenciado. A Databricks fornece tabelas de sistema para observabilidade em operações de otimização preditiva, custos e impacto. Consulte Usar tabelas do sistema para rastrear a otimização preditiva.
Pré-requisitos para otimização preditiva
Você deve atender aos seguintes requisitos para ativar a otimização preditiva:
O seu workspace Databricks deve estar no plano Premium ou acima numa região que suporte a otimização preditiva. Consulte clouds e regiões do Databricks.
Você deve usar SQL warehouse ou o Databricks Runtime 12.2 LTS ou acima ao habilitar a otimização preditiva.
Somente tabelas de gerenciamento do Catálogo Unity são suportadas.
Habilite a otimização preditiva
O senhor deve ativar a otimização preditiva no nível account.
Observação
Se o seu site account foi criado após 11 de novembro de 2024, a otimização preditiva é ativada por default.
Você deve ter os seguintes privilégios para ativar ou desativar a otimização preditiva no nível especificado:
Objeto Unity Catalog |
Privilégio |
---|---|
Conta |
Administrador da conta |
Catálogo |
Proprietário do catálogo |
Esquema |
Proprietário do esquema |
Observação
Quando o senhor ativa a otimização preditiva pela primeira vez, o site Databricks cria automaticamente uma entidade de serviço em seu site Databricks account. A Databricks usa essa entidade de serviço para executar as operações de manutenção solicitadas. Consulte gerenciar entidade de serviço.
Ative a otimização preditiva para sua conta
Um administrador account deve concluir os seguintes passos para ativar a otimização preditiva para todos os meta-lojas em uma account:
Acesse o console account .
Navegue até Configurações e, em seguida, habilitação de recursos.
Selecione Ativado ao lado de Otimização preditiva.
Observação
Metastores em regiões que não suportam a otimização preditiva não estão ativados.
Habilitar ou desabilitar a otimização preditiva para um catálogo ou esquema
A otimização preditiva usa um modelo de herança. Quando habilitados para um catálogo, os esquemas herdam a propriedade. As tabelas em um esquema habilitado herdam a otimização preditiva. Para substituir esse comportamento de herança, você pode desabilitar explicitamente a otimização preditiva para um catálogo ou esquema.
Observação
O senhor pode desativar a otimização preditiva no nível do catálogo ou do esquema antes de ativá-la no nível do site account. Se a otimização preditiva for ativada posteriormente no site account, ela será bloqueada para tabelas nesses objetos.
Use a seguinte sintaxe para ativar ou desativar a otimização preditiva:
ALTER CATALOG [catalog_name] {ENABLE | DISABLE} PREDICTIVE OPTIMIZATION;
ALTER {SCHEMA | DATABASE} schema_name {ENABLE | DISABLE} PREDICTIVE OPTIMIZATION;
Verifique se a otimização preditiva está habilitada
O campo Predictive Optimization
é uma propriedade do Unity Catalog que detalha se a otimização preditiva está habilitada. Se a otimização preditiva for herdada de um objeto pai, isso será indicado no valor do campo.
Importante
O senhor deve ativar a otimização preditiva no nível account para view esse campo.
Use a seguinte sintaxe para ver se a otimização preditiva está habilitada:
DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name
Use tabelas do sistema para rastrear a otimização preditiva
Databricks fornece uma tabela de sistema para rastrear o histórico de operações de otimização preditiva. Consulte Referência de tabela do sistema de otimização preditiva.
Limitações
A otimização preditiva não está disponível em todas as regiões. Consulte clouds e regiões do Databricks.
A otimização preditiva não executa OPTIMIZE
comando em tabelas que usam Z-order.
A otimização preditiva não executa VACUUM
operações em tabelas com uma janela de retenção de arquivos configurada abaixo do default de 7 dias. Consulte Configurar a retenção de dados para consultas de viagem do tempo.
A otimização preditiva não executa operações de manutenção nas tabelas a seguir:
Tabelas carregadas em um workspace como destinatários de compartilhamento Delta.
Tabelas externas.
Visualização materializada. Consulte Usar a visualização materializada em Databricks SQL.
tabelas de transmissão. Consulte as tabelas Load use de dados transmission em Databricks SQL.