Usar a computação do Azure Databricks em seus trabalhos

Quando você executa um trabalho do Azure Databricks, as tarefas configuradas como parte do trabalho são executadas na computação do Azure Databricks, seja uma computação sem servidor, um cluster ou um armazém SQL, dependendo do tipo de tarefa. A seleção do tipo de computação e das opções de configuração é importante ao operacionalizar um trabalho. Esse artigo fornece recomendações para a utilização de recursos de computação do Azure Databricks para executar os seus trabalhos.

Para saber mais sobre a utilização da computação sem servidor com os seus trabalhos do Azure Databricks, veja Executar o seu trabalho do Azure Databricks com computação sem servidor para fluxos de trabalho.

Observação

Os segredos não são ocultados nos logs do driver do Spark de um cluster nos fluxos stdout e stderr. Para proteger dados confidenciais, por padrão, os logs do driver Spark só podem ser visualizados por usuários com a permissão PODE GERENCIAR em clusters de trabalho, de modo de acesso de usuário único e de modo de acesso compartilhado. Para permitir que usuários com a permissão PODE ANEXAR A ou PODE REINICIAR visualizem os logs nesses clusters, defina a seguinte propriedade de configuração do Spark na configuração do cluster: spark.databricks.acl.needAdminPermissionToViewLogs false.

Em clusters do modo de acesso compartilhado sem isolamento, os logs do driver Spark podem ser visualizados por usuários com a permissão PODE ANEXAR A ou PODE GERENCIAR. Para limitar quem pode ler os logs apenas aos usuários com a permissão PODE GERENCIAR, defina spark.databricks.acl.needAdminPermissionToViewLogs como true.

Consulte a Configuração do Spark para saber como adicionar propriedades do Spark a uma configuração do cluster.

Usar clusters de trabalho compartilhados

Para otimizar o uso de recursos com trabalhos que orquestram várias tarefas, use clusters de trabalho compartilhados. Um cluster de trabalho compartilhado permite que várias tarefas no mesmo trabalho sejam executadas para reutilizar o cluster. Você pode usar um único cluster de trabalho para executar todas as tarefas que fazem parte do trabalho ou vários clusters de trabalho otimizados para cargas de trabalho específicas. Para usar um cluster de trabalho compartilhado:

  1. Selecione Novos Clusters de Trabalho ao criar uma tarefa e conclua a configuração do cluster.
  2. Selecione o novo cluster ao adicionar uma tarefa ao trabalho ou crie outro cluster de trabalho. Os clusters que você configurar ao selecionar Novos Clusters de Trabalho estarão disponíveis para todas as tarefas no trabalho.

Um cluster de trabalho compartilhado 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ê precisa adicionar bibliotecas dependentes usando as configurações da tarefa.

Escolher o tipo de cluster correto para seu trabalho

  • Novos Clusters de Trabalho são clusters dedicados a uma execução de tarefa ou a um trabalho. Um cluster de trabalho compartilhado é criado e iniciado quando a primeira tarefa que usa o cluster é iniciada e termina após a última tarefa que usou o cluster ser concluída. O cluster não é encerrado quando ocioso, mas somente após todas as tarefas serem concluídas. Se um cluster de trabalho compartilhado falha ou é encerrado antes da conclusão de todas as tarefas, um novo cluster é criado. Um cluster com escopo para uma única tarefa é criado e iniciado quando a tarefa é iniciada e terminado quando a tarefa é concluída. Na produção, a Databricks recomenda a utilização de novos clusters partilhados ou com âmbito de tarefa para que cada trabalho ou tarefa seja executado num ambiente totalmente isolado.
  • Quando você executa uma tarefa em um novo cluster, a tarefa é tratada como uma carga de trabalho de engenharia de dados (tarefa), sujeita aos preços de carga de trabalho da tarefa. Quando você executa uma tarefa em um cluster de uso geral existente, a tarefa é tratada como uma carga de trabalho de análise de dados (uso geral), sujeita a preços de carga de trabalho de uso geral.
  • Se você selecionar um cluster existente encerrado e o proprietário do trabalho tiver a permissão PODE REINICIAR, o Azure Databricks iniciará o cluster quando o trabalho estiver agendado para execução.
  • Os clusters de uso geral existentes funcionam melhor em tarefas como atualizar dashboards em intervalos regulares.

Usar um pool para reduzir os tempos de inicialização do cluster

Para reduzir a hora de início do novo cluster do trabalho, crie um pool e configure o cluster do trabalho para usar o pool.