Pular para o conteúdo principal

O que são scripts de inicialização?

Um init script (script de inicialização) é um script shell que é executado durante o startup de cada nó de cluster antes de o driver Apache Spark ou executor JVM começar. Este artigo fornece recomendações para informações de script de inicialização e configuração, caso o senhor precise usá-las.

Recomendações para o script de inicialização

Databricks recomenda o uso do recurso de plataforma integrada em vez do script de inicialização sempre que possível. O uso generalizado do script de inicialização pode retardar a migração para novas versões do Databricks Runtime e impedir a adoção de algumas otimizações do Databricks.

important

Se o senhor precisar migrar do script de inicialização em DBFS, consulte Migrar script de inicialização de DBFS.

Por exemplo, o site Databricks recomenda o uso de políticas compute para definir propriedades do sistema, variáveis ambientais e parâmetros de configuração Spark. Consulte a referência da política de computação.

Se o senhor precisar usar o script de inicialização:

  • Gerenciar o script de inicialização usando as políticas compute ou o script de inicialização com escopo de cluster em vez do script de inicialização global. Consulte init script types.
  • Gerenciar a instalação da biblioteca para ambientes de produção e interativos usando as políticas do site compute. Não instale o biblioteca usando o script de inicialização.
  • Use o modo de acesso padrão (antigo modo de acesso compartilhado) para todas as cargas de trabalho. Use somente o modo de acesso dedicado (antigo modo de acesso de usuário único) se a funcionalidade necessária não for suportada pelo modo de acesso padrão.
  • Use as novas versões do Databricks Runtime e o Unity Catalog para todas as cargas de trabalho.

A tabela a seguir fornece recomendações organizadas por versão do Databricks Runtime e habilitação do Unity Catalog.

ambiente

Recomendação

Databricks Runtime 13.3 LTS e acima com Unity Catalog.

Armazene o script de inicialização em Unity Catalog volumes.

Cargas de trabalho sem Unity Catalog onde o script de inicialização não faz referência a outros arquivos.

Armazene o script de inicialização como arquivosworkspace. (O limite de tamanho do arquivo é de 500 MB.)

Cargas de trabalho sem Unity Catalog em que o script de inicialização faz referência a outros arquivos, como biblioteca, arquivos de configuração ou scripts shell.

Armazene o script de inicialização usando o armazenamento de objetos na nuvem.

Quais são os tipos de script de inicialização suportados pelo Databricks?

Databricks oferece suporte a dois tipos de script de inicialização: com escopo de cluster e global, mas recomenda-se o uso de script de inicialização com escopo de cluster.

  • clustering-scoped : execução em todos os clusters configurados com o script. Esta é a maneira recomendada para executar um init script. Consulte script de inicialização com escopo de cluster.
  • Global : execução em todos os clusters no site workspace configurados com modo de acesso dedicado ou modo de acesso compartilhado sem isolamento. Esses scripts de inicialização podem causar problemas inesperados, como conflitos de biblioteca. Somente os usuários administradores do workspace podem criar um script de inicialização global. Consulte Script de inicialização global.

Sempre que você alterar qualquer tipo de init script, será necessário reiniciar todos os clusters afetados pelo script.

Execução do script de inicialização global antes do script de inicialização com escopo de cluster.

Onde o script de inicialização pode ser instalado?

O senhor pode armazenar e configurar o script de inicialização a partir de arquivos workspace, volumes Unity Catalog e armazenamento de objetos na nuvem, mas o script de inicialização não é compatível com todas as configurações de clustering e nem todos os arquivos podem ser referenciados a partir do script de inicialização. Para obter recomendações de ambiente para o script de inicialização, consulte Recomendações para o script de inicialização.

A tabela a seguir indica o suporte ao script de inicialização com base no local de origem e no modo de acesso ao clustering. A versão do Databricks Runtime listada é a versão mínima necessária para usar a combinação. Para obter informações sobre os modos de acesso ao clustering, consulte Modos de acesso.

nota

O modo de acesso padrão exige que um administrador adicione o script de inicialização a um allowlist. Consulte Allowlist biblioteca e script de inicialização em compute com o modo de acesso padrão (anteriormente, modo de acesso compartilhado).

Modo de acesso padrão

Modo de acesso único

Modo de acesso compartilhado sem isolamento

arquivos do espaço de trabalho

Não suportado

Todas as versões suportadas do Databricks Runtime.

Nas versões abaixo 11.3 LTS, o script de inicialização que faz referência a outros arquivos workspace não é compatível.

Todas as versões suportadas do Databricks Runtime.

Volumes

13.3 LTS e acima

13.3 LTS e acima

Não suportado

Armazenamento em nuvem

13.3 LTS e acima

Todas as versões suportadas do Databricks Runtime

Todas as versões suportadas do Databricks Runtime

Migrar o script de inicialização de DBFS

atenção

O script init em DBFS chegou ao fim da vida útil e não pode mais ser usado. O senhor deve migrar seu script de inicialização para um local compatível antes de começar compute. Armazene o script de inicialização em Unity Catalog Volumes, como arquivos workspace ou no armazenamento de objetos na nuvem.

Os usuários que precisam migrar o script de inicialização de DBFS podem usar o seguinte guia. Verifique se você identificou o alvo correto para sua configuração. Consulte Recomendações para o script de inicialização.