Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo discute como usar o dimensionamento automático avançado para otimizar seus pipelines no Azure Databricks.
O dimensionamento automático melhorado é ativado por predefinição para todos os novos pipelines. Os pipelines sem servidor também usam dimensionamento automático vertical. Consulte O que é o dimensionamento automático vertical?.
Para pipelines sem servidor, o dimensionamento automático aprimorado está sempre ativo e não pode ser desativado. Consulte Configurar um pipeline sem servidor.
O que é o dimensionamento automático avançado?
O dimensionamento automático aprimorado do Databricks otimiza a utilização do cluster alocando automaticamente os recursos do cluster com base no volume da carga de trabalho, com impacto mínimo na latência de processamento de dados de seus pipelines.
O dimensionamento automático aprimorado melhora a funcionalidade de dimensionamento automático de cluster do Azure Databricks com os seguintes recursos:
- O dimensionamento automático aprimorado implementa a otimização de cargas de trabalho de streaming e adiciona aprimoramentos para melhorar o desempenho de cargas de trabalho em lote. O dimensionamento automático aprimorado otimiza os custos adicionando ou removendo máquinas à medida que a carga de trabalho muda.
- O dimensionamento automático aprimorado desliga proativamente os nós subutilizados, garantindo que não haja falhas nas tarefas durante o desligamento. A funcionalidade de dimensionamento automático do cluster existente reduz os nós apenas se eles estiverem ociosos.
O dimensionamento automático aprimorado é o modo de dimensionamento automático padrão quando você cria um novo pipeline na interface do usuário dos pipelines. Você pode habilitar o dimensionamento automático aprimorado para pipelines existentes editando as configurações de pipeline na interface do usuário. Você também pode habilitar o dimensionamento automático avançado ao criar ou editar pipelines com a API REST de pipelines.
Quais métricas o dimensionamento automático aprimorado usa para tomar uma decisão de aumento ou redução de escala?
O dimensionamento automático aprimorado usa duas métricas para decidir sobre o aumento ou a redução:
- Utilização de slots de tarefas: Esta é a proporção média entre o número de slots de tarefas ocupados e o total de slots de tarefas disponíveis no cluster.
- Tamanho da fila de tarefas: Este é o número de tarefas aguardando para serem executadas em slots de tarefas.
Habilitar o dimensionamento automático avançado para um pipeline
O dimensionamento automático aprimorado é o modo de dimensionamento automático padrão quando você cria um novo pipeline na interface do usuário dos pipelines. Você pode habilitar o dimensionamento automático aprimorado para pipelines existentes editando as configurações de pipeline na interface do usuário. Você também pode habilitar o dimensionamento automático aprimorado ao editar um pipeline com o Lakeflow Pipelines Editor.
Para usar o dimensionamento automático avançado, siga um destes procedimentos:
- Defina o modo de cluster como Dimensionamento automático avançado ao editar as configurações de pipeline no Lakeflow Pipelines Editor.
- Adicione a configuração
autoscaleà configuração do cluster de pipeline e defina o campomodecomoENHANCED. Consulte Configurar computação clássica para pipelines.
Use as seguintes diretrizes ao configurar o dimensionamento automático aprimorado para pipelines de produção:
- Deixe a configuração
Min workersno padrão. - Defina a configuração
Max workerspara um valor baseado no orçamento e na prioridade do pipeline.
O exemplo a seguir configura um cluster de dimensionamento automático aprimorado com um mínimo de 5 trabalhadores e um máximo de 10 trabalhadores.
max_workers deve ser maior ou igual a min_workers.
Observação
- O dimensionamento automático avançado está disponível apenas para clusters
updates. O escalonamento automático legado é usado para clustersmaintenance. - A configuração
autoscaletem dois modos:-
LEGACY: Use o autoescalonamento de clusters. -
ENHANCED: Use um dimensionamento automático aprimorado.
-
{
"clusters": [
{
"autoscale": {
"min_workers": 5,
"max_workers": 10,
"mode": "ENHANCED"
}
}
]
}
Se o pipeline estiver configurado para execução contínua, ele será reiniciado automaticamente após as alterações na configuração de dimensionamento automático. Após o reinício, espere um curto período de maior latência. Após esse breve período de latência aumentada, o tamanho do cluster deve ser atualizado com base na configuração do autoscale e a latência do pipeline deve retornar às suas características de latência anteriores.
Limite os custos dos pipelines que utilizam aprimorado dimensionamento automático
Observação
Não é possível configurar operadores para pipelines sem servidor.
Definir o parâmetro Max workers no painel Computação dos pipelines estabelece um limite superior para o auto-escalonamento. A redução do número de trabalhadores disponíveis pode aumentar a latência de algumas cargas de trabalho, mas evita que os custos dos recursos de computação aumentem durante operações de computação intensiva.
A Databricks recomenda ajustar as configurações de Max workers para equilibrar a compensação custo-latência para as suas necessidades específicas.
Monitore pipelines clássicos habilitados para dimensionamento automático aprimorado
Você pode usar o log de eventos na interface do usuário do pipeline para monitorar métricas aprimoradas de dimensionamento automático para pipelines clássicos. Os eventos de dimensionamento automático aprimorado têm o tipo de evento autoscale. Seguem-se exemplos de eventos:
| Event | Message |
|---|---|
| Solicitação de redimensionamento de cluster iniciada | Scaling [up or down] to <y> executors from current cluster size of <x> |
| Solicitação de redimensionamento de cluster bem-sucedida | Achieved cluster size <x> for cluster <cluster-id> with status SUCCEEDED |
| Solicitação de redimensionamento de cluster parcialmente bem-sucedida | Achieved cluster size <x> for cluster <cluster-id> with status PARTIALLY_SUCCEEDED |
| Falha na solicitação de redimensionamento de cluster | Achieved cluster size <x> for cluster <cluster-id> with status FAILED |
Você também pode exibir eventos de dimensionamento automático aprimorados consultando diretamente o log de eventos :
- Para consultar o log de eventos para obter métricas de lista de pendências, consulte Monitorar a lista de pendências de dados para otimizar a duração do streaming.
- Para monitorar solicitações e respostas de redimensionamento de cluster durante operações de dimensionamento automático aprimoradas, consulte Monitorar eventos de dimensionamento automático para otimizar a computação clássica.
O que é o dimensionamento automático vertical?
Os pipelines sem servidor aumentam o dimensionamento automático horizontal fornecido pelo dimensionamento automático aprimorado do Databricks, alocando automaticamente os tipos de instância mais econômicos que podem executar seu pipeline sem falhar devido a erros de falta de memória. O dimensionamento automático vertical aumenta quando tipos de instância maiores são necessários para executar uma atualização de pipeline e também diminui quando determina que a atualização pode ser executada com tipos de instância menores. O dimensionamento automático vertical determina se os nós de condutor, nós de trabalho ou ambos os nós de condutor e de trabalho devem ser dimensionados para aumentar ou diminuir.
O autoscaling vertical é utilizado para todos os pipelines serverless, incluindo pipelines usados pelas vistas materializadas SQL e tabelas de streaming do Databricks.
A escalação automática vertical funciona ao detetar falhas nas atualizações do pipeline devido a erros de falta de memória. O dimensionamento automático vertical aloca tipos de instância maiores quando essas falhas são detetadas com base nos dados de falta de memória coletados da atualização com falha. No modo de produção, uma nova atualização que usa os novos recursos de computação é iniciada automaticamente. No modo de desenvolvimento, os novos recursos de computação são usados quando você inicia manualmente uma nova atualização.
Se o dimensionamento automático vertical detetar que a memória das instâncias alocadas está consistentemente subaproveitada, irá reduzir os tipos de instância a serem utilizados na próxima atualização do fluxo de trabalho.