Práticas recomendadas para piscinas

Este artigo explica o que são os pools e como o senhor pode configurá-los melhor. Para obter informações sobre como criar um pool, consulte pool configuration reference.

Considerações sobre a piscina

Considere o seguinte ao criar um pool:

  • Crie pool usando tipos de instância e tempos de execução do Databricks com base nas cargas de trabalho de destino.

  • Quando possível, preencha pool com instâncias spot para reduzir custos.

  • Preencha pool com instâncias sob demanda para Job com tempos de execução curtos e requisitos rígidos de tempo de execução.

  • Use tags de pool e Cluster Tag para gerenciar o faturamento.

  • Preencha previamente pool para garantir que as instâncias estejam disponíveis quando os clusters precisarem delas.

Criar pool com base em cargas de trabalho

Se o nó do driver e os nós worker tiverem requisitos diferentes, crie um pool diferente para cada um.

Você pode minimizar o tempo de aquisição de instância criando um pool para cada tipo de instância e tempo de execução do Databricks que sua organização normalmente usa. Por exemplo, se a maioria dos clusters data engineering usam o tipo de instância A, os clusters de ciência de dados usam o tipo de instância B e os clusters analíticos usam o tipo de instância C, crie um pool com cada tipo de instância.

Configure pool para usar instâncias sob demanda para Job com tempos de execução curtos e requisitos de tempo de execução rigorosos. Use instâncias sob demanda para evitar que as instâncias adquiridas sejam perdidas para um licitante com lance mais alto no mercado spot.

Configure pool para usar instâncias spot para clusters que dão suporte ao desenvolvimento interativo ou Job que prioriza a economia de custos em vez da confiabilidade.

pool de tags para gerenciar custos e faturamento

tags pool para o centro de custo correto permite gerenciar custos e estornos de uso. Você pode usar várias tags personalizadas para associar vários centros de custo a um pool. No entanto, é importante entender como tags são propagadas quando um clusters é criado a partir de pool. As tags do pool se propagam para as instâncias subjacentes do provedor clouds , mas as tags dos clustersnão. Aplique todas as tags personalizadas necessárias para gerenciar o estorno do clouds custo do provedor compute ao pool.

As tags de pool e Cluster Tag se propagam para a cobrança do Databricks. Você pode usar a combinação de clusters e tags de pool para gerenciar o estorno de unidades do Databricks.

Para saber mais, consulte Monitorar o uso usando tags.

Configurar pool para controlar custos

Você pode usar as seguintes opções de configuração para ajudar a controlar o custo do pool:

  • Defina Min parado instances como 0 para evitar pagar por instâncias em execução que não estão funcionando. A compensação é um possível aumento no tempo quando um clusters precisa adquirir uma nova instância.

  • Defina o tempo de encerramento automático da instância parado para fornecer um buffer entre o momento em que a instância é liberada dos clusters e quando ela é descartada do pool. Defina isso como um período que permite minimizar custos e, ao mesmo tempo, garantir a disponibilidade de instâncias para Job agendado. Por exemplo, Job A está programado para ser executado às 8h e leva 40 minutos para ser concluído. Job B está programada para ser executada às 9h e leva 30 minutos para ser concluída. Defina o valor de encerramento automático da instância parado como 20 minutos para garantir que as instâncias retornadas ao pool quando Job A for concluído estejam disponíveis quando Job B começar. A menos que sejam reivindicadas por outros clusters, essas instâncias serão encerradas 20 minutos após o término Job B.

  • Defina a capacidade máxima com base no uso previsto. Isso define o limite máximo para o número máximo de instâncias usadas e paradas no pool. Se um Job ou clusters solicitar uma instância de um pool em sua capacidade máxima, a solicitação falhará e os clusters não adquirirão mais instâncias. Portanto, a Databricks recomenda que defina a capacidade máxima apenas se houver uma quota de instância rigorosa ou uma restrição orçamental.

Pré-preencher pool

Para se beneficiar totalmente do pool, você pode preencher previamente pool recém-criado. Defina as instâncias mínimas do parado maiores que zero na configuração do pool. Como alternativa, se você estiver seguindo a recomendação de definir esse valor como zero, use um Job inicial para garantir que pool recém-criado tenha instâncias disponíveis para acesso dos clusters.

Com a abordagem Job inicial, programe um Job com requisitos de tempo de execução flexíveis para ser executado antes Job com requisitos de desempenho mais rigorosos ou antes que os usuários comecem a usar clusters interativos. Após a conclusão do Job , as instâncias usadas para o Job são liberadas de volta para o pool. Defina a configuração Min parado instance como 0 e defina o tempo de encerramento automático da instância do parado alto o suficiente para garantir que as instâncias do parado permaneçam disponíveis para Job subsequente.

Usar um Job inicial permite que as instâncias do pool sejam ativadas, preencham o pool e permaneçam disponíveis para Job downstream ou clusters interativos.