Partilhar via


Configurar computação para trabalhos

Este artigo contém recomendações e recursos para configurar a computação para trabalhos do Databricks.

Importante

As limitações para computação sem servidor para trabalhos incluem o seguinte:

  • Sem suporte para agendamento contínuo .
  • Não há suporte para gatilhos de intervalo padrão ou baseados em tempo no Structured Streaming.

Para obter mais limitações, consulte Limitações de computação sem servidor.

Cada trabalho pode ter uma ou mais tarefas. Você define recursos de computação para cada tarefa. Várias tarefas definidas para o mesmo trabalho podem usar o mesmo recurso de computação.

Imagem mostrando um trabalho com várias tomadas e recursos de computação em nuvem associados

A tabela a seguir indica os tipos de computação recomendados e suportados para cada tipo de tarefa.

Nota

A computação sem servidor para trabalhos tem limitações e não suporta todas as cargas de trabalho. Consulte Limitações de computação sem servidor.

Task Computação recomendada Computação suportada
Notebooks Trabalhos sem servidor Trabalhos sem servidor, trabalhos clássicos, polivalentes clássicos
Script do Python Trabalhos sem servidor Trabalhos sem servidor, trabalhos clássicos, polivalentes clássicos
Roda Python Trabalhos sem servidor Trabalhos sem servidor, trabalhos clássicos, polivalentes clássicos
SQL Armazém SQL sem servidor SQL warehouse sem servidor, pro SQL warehouse
Pipeline Delta Live Tables Pipeline sem servidor Pipeline sem servidor, pipeline clássico
DBT Armazém SQL sem servidor SQL warehouse sem servidor, pro SQL warehouse
Comandos dbt CLI Trabalhos sem servidor Trabalhos sem servidor, trabalhos clássicos, polivalentes clássicos
JAR Trabalhos clássicos Trabalhos clássicos, polivalentes clássicos
Enviar faísca Trabalhos clássicos Trabalhos clássicos

O preço de Jobs está vinculado à computação usada para executar tarefas. Para obter mais detalhes, consulte Preços do Databricks.

Como configuro a computação para Jobs?

A computação de trabalhos clássicos é configurada diretamente da interface do usuário de trabalhos do Databricks, e essas configurações fazem parte da definição de trabalho. Todos os outros tipos de computação disponíveis armazenam suas configurações com outros ativos de espaço de trabalho. A tabela a seguir tem mais detalhes:

Tipo de computação Detalhes
Computação clássica de trabalhos Você configura a computação para trabalhos clássicos usando a mesma interface do usuário e as configurações disponíveis para computação multiuso. Consulte Referência de configuração de computação.
Computação sem servidor para trabalhos A computação sem servidor para trabalhos é o padrão para todas as tarefas que a suportam. O Databricks gerencia configurações de computação para computação sem servidor. Consulte Executar seu trabalho do Azure Databricks com computação sem servidor para fluxos de trabalho. nn Um administrador de espaço de trabalho deve habilitar a computação sem servidor para que essa opção fique visível. Consulte Ativar computação sem servidor.
Armazéns SQL Os armazéns SQL sem servidor e pro são configurados por administradores de espaço de trabalho ou usuários com privilégios irrestritos de criação de cluster. Você configura tarefas para serem executadas em armazéns SQL existentes. Consulte Conectar-se a um SQL warehouse.
Computação de pipeline Delta Live Tables Você define as configurações de computação para pipelines Delta Live Tables durante a configuração do pipeline. Consulte Definir suas configurações de computação. nn O Azure Databricks gerencia recursos de computação para pipelines Delta Live Tables sem servidor. Consulte Criar pipelines totalmente gerenciados usando Delta Live Tables com computação sem servidor.
Computação polivalente Opcionalmente, você pode configurar tarefas usando a computação clássica para todos os fins. O Databricks não recomenda essa configuração para trabalhos de produção. Consulte Referência de configuração de computação e A computação multiuso deve ser usada para trabalhos?.

Partilhe computação entre tarefas

Configure tarefas para usar os mesmos trabalhos, recursos de computação para otimizar o uso de recursos com trabalhos que orquestram várias tarefas. O compartilhamento de computação entre tarefas pode reduzir a latência associada aos tempos de inicialização.

Você pode usar um único recurso de computação de trabalho para executar todas as tarefas que fazem parte do trabalho ou vários recursos de trabalho otimizados para cargas de trabalho específicas. Qualquer computação de trabalho configurada como parte de um trabalho está disponível para todas as outras tarefas no trabalho.

A tabela a seguir destaca as diferenças entre a computação de trabalho configurada para uma única tarefa e a computação de trabalho compartilhada entre tarefas:

Tarefa única Partilhado entre tarefas
Iniciar Quando a execução da tarefa começa. Quando a primeira tarefa executada configurada para usar o recurso de computação começa.
Terminate Depois que a tarefa for executada. Após a tarefa final configurada para usar o recurso de computação é executado.
Computação ociosa Não aplicável. A computação permanece ativa e ociosa enquanto as tarefas que não usam o recurso de computação são executadas.

Um cluster de tarefas compartilhadas tem como escopo uma única execução de trabalho e não pode ser usado por outros trabalhos ou execuções do mesmo trabalho.

As bibliotecas não podem ser declaradas em uma configuração de cluster de trabalho compartilhado. Você deve adicionar bibliotecas dependentes nas configurações de tarefas.

Revisar, configurar e trocar trabalhos de computação

A seção Computação no painel Detalhes do trabalho lista todos os cálculos configurados para tarefas no trabalho atual.

As tarefas configuradas para usar um recurso de computação são realçadas no gráfico de tarefas quando você passa o mouse sobre a especificação de computação.

Use o botão Trocar para alterar a computação de todas as tarefas associadas a um recurso de computação.

Os recursos de computação de trabalhos clássicos têm uma opção Configurar . Outros recursos de computação oferecem opções para exibir e modificar detalhes de configuração de computação.

Recomendações para configurar a computação de trabalhos clássicos

Esta seção se concentra em recomendações gerais sobre recursos e configurações que podem beneficiar alguns fluxos de trabalho. As recomendações específicas para configurar o tamanho e os tipos de recursos de computação variam com base na carga de trabalho.

O Databricks recomenda habilitar a Aceleração de Fótons, usando versões recentes do Databricks Runtime e usando computação configurada para o Unity Catalog.

O Serverless compute for jobs gerencia toda a infraestrutura, eliminando as seguintes considerações. Consulte Executar seu trabalho do Azure Databricks com computação sem servidor para fluxos de trabalho.

Nota

Os fluxos de trabalho de Streaming estruturado têm recomendações específicas. Consulte Considerações sobre produção para Streaming estruturado.

Usar o modo de acesso compartilhado

O Databricks recomenda o uso do modo de acesso compartilhado para trabalhos. Consulte Modos de acesso.

Nota

O modo de acesso compartilhado não suporta algumas cargas de trabalho e recursos. O Databricks recomenda o modo de acesso de usuário único para essas cargas de trabalho. Consulte Limitações do modo de acesso de computação para o Unity Catalog.

Usar políticas de cluster

O Databricks recomenda que os administradores do espaço de trabalho definam políticas de cluster para trabalhos e apliquem essas políticas para todos os usuários que configuram trabalhos.

As políticas de cluster permitem que os administradores do espaço de trabalho definam controles de custo e limitem as opções de configuração dos usuários. Para obter detalhes sobre como configurar políticas de cluster, consulte Criar e gerenciar políticas de computação.

O Azure Databricks fornece uma política padrão configurada para trabalhos. Os administradores podem disponibilizar essa política para outros usuários do espaço de trabalho. Consulte Computação de trabalho.

Utilizar dimensionamento automático

Configure o dimensionamento automático para que tarefas de execução longa possam adicionar e remover dinamicamente nós de trabalho durante as execuções de trabalho. Veja Ativar o dimensionamento automático.

Usar um pool para reduzir os tempos de início do cluster

Os pools de computação permitem que você reserve recursos de computação do seu provedor de nuvem. Os pools são benéficos para diminuir o tempo de início de novos clusters de trabalho e garantir a disponibilidade de recursos de computação. Consulte Referência de configuração do pool.

Usar instâncias spot

Configure instâncias spot para cargas de trabalho com requisitos de latência frouxos para otimizar custos. Consulte Instâncias spot.

A computação multiuso deve ser usada para trabalhos?

Há vários motivos pelos quais o Databricks recomenda não usar computação multiuso para trabalhos, incluindo os seguintes:

  • O Azure Databricks fatura a computação para todos os fins a uma taxa diferente da computação de trabalhos.
  • A computação de trabalhos termina automaticamente após a conclusão da execução de um trabalho. A computação multiuso suporta o encerramento automático, que está vinculado à inatividade em vez do fim de uma execução de trabalho.
  • A computação polivalente é frequentemente partilhada entre equipas de utilizadores. Os trabalhos agendados em relação à computação multiuso geralmente têm latência aumentada devido à competição por recursos de computação.
  • Muitas recomendações para otimizar a configuração de computação de trabalhos não são apropriadas para o tipo de consultas ad-hoc e cargas de trabalho interativas executadas em computação multiuso.

A seguir estão os casos de uso em que você pode optar por usar a computação multiuso para trabalhos:

  • Você está desenvolvendo ou testando iterativamente novos trabalhos. Os tempos de arranque para a computação de trabalhos podem tornar o desenvolvimento iterativo tedioso. A computação polivalente permite-lhe aplicar alterações e executar o seu trabalho rapidamente.
  • Você tem trabalhos de curta duração que devem ser executados com frequência ou em um horário específico. Não há tempo de inicialização associado à computação multiuso em execução no momento. Considere os custos associados ao tempo ocioso se usar esse padrão.

A computação sem servidor para trabalhos é o substituto recomendado para a maioria dos tipos de tarefas que você pode considerar executar em computação multiuso.