Compartilhar via


Referência de configuração de processamento

Observação

A organização deste artigo assume que você está usando a interface de usuário de computação simples. Para obter uma visão geral das atualizações de formulário simples, consulte Usar o formulário simples para gerenciar a computação.

Este artigo explica as configurações disponíveis ao criar um novo recurso de computação de trabalho ou de todos os fins. A maioria dos usuários cria recursos de computação usando suas políticas atribuídas, o que limita as configurações que podem ser realizadas. Se você não vir uma configuração específica em sua interface do usuário, isso ocorre porque a política selecionada não permite que você defina essa configuração.

Formulário de computação simples

As configurações e ferramentas de gerenciamento descritas neste artigo se aplicam tanto a computação geral quanto a computação de tarefa. Para obter mais considerações sobre como configurar a computação de trabalhos, confira Configurar computação para trabalhos.

Criar um recurso de computação para todos os fins

Para criar um novo recurso de computação para todos os fins:

  1. Na barra lateral do espaço de trabalho, clique em Computar.
  2. Clique no botão Criar cálculo.
  3. Configure o recurso de computação.
  4. Clique em Criar.

Seu novo recurso de computação começará a funcionar automaticamente e estará pronto para uso em breve.

Política de computação

As políticas são um conjunto de regras usadas para limitar as opções de configuração disponíveis aos usuários quando eles criam recursos de computação. Se um usuário não tiver o direito de criação de cluster irrestrito , ele só poderá criar recursos de computação usando suas políticas concedidas.

Para criar recursos de computação de acordo com uma política, selecione uma política no menu suspenso Política.

Por padrão, todos os usuários têm acesso à política de Computação Pessoal, permitindo que eles criem recursos de computação de computador único. Se você precisar de acesso à Computação Pessoal ou a quaisquer políticas adicionais, entre em contato com o administrador do workspace.

Configurações de desempenho

As seguintes configurações aparecem na seção Desempenho da interface do usuário de computação de formulário simples:

Versões do Databricks Runtime

O Databricks Runtime é o conjunto de componentes principais executados em sua computação. Usando o menu suspenso Versão do Databricks Runtime, selecione o runtime. Para obter detalhes sobre versões específicas do Databricks Runtime, consulte notas de versão do Databricks Runtime e compatibilidade das versões. Todas as versões incluem o Apache Spark. O Databricks recomenda o seguinte:

  • Para a computação de uso geral, use a versão mais atual para garantir que você tenha as otimizações mais recentes e a compatibilidade mais atualizada entre o código e os pacotes pré-carregados.
  • Para computações de trabalho que executam cargas de trabalho operacionais, pense em usar a versão do Databricks Runtime com Suporte de Longo Prazo (LTS). O uso da versão lts garantirá que você não tenha problemas de compatibilidade e possa testar completamente sua carga de trabalho antes de atualizar.
  • Para casos de uso de ciência de dados e aprendizado de máquina, considere a versão do Databricks Runtime ML.

Usar a aceleração do Photon

Photon é habilitado por padrão em sistemas que executam o Databricks Runtime 9.1 LTS ou versões superiores.

Para habilitar ou desabilitar a aceleração do Photon, marque a caixa de seleção Usar Aceleração do Photon. Para saber mais sobre o Photon, confira O que é o Photon?.

Tipo de nó de trabalho

Um recurso de computação consiste em um nó de driver e zero ou mais nós de trabalho. Você pode escolher tipos de instância de provedor de nuvem diferentes para o driver e os nós de trabalho, embora, por padrão, o nó do driver use o mesmo tipo de instância que o nó de trabalho. A configuração do nó do driver está abaixo da seção Desempenho avançado.

Diferentes famílias de tipos de instância se ajustam a diferentes casos de uso, como cargas de trabalho com uso intensivo de memória ou com uso intensivo de computação. Você também pode selecionar um pool a ser usado como o nó de trabalho ou driver.

Importante

Não use um pool com instâncias spot como o tipo de driver. Selecione um tipo de driver sob demanda para impedir que o driver seja recuperado. Confira Conectar-se a pools.

Na computação de vários nós, os nós de trabalho executam os executores Spark e outros serviços necessários para o funcionamento adequado do recurso de computação. Quando você distribui sua carga de trabalho com o Spark, todo o processamento distribuído ocorre nos nós de trabalho. O Azure Databricks executa um executor por nó de trabalho. Portanto, os termos executor e trabalho são usados de forma intercambiável no contexto da arquitetura do Databricks.

Dica

Para executar um trabalho do Spark, você precisará de pelo menos um nó de trabalho. Se o recurso de computação não tiver trabalhados, você pode executar comandos que não são do Spark no nó driver, mas os comandos do Spark falharão.

Endereços IP de nó de trabalho

O Azure Databricks inicializa os nós de trabalho com dois endereços IP privados cada. O endereço IP privado principal do nó hospeda o tráfego interno do Azure Databricks. O endereço IP privado secundário é usado pelo contêiner do Spark para comunicação entre clusters. Esse modelo permite que o Azure Databricks forneça isolamento entre vários recursos de computação no mesmo workspace.

Tipos de instância de GPU

Para tarefas computacionalmente desafiadoras que exigem alto desempenho, como aquelas associadas ao aprendizado profundo, o Azure Databricks dá suporte a recursos de computação acelerados com GPUs (unidades de processamento gráfico). Para obter mais informações, consulte Computação habilitada para GPU.

VMs de computação confidencial do Azure

Os tipos de VM de computação confidencial do Azure impedem o acesso não autorizado aos dados enquanto eles estão em uso, inclusive do operador de nuvem. Esse tipo de VM é benéfico para setores e regiões altamente regulamentados, bem como para empresas com dados confidenciais na nuvem. Para obter mais informações sobre a computação confidencial do Azure, consulte a computação confidencial do Azure.

Para executar suas cargas de trabalho usando VMs de computação confidencial do Azure, selecione entre os tipos de VM da série DC ou EC nas listas suspensas de nó de trabalho e driver. Consulte Opções de VM Confidencial do Azure.

Computação de nó único

A caixa de seleção Nó único permite que você crie um recurso de computação de nó único.

A computação de nó único destina-se a trabalhos que usam pequenas quantidades de dados ou cargas de trabalho não distribuídas, como bibliotecas de aprendizado de máquina de nó único. A computação de vários nós deve ser usada para trabalhos maiores com cargas de trabalho distribuídas.

Propriedades de nó único

Um recurso de computação de único nó tem as seguintes propriedades:

  • Executa o Spark localmente.
  • O driver funciona como mestre e trabalho, sem nós de trabalho.
  • Gera um thread de executor para cada núcleo lógico no recurso de computação, menos 1 núcleo reservado para o driver.
  • Toda a saída dos logs stderr, stdout e log4j é salva no log do driver.
  • Não é possível converter para um recurso de computação com múltiplos nós.

Selecionar computação de nó único ou de vários nós

Considere seu caso de uso ao decidir entre a computação de único ou múltiplos nós:

  • O processamento de dados em larga escala esgotará os recursos em um recurso de computação de único nó. Para essas cargas de trabalho, o Databricks recomenda usar a computação de múltiplos nós.

  • A computação de nó único não foi projetada para ser compartilhada. Para evitar conflitos de recursos, o Databricks recomenda o uso de um recurso de computação de múltiplos nós quando a computação precisar ser compartilhada.

  • Um recurso de computação de vários nós não pode ser dimensionado para 0 trabalhadores. Em vez disso, use a computação de nó único.

  • A computação de nó único não é compatível com o isolamento do processo.

  • O agendamento de GPU não está habilitado na computação de nó único.

  • Na computação de nó único, o Spark não consegue ler arquivos Parquet que possuem uma coluna UDT. A seguinte mensagem de erro resulta:

    The Spark driver has stopped unexpectedly and is restarting. Your notebook will be automatically reattached.
    

    Para resolver esse problema, desabilite o leitor de Parquet nativo:

    spark.conf.set("spark.databricks.io.parquet.nativeReader.enabled", False)
    

Habilitar o dimensionamento automático

Quando Habilitar o dimensionamento automático está marcado, você pode fornecer um número mínimo e máximo de trabalhos para o recurso de computação. Em seguida, o Databricks escolherá o número adequado de trabalhos necessários para executar o trabalho.

Para definir o número mínimo e máximo de trabalhadores entre os quais o recurso de computação será dimensionado automaticamente, use os campos Min e Max ao lado do menu suspenso tipo de Trabalhador.

Se você não habilitar o dimensionamento automático, deverá inserir um número fixo de trabalhadores no campo Trabalhadores ao lado do menu suspenso de Tipo de trabalhador.

Observação

Quando o recurso de computação está em execução, a página de detalhes da computação exibe o número de trabalhos alocados. Você pode comparar o número de trabalhadores alocados com a configuração de trabalhadores e fazer ajustes conforme necessário.

Benefícios do dimensionamento automático

Com o dimensionamento automático, o Azure Databricks realoca dinamicamente trabalhos para atender às características do seu trabalho. Determinadas partes do pipeline podem ser mais exigentes computacionalmente do que outras, e o Databricks adiciona automaticamente trabalhos adicionais durante essas fases do seu trabalho (e os remove quando eles não são mais necessários).

O dimensionamento automático facilita a alta utilização porque você não precisa provisionar a computação para corresponder a uma carga de trabalho. Isso se aplica especialmente a cargas de trabalho cujos requisitos mudam ao longo do tempo (como explorar um conjunto de dados ao longo de um dia), mas também pode se aplicar a uma carga de trabalho única e menor cujos requisitos de provisionamento sejam desconhecidos. Assim, o dimensionamento automático oferece duas vantagens:

  • As cargas de trabalho podem ser executadas mais rapidamente em comparação com um recurso de computação subdimensionado e de tamanho fixo.
  • O dimensionamento automático pode reduzir os custos gerais em comparação com um recurso de computação de tamanho fixo.

Dependendo do tamanho fixo do recurso de computação e da carga de trabalho, o dimensionamento automático pode proporcionar um ou ambos esses benefícios simultaneamente. O tamanho da computação pode ficar abaixo do número mínimo de trabalhadores selecionados quando o provedor de nuvem encerrar instâncias. Nesse caso, o Azure Databricks tenta continuamente reprovisionar instâncias para manter o número mínimo de trabalhos.

Observação

O dimensionamento automático não está disponível para trabalhos spark-submit.

Observação

O dimensionamento automático de computação tem limitações ao reduzir o tamanho do cluster para cargas de trabalho do Streaming Estruturado. O Databricks recomenda o uso de Pipelines Declarativos do Lakeflow com dimensionamento automático aprimorado para cargas de trabalho de streaming. Consulte como otimizar a utilização do cluster em Pipelines Declarativos do Lakeflow com dimensionamento automático.

Como o dimensionamento automático se comporta

O workspace no plano Premium usa dimensionamento automático otimizado. Os workspaces no plano de preços padrão usam o dimensionamento automático padrão.

O dimensionamento automático otimizado tem as seguintes características:

  • Escala verticalmente de mínimo para máximo em duas etapas.
  • Pode reduzir verticalmente, mesmo que o recurso de computação não esteja ocioso, ao verificar o estado dos arquivos de redistribuição.
  • Reduz verticalmente com base em uma porcentagem dos nós atuais.
  • Na computação para trabalhos, reduz verticalmente se o recurso de computação estiver subutilizado nos últimos 40 segundos.
  • Na Computação para Todas as Finalidades, reduz verticalmente se o recurso de computação estiver subutilizado nos últimos 150 segundos.
  • A propriedade de configuração spark.databricks.aggressiveWindowDownS Spark especifica em segundos a frequência com que a computação toma decisões de redução. Aumentar o valor faz com que a computação reduza mais lentamente. O valor máximo é 600.

O dimensionamento automático Standard é usado em workspaces de plano Standard. O dimensionamento automático Standard tem as seguintes características:

  • Começa adicionando 8 nós. Em seguida, escala verticalmente de maneira exponencial, adotando o máximo de etapas necessárias para alcançar o máximo.
  • Reduz quando 90% dos nós não estão ocupados por 10 minutos e a computação está ociosa há pelo menos 30 segundos.
  • Reduz verticalmente de forma exponencial, começando com um nó.

Dimensionamento automático com pools

Se você estiver anexando seu recurso de computação a um pool, considere o seguinte:

  • Verifique se o tamanho da computação solicitado é menor ou igual ao número mínimo de instâncias ociosas no pool. Se for maior, o tempo de inicialização da computação será equivalente à computação que não usa um pool.
  • Verifique se o tamanho máximo da computação é menor ou igual ao capacidade máxima do pool. Se for maior, a criação da computação falhará.

Exemplo de dimensionamento automático

Se você reconfigurar um recurso de computação estático para dimensionamento automático, o Azure Databricks redimensiona imediatamente o recurso de computação dentro dos limites mínimo e máximo e, em seguida, inicia o dimensionamento automático. Como exemplo, a tabela a seguir demonstra o que acontece com um recurso de computação com um determinado tamanho inicial se você reconfigurar o recurso de computação para dimensionamento automático entre 5 e 10 nós.

Tamanho inicial Tamanho após a reconfiguração
6 6
12 10
3 5

Configurações avançadas de desempenho

A configuração a seguir aparece na seção Desempenho avançado na interface do usuário de computação de formulário simples.

Instâncias spot

Para reduzir custos, você pode optar por usar Instâncias Spot, também conhecidas como VMs Spot do Azure, marcando a caixa de seleção Instâncias Spot.

Configurar spot

A primeira instância sempre será sob demanda (o nó do driver é sempre sob demanda) e as instâncias subsequentes serão instâncias spot.

Se as instâncias forem removidas devido à indisponibilidade, o Azure Databricks tentará adquirir novas instâncias spot para substituir as instâncias removidas. Se as instâncias spot não puderem ser adquiridas, as instâncias sob demanda serão implantadas para substituir as instâncias removidas. Esse failback sob demanda só é compatível com instâncias spot que foram totalmente adquiridas e estão em execução. As instâncias spot que falham durante a configuração não são substituídas automaticamente.

Além disso, quando novos nós são adicionados aos recursos de computação existentes, o Azure Databricks tenta adquirir instâncias spot para esses nós.

Encerramento automático

Você pode definir a terminação automática para computação na seção Desempenho Avançado . Durante a criação da computação, especifique um período de inatividade em minutos após o qual você deseja que o recurso de computação seja encerrado.

Se a diferença entre a hora atual e o último comando executado no recurso de computação for maior do que o período de inatividade especificado, o Azure Databricks encerrará automaticamente esse recurso de computação. Para obter mais informações sobre o encerramento de computação, consulte Encerrar uma computação.

Tipo de controlador

Você pode selecionar o tipo de driver na seção Desempenho Avançado . O nó driver mantém as informações de estado de todos os notebooks conectados ao recurso de computação. O nó driver também mantém o SparkContext, interpreta todos os comandos executados a partir de um notebook ou uma biblioteca no recurso de computação, e executa o mestre do Apache Spark, que coordena com os executores do Spark.

O valor padrão do tipo de nó do driver é o mesmo do tipo de nó de trabalho. Você pode escolher um tipo de nó do driver maior com mais memória se está planejando collect() muitos dados de trabalhados do Spark e analisá-los no notebook.

Dica

Como o nó do driver mantém todas as informações de estado dos notebooks anexados, lembre-se de desanexar os notebooks não utilizados do nó do driver.

Marcas

As etiquetas permitem que você monitore facilmente o custo dos recursos de computação utilizados por diversos grupos na sua organização. Especifique marcas como pares chave-valor ao criar computação e o Azure Databricks aplica essas marcas a recursos de nuvem, como VMs e volumes de disco, bem como os logs de uso do Databricks.

Para a computação iniciada a partir de pools, as marcas personalizadas são aplicadas apenas aos relatórios de uso do DBU e não são propagadas para recursos de nuvem.

Para obter informações detalhadas sobre como os tipos de marcas de pool e computação funcionam juntos, confira Usar marcas para uso de atributos e rastreamento

Para adicionar tags ao recurso computacional:

  1. Na seção Marcas, adicione um par chave-valor para cada marca personalizada.
  2. Clique em Adicionar.

Configurações avançadas

As seguintes configurações aparecem na seção Avançado da interface de usuário de cálculo de formulário simples:

Modos de acesso

O modo de acesso é um recurso de segurança que determina quem pode usar o recurso de computação e os dados que eles podem acessar usando o recurso de computação. Cada recurso de computação no Azure Databricks tem um modo de acesso. As configurações do modo de acesso estão localizadas na seção Avançado da UI de computação de formulário simples.

A seleção do modo de acesso é Automática por padrão, o que significa que o modo de acesso é escolhido automaticamente para você com base no Databricks Runtime selecionado. Runtimes de aprendizado de máquina e Databricks Runtimes inferiores ao padrão 14.3 para Dedicado, caso contrário, é usado o Standard.

O Databricks recomenda que você use o modo de acesso padrão para todas as cargas de trabalho. Use o modo de acesso dedicado somente se a funcionalidade necessária não tiver suporte no modo de acesso padrão.

Modo de acesso Visível para o usuário Apoio UC Idiomas com suporte Observações
Dedicado (anteriormente usuário único) Sempre Sim Python, SQL, Scala, R Pode ser atribuído e usado por um único usuário ou grupo.
Standard (anteriormente compartilhado) Sempre Sim Python, SQL, Scala (em computação com Catálogo Unity habilitado, usando Databricks Runtime 13.3 LTS e versões superiores) Pode ser usado por vários usuários com isolamento de dados entre os usuários.

Para obter informações detalhadas sobre o suporte funcional para cada um desses modos de acesso, consulte as limitações nos modos de acesso de computação para o Unity Catalog.

Observação

No Databricks Runtime 13.3 LTS e superior, há suporte para scripts e bibliotecas de inicialização em todos os modos de acesso. Os requisitos e os níveis de suporte variam. Consulte Onde os scripts de inicialização podem ser instalados? e Bibliotecas com escopo de computação.

Habilitar o dimensionamento automático do armazenamento local

Em geral, pode ser difícil estimar quanto espaço em disco um trabalho específico usará. Para evitar que você precise estimar quantos gigabytes de disco gerenciado anexar à sua computação no momento da criação, o Azure Databricks habilita automaticamente o dimensionamento automático do armazenamento local em toda a computação do Azure Databricks.

Com armazenamento local com dimensionamento automático, o Azure Databricks monitora a disponibilidade de espaço livre em disco nos nós de trabalho do Spark de sua computação. Se um trabalhador começar a ficar com pouco espaço em disco, o Databricks anexará automaticamente um novo disco gerenciado ao trabalhador antes que ele fique sem espaço em disco. Os discos são anexados até o limite de 5 TB de espaço total em disco por máquina virtual (incluindo também o armazenamento local inicial da máquina virtual).

Os discos gerenciados anexados a uma máquina virtual só são desanexados quando a máquina virtual é retornada ao Azure. Ou seja, os discos gerenciados nunca são desanexados de uma máquina virtual, desde que façam parte de uma computação em execução. Para reduzir o uso do disco gerenciado, o Azure Databricks recomenda usar esse recurso na computação configurada com computação de dimensionamento automático ou terminação automática.

Criptografia de disco local

Importante

Esse recurso está em uma versão prévia.

Alguns tipos de instância que você usa para executar a computação podem ter discos conectados localmente. O Azure Databricks pode armazenar dados aleatórios ou efêmeros nesses discos conectados localmente. Para garantir que todos os dados em repouso sejam criptografados para todos os tipos de armazenamento, incluindo dados de shuffle armazenados temporariamente nos discos locais de seus recursos de computação, você pode habilitar a criptografia nos discos locais.

Importante

Suas cargas de trabalho podem ser executadas mais lentamente devido ao impacto no desempenho por conta da leitura e da gravação de dados criptografados entre volumes locais.

Quando a criptografia de disco local está habilitada, o Azure Databricks gera uma chave de criptografia localmente que é exclusiva para cada nó de cluster e é usada para criptografar todos os dados armazenados em discos locais. O escopo da chave é local para cada nó de computação e é destruído junto com o nó de computação em si. Durante seu tempo de vida, a chave reside na memória para criptografia e descriptografia e é armazenada criptografada no disco.

Para habilitar a criptografia de disco local, você precisa usar a API de Clusters. Durante a criação ou edição da computação, defina enable_local_disk_encryption como true.

Configuração do Spark

Para ajustar trabalhos do Spark, você pode fornecer propriedades de configuração personalizadas Spark.

  1. Na página de configuração de computação, clique na alternância Avançado .

  2. Clique na guia Spark.

    Configuração do Spark

    Na configuração do Spark, insira as propriedades de configuração como um par chave-valor por linha.

Ao configurar a computação usando a API de Clusters, defina as propriedades do Spark no campo spark_conf na API de criação de cluster ou API de atualização de cluster.

Para impor as configurações do Spark na computação, os administradores do workspace podem usar políticas de computação.

Recuperar uma propriedade de configuração do Spark a partir de um segredo

O Databricks recomenda o armazenamento de informações confidenciais, por exemplo senhas, como segredo em vez de texto não criptografado. Para fazer referência a um segredo na configuração do Spark, use a seguinte sintaxe:

spark.<property-name> {{secrets/<scope-name>/<secret-name>}}

Por exemplo, para definir uma propriedade de configuração do Spark chamada password como o valor do segredo armazenado em secrets/acme_app/password:

spark.password {{secrets/acme-app/password}}

Para obter mais informações, consulte Gerenciar segredos.

Acesso SSH a recursos de computação

Por motivos de segurança, no Azure Databricks a porta SSH está fechada por padrão. Se você quiser habilitar o acesso SSH aos clusters Apache Spark, consulte SSH para o nó de driver.

Observação

O SSH pode ser habilitado somente se o workspace for implantado em sua própria rede virtual do Azure.

Variáveis de ambiente

Configure variáveis de ambiente personalizadas que você pode acessar a partir de scripts de inicialização executados no recurso de computação. Databricks também fornece variáveis de ambiente predefinidas que você pode usar em scripts init. Não é possível substituir essas variáveis de ambiente predefinidas.

  1. Na página de configuração de computação, clique na alternância Avançado .

  2. Clique na guia Spark.

  3. Defina as variáveis de ambiente no campo Variáveis de ambiente .

    Campo de variáveis de ambiente

Você também pode definir variáveis de ambiente usando o campo spark_env_vars no Criar de API de cluster ou Atualizar a API do cluster.

Entrega de log de computação

Ao criar uma computação de uso geral ou de trabalhos, você pode especificar um local para entregar os logs de cluster para o nó de driver do Spark, nós de trabalho e eventos. Os logs são entregues a cada cinco minutos e arquivados por hora no destino escolhido. O Databricks fornecerá todos os logs gerados até que o recurso de computação seja encerrado.

Para configurar o local de entrega de logs:

  1. Na página de computação, clique na alternância Avançado .
  2. Clique na guia Registrar em log.
  3. Selecione um tipo de destino.
  4. Insira o Caminho do log.

Para armazenar os logs, o Databricks cria uma subpasta no caminho de log escolhido com o nome do cluster_id da computação.

Por exemplo, se o caminho de log especificado for /Volumes/catalog/schema/volume, os logs para 06308418893214 serão entregues para /Volumes/catalog/schema/volume/06308418893214.

Observação

A entrega de logs para volumes está na Visualização Pública e só tem suporte em recursos computacionais habilitados para o Catálogo do Unity com o modo de acesso Standard ou modo de acesso dedicado atribuído a um usuário. Não há suporte para esse recurso na computação com o modo de acesso dedicado atribuído a um grupo. Se você selecionar um volume como caminho, certifique-se de ter as permissões READ VOLUME e WRITE VOLUME no volume. Veja Quais são os privilégios para volumes?.

Observação

Esse recurso também está disponível na API REST. Consulte a API de clusters.