Compartilhar via


Otimização preditiva para tabelas gerenciadas do Catálogo do Unity

Observação

A otimização preditiva será habilitada por padrão se sua conta tiver sido criada em 11 de novembro de 2024 ou depois de 11 de novembro de 2024. O Databricks começou a habilitar contas existentes a partir de 7 de maio de 2025. Essa habilitação está sendo distribuída gradualmente e deve ser concluída até fevereiro de 2026. Se você não tiver certeza se sua conta já está habilitada, confira Se a otimização preditiva está habilitada.

A otimização preditiva elimina a necessidade de manualmente gerenciar as operações de manutenção de tabelas do Unity Catalog gerenciadas no Azure Databricks.

Com a otimização preditiva habilitada, o Azure Databricks faz o seguinte automaticamente:

  • Identifica tabelas que se beneficiariam de operações de manutenção e enfileira essas operações para serem executadas.
  • Coleta estatísticas quando os dados são gravados em uma tabela gerenciada.

As operações de manutenção são executadas conforme necessário, eliminando as execuções desnecessárias para operações de manutenção e a carga associada ao acompanhamento e à solução de problemas de desempenho.

O Databricks recomenda usar a otimização preditiva para todas as tabelas gerenciadas do Catálogo do Unity. Por exemplo, o agrupamento automático de líquidos realiza otimização inteligente do layout de dados com base nos seus padrões de uso. Consulte Usar clustering líquido para tabelas.

Importante

A otimização preditiva só é executada em tabelas gerenciadas do Catálogo do Unity.

A otimização preditiva não está disponível em todas as regiões. Confira Recursos com disponibilidade regional limitada.

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
OPTIMIZE (1) Dispara o clustering incremental nas tabelas habilitadas. Consulte Usar clustering líquido para tabelas.
Melhora o desempenho da consulta ao otimizar os tamanhos dos arquivos. Confira Otimizar o layout do arquivo de dados.
VACUUM Reduz os custos de armazenamento ao excluir arquivos de dados que não são mais referenciados pela tabela. Confira Remover arquivos de dados não utilizados com o vacuum.
ANALYZE Dispara a atualização incremental de estatísticas para melhorar o desempenho da consulta. Confira ANALYZE TABLE.

(1)OPTIMIZE não é executado ZORDER quando executado com otimização preditiva. Em tabelas que usam ordem Z, a otimização preditiva ignorará os arquivos ordenados por Z.

Se o clustering automático de líquido estiver habilitado, a otimização preditiva poderá selecionar novas chaves de clustering antes de agrupar os dados. Consulte Clustering líquido automático.

Aviso

A janela de retenção do comando VACUUM é determinada pela propriedade da tabela delta.deletedFileRetentionDuration, cujo padrão é 7 dias. Isso significa que VACUUM remove os arquivos de dados que não são mais referenciados por uma versão da tabela Delta nos últimos 7 dias. Se você quiser reter dados por mais tempo (como dar suporte a viagens no tempo por mais tempo), defina essa propriedade de tabela adequadamente antes de habilitar a otimização preditiva, como no exemplo a seguir:

ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');

Se você configurar delta.deletedFileRetentionDuration abaixo do padrão de 7 dias, a otimização preditiva será executada VACUUM com duração de retenção de 7 dias.

Em que local a otimização preditiva é executada?

A otimização preditiva identifica tabelas que se beneficiariam de ANALYZE, OPTIMIZE, e VACUUM operações e as enfileira para serem executadas usando computação sem servidor para trabalhos. A sua conta é cobrada pela computação associada a essas cargas de trabalho usando um SKU de trabalhos sem servidor.

Consulte os preços dos serviços gerenciados do Databricks. Confira Tabelas do sistema usadas para acompanhar a otimização preditiva.

Pré-requisitos da otimização preditiva

Você deve cumprir os seguintes requisitos para habilitar a otimização preditiva:

  • Seu Workspace do Azure Databricks deve estar no plano Premium em uma região que dê suporte à otimização preditiva. Confira Recursos com disponibilidade regional limitada.
  • Você deve usar SQL warehouses ou o Azure Databricks Runtime 12.2 LTS ou superior ao ativar a otimização preditiva.
  • Há suporte apenas para as tabelas gerenciadas pelo Catálogo do Unity.

Habilite a otimização preditiva

Você pode habilitar a otimização preditiva para uma conta, um catálogo ou um esquema. Todas as tabelas gerenciadas do Unity Catalog herdam por padrão o valor da conta. Você pode alterar a configuração padrão da conta para um determinado catálogo ou esquema a fim de habilitar ou desabilitar a otimização preditiva nesse nível.

Observação

A otimização preditiva será habilitada por padrão se sua conta tiver sido criada em 11 de novembro de 2024 ou depois de 11 de novembro de 2024. O Databricks começou a habilitar contas existentes a partir de 7 de maio de 2025. Essa habilitação está sendo distribuída gradualmente e deve ser concluída até fevereiro de 2026.

Você deve ter os seguintes privilégios para habilitar ou desabilitar a otimização preditiva no nível especificado:

Objeto do Catálogo do Unity Privilégio
Conta Administrador de contas
Catálogo Proprietário do catálogo
Esquema Proprietário do esquema

Habilitar ou desabilitar a otimização preditiva para sua conta

Um administrador de conta pode concluir as etapas a seguir para habilitar a otimização preditiva para todos os metastores em uma conta. Os objetos na conta herdarão essa configuração por padrão (mas a configuração pode ser substituída no nível de catálogo ou esquema):

  1. Acesse o console de contas.
  2. Navegue até Configurações e, em seguida, Habilitação de Recursos.
  3. Selecione a opção a ser usada (por exemplo, Habilitado) ao lado de otimização preditiva.

Observação

  • Metastores em regiões que não dão suporte à otimização preditiva não estão habilitados.
  • Desabilitar a otimização preditiva no nível da conta não a desabilita para catálogos ou esquemas que a habilitaram especificamente.

Desabilitar ou habilitar a otimização preditiva para um catálogo ou esquema

A otimização preditiva utiliza um modelo de herança. Quando habilitado 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 habilitar ou desabilitar explicitamente a otimização preditiva para um catálogo ou esquema.

Observação

Você pode desabilitar a otimização preditiva no nível do catálogo ou do esquema antes de habilitá-la no nível da conta. Se a otimização preditiva for habilitada posteriormente na conta, ela será bloqueada para tabelas nesses objetos.

Use a sintaxe a seguir para habilitar ou desabilitar a otimização preditiva ou retornar ao padrão de herdar do objeto pai:

ALTER CATALOG [catalog_name] { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER { SCHEMA | DATABASE } schema_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;

Verificar se a otimização preditiva está habilitada

O campo Predictive Optimization é uma propriedade do Catálogo do Unity 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.

Use a seguinte sintaxe para ver se a otimização preditiva está habilitada:

DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name

Usar tabelas do sistema para acompanhar a otimização preditiva

O Azure Databricks fornece a tabela system.storage.predictive_optimization_operations_history do sistema para observabilidade em operações de otimização preditiva, custos e impacto. Confira Tabelas do sistema de referência de otimização preditiva.

Se a tabela do sistema marcar as operações como com falha com FAILED: PRIVATE_LINK_SETUP_ERROR, talvez você não tenha configurado corretamente o link privado para computação sem servidor. Consulte Configurar a conectividade privada com os recursos do Azure.

Limitações

A otimização preditiva não está disponível em todas as regiões. Confira Recursos com disponibilidade regional limitada.

Para tabelas com duração de retenção para arquivos excluídos (delta.deletedFileRetentionDuration) configurada abaixo do padrão de 7 dias, a otimização preditiva é executada VACUUM com duração de retenção de 7 dias. Consulte Configurar retenção de dados para consultas de viagem no tempo.

A otimização preditiva não executa operações de manutenção nas tabelas a seguir:

  • Tabelas carregadas para um espaço de trabalho como destinatários do Delta Sharing.
  • Tabelas externas.