Otimize o desempenho e os custos do ambiente

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Esta página explica como ajustar os parâmetros de escala e desempenho do seu ambiente às necessidades do seu projeto, para que tenha um desempenho melhorado e reduza os custos dos recursos que não são usados pelo seu ambiente.

Outras páginas sobre o aumento da escala e a otimização:

Vista geral do processo de otimização

A alteração dos parâmetros do seu ambiente pode afetar muitos aspetos do desempenho do ambiente. Recomendamos que otimize o seu ambiente em iterações:

  1. Comece com predefinições de ambiente.
  2. Execute os seus DAGs.
  3. Observe o desempenho do seu ambiente.
  4. Ajuste a escala do ambiente e os parâmetros de desempenho e, em seguida, repita o passo anterior.

Comece com predefinições de ambiente

Quando cria um ambiente na Google Cloud consola, pode selecionar um de três predefinições de ambiente. Estas predefinições definem a escala inicial e a configuração de desempenho do seu ambiente. Depois de criar o ambiente, pode alterar todos os parâmetros de escala e desempenho fornecidos por uma predefinição.

Recomendamos que comece por uma das predefinições, com base nas seguintes estimativas:

  • Número total de DAGs que planeia implementar no ambiente
  • Número máximo de execuções de DAG em simultâneo
  • Número máximo de tarefas simultâneas

O desempenho do seu ambiente depende da implementação de DAGs específicos que executa no seu ambiente. A tabela seguinte apresenta estimativas baseadas no consumo médio de recursos. Se espera que os DAGs consumam mais recursos, ajuste as estimativas em conformidade.

Predefinição recomendada Total de DAGs Máximo de execuções de DAG simultâneas Máximo de tarefas simultâneas
Pequeno 50 15 18
Médio 250 60 100
Grande 1000 250 400

Por exemplo, um ambiente tem de executar 40 DAGs. Todos os DAGs têm de ser executados ao mesmo tempo com uma tarefa ativa cada. Este ambiente usaria uma predefinição Média, porque o número máximo de execuções e tarefas de DAGs simultâneas excede as estimativas recomendadas para a predefinição Pequena.

Execute os seus DAGs

Depois de criar o ambiente, carregue os seus DAGs para o mesmo. Execute os seus DAGs e observe o desempenho do ambiente.

Recomendamos que execute os seus DAGs de acordo com um horário que reflita a aplicação dos DAGs na vida real. Por exemplo, se quiser executar vários DAGs ao mesmo tempo, certifique-se de que verifica o desempenho do seu ambiente quando todos estes DAGs estiverem a ser executados em simultâneo.

Observe o desempenho do seu ambiente

Esta secção foca-se nos aspetos mais comuns de capacidade e ajuste de desempenho do Cloud Composer 2. Recomendamos que siga este guia passo a passo, uma vez que as considerações de desempenho mais comuns são abordadas primeiro.

Aceda ao painel de controlo de monitorização

Pode monitorizar as métricas de desempenho do seu ambiente no painel de controlo de monitorização do ambiente.

Para aceder ao painel de controlo de monitorização do seu ambiente:

  1. Na Google Cloud consola, aceda à página Ambientes.

    Aceder a Ambientes

  2. Clique no nome do seu ambiente.

  3. Aceda ao separador Monitorização.

Monitorize as métricas de memória e CPU do programador

As métricas de CPU e memória do programador do Airflow ajudam a verificar se o desempenho do programador é um gargalo no desempenho geral do Airflow.

Gráficos para programadores do Airflow
Figura 1. Gráficos para programadores do Airflow (clique para aumentar)

No painel de controlo de monitorização, na secção Schedulers, observe os gráficos dos schedulers do Airflow do seu ambiente:

  • Utilização da CPU dos programadores total
  • Utilização de memória total dos programadores

Ajuste de acordo com as suas observações:

Monitorize o tempo de análise total de todos os ficheiros DAG

Os programadores analisam os DAGs antes de agendar execuções de DAGs. Se os DAGs demorarem muito tempo a analisar, isto consome a capacidade do programador e pode reduzir o desempenho das execuções de DAGs.

Gráfico do tempo de análise total do DAG
Figura 2. Gráfico do tempo de análise do DAG (clique para aumentar)

No painel de controlo de monitorização, na secção Estatísticas de DAG, observe os gráficos relativos ao tempo de análise de DAG total.

Se o número exceder cerca de 10 segundos, os seus programadores podem ficar sobrecarregados com a análise de DAGs e não conseguem executar DAGs de forma eficaz. A frequência de análise de DAG predefinida no Airflow é de 30 segundos. Se o tempo de análise de DAG exceder este limite, os ciclos de análise começam a sobrepor-se, o que esgota a capacidade do programador.

De acordo com as suas observações, pode querer:

Monitorize as remoções de pods de trabalho

A remoção de pods pode ocorrer quando um pod específico no cluster do seu ambiente atinge os limites de recursos.

Gráfico de despejos de agrupamentos de trabalho
Figura 3. Gráfico que apresenta despejos de pods de trabalho (clique para ampliar)

Se um pod de trabalho do Airflow for removido, todas as instâncias de tarefas em execução nesse pod são interrompidas e, posteriormente, marcadas como falhadas pelo Airflow.

A maioria dos problemas com despejos de pods de trabalho ocorre devido a situações de falta de memória nos trabalhadores.

No painel de controlo de monitorização, na secção Workers, observe os gráficos de remoções de pods de trabalhadores para o seu ambiente.

O gráfico Utilização de memória total dos trabalhadores mostra uma perspetiva total do ambiente. Um único worker pode continuar a exceder o limite de memória, mesmo que a utilização de memória seja saudável ao nível do ambiente.

De acordo com as suas observações, pode querer:

Monitorize trabalhadores ativos

O número de trabalhadores no seu ambiente é automaticamente dimensionado em resposta às tarefas em fila.

Gráficos de trabalhadores ativos e tarefas em fila
Figura 4. Gráficos de trabalhadores ativos e tarefas em fila (clique para ampliar)

No painel de controlo de monitorização, na secção Trabalhadores, observe os gráficos relativos ao número de trabalhadores ativos e ao número de tarefas na fila:

  • Trabalhadores ativos
  • Tarefas do Airflow

Ajuste de acordo com as suas observações:

  • Se o ambiente atingir frequentemente o limite máximo de trabalhadores e, ao mesmo tempo, o número de tarefas na fila do Celery for continuamente elevado, pode querer aumentar o número máximo de trabalhadores.
  • Se existirem longos atrasos na programação entre tarefas, mas, ao mesmo tempo, o ambiente não for dimensionado até ao número máximo de trabalhadores, é provável que exista uma definição do Airflow que limite a execução e impeça os mecanismos do Cloud Composer de dimensionar o ambiente. Uma vez que os ambientes do Cloud Composer 2 são dimensionados com base no número de tarefas na fila do Celery, configure o Airflow para não limitar as tarefas que entram na fila:

    • Aumentar a simultaneidade dos trabalhadores. A simultaneidade dos trabalhadores tem de ser definida para um valor superior ao número máximo esperado de tarefas simultâneas, dividido pelo número máximo de trabalhadores no ambiente.
    • Aumente a simultaneidade de DAGs se um único DAG estiver a executar um grande número de tarefas em paralelo, o que pode levar a atingir o número máximo de instâncias de tarefas em execução por DAG.
    • Aumente o número máximo de execuções ativas por DAG se executar o mesmo DAG várias vezes em paralelo, o que pode levar o Airflow a limitar a execução porque o limite máximo de execuções ativas por DAG foi atingido.

Monitorize a utilização de memória e CPU dos trabalhadores

Monitorize a utilização total da CPU e da memória agregada em todos os trabalhadores no seu ambiente para determinar se os trabalhadores do Airflow utilizam os recursos do seu ambiente corretamente.

Gráficos de memória e CPU dos trabalhadores
Figura 5. Gráficos de CPU e memória dos trabalhadores (clique para aumentar)

No painel de controlo de monitorização, na secção Workers, observe os gráficos da utilização de CPU e memória pelos workers do Airflow:

  • Utilização da CPU total dos trabalhadores
  • Utilização de memória total dos trabalhadores

Estes gráficos representam a utilização de recursos agregada. Os trabalhadores individuais podem continuar a atingir os respetivos limites de capacidade, mesmo que a vista agregada mostre capacidade disponível.

Ajuste de acordo com as suas observações:

Monitorize tarefas em execução e em fila

Pode monitorizar o número de tarefas em fila e em execução para verificar a eficiência do processo de agendamento.

Gráfico que apresenta as tarefas em execução e em fila
Figura 6. Gráfico que apresenta as tarefas em execução e em fila (clique para aumentar)

No painel de controlo de monitorização, na secção Trabalhadores, observe o gráfico Tarefas do Airflow para o seu ambiente.

As tarefas na fila estão a aguardar a execução pelos trabalhadores. Se o seu ambiente tiver tarefas em fila, isto pode significar que os trabalhadores no seu ambiente estão ocupados a executar outras tarefas.

Algumas filas estão sempre presentes num ambiente, especialmente durante os picos de processamento. No entanto, se observar um número elevado de tarefas em fila ou uma tendência crescente no gráfico, isto pode indicar que os trabalhadores não têm capacidade suficiente para processar as tarefas ou que o Airflow está a limitar a execução de tarefas.

Normalmente, observa-se um número elevado de tarefas em fila quando o número de tarefas em execução também atinge o nível máximo.

Para resolver ambos os problemas:

Monitorize a utilização de memória e CPU da base de dados

Os problemas de desempenho da base de dados do Airflow podem levar a problemas gerais de execução do DAG. Normalmente, a utilização do disco da base de dados não é motivo de preocupação, uma vez que o armazenamento é automaticamente expandido conforme necessário.

Gráficos de memória e CPU da base de dados
Figura 7. Gráficos de memória e CPU da base de dados (clique para aumentar)

No painel de controlo de monitorização, na secção Base de dados SQL, observe os gráficos de utilização de memória e CPU pela base de dados do Airflow:

  • Utilização da CPU da base de dados
  • Utilização de memória da base de dados

Se a utilização da CPU da base de dados exceder 80% durante mais de alguns por cento do tempo total, a base de dados está sobrecarregada e requer o dimensionamento.

As definições de tamanho da base de dados são controladas pela propriedade de tamanho do ambiente do seu ambiente. Para aumentar ou diminuir a escala da base de dados, altere o tamanho do ambiente para um nível diferente (Pequeno, Médio ou Grande). Aumentar o tamanho do ambiente aumenta os custos do ambiente.

Monitorize a latência do agendamento de tarefas

Se a latência entre tarefas exceder os níveis esperados (por exemplo, 20 segundos ou mais), isto pode indicar que o ambiente não consegue processar a carga de tarefas geradas pelas execuções de DAGs.

Gráfico de latência de tarefas (IU do Airflow)
Figura 8. Gráfico de latência das tarefas, IU do Airflow (clique para aumentar)

Pode ver o gráfico de latência do agendamento de tarefas na IU do Airflow do seu ambiente.

Neste exemplo, os atrasos (2,5 e 3,5 segundos) estão bem dentro dos limites aceitáveis, mas as latências significativamente mais elevadas podem indicar que:

Monitorize a CPU e a memória do servidor Web

O desempenho do servidor Web do Airflow afeta a IU do Airflow. Não é comum o servidor Web estar sobrecarregado. Se isto acontecer, o desempenho da IU do Airflow pode deteriorar-se, mas isto não afeta o desempenho das execuções de DAG.

Gráficos de CPU e memória do servidor Web
Figura 9. Gráficos de CPU e memória do servidor Web (clique para aumentar)

No painel de controlo de monitorização, na secção Servidor Web, observe os gráficos do servidor Web do Airflow:

  • Utilização da CPU do servidor Web
  • Utilização de memória do servidor Web

Com base nas suas observações:

Ajuste a escala e os parâmetros de desempenho do ambiente

Altere o número de programadores

Ajustar o número de programadores melhora a capacidade do programador e a resiliência do agendamento do Airflow.

Se aumentar o número de programadores, aumenta o tráfego para e a partir da base de dados do Airflow. Recomendamos a utilização de dois programadores do Airflow na maioria dos cenários. A utilização de três programadores só é necessária em casos raros que exigem considerações especiais. A configuração de mais de três programadores leva frequentemente a um desempenho inferior do ambiente.

Se precisar de um agendamento mais rápido:

Exemplos:

Consola

Siga os passos em Ajuste o número de programadores para definir o número necessário de programadores para o seu ambiente.

gcloud

Siga os passos em Ajuste o número de programadores para definir o número necessário de programadores para o seu ambiente.

O exemplo seguinte define o número de agendadores como dois:

gcloud composer environments update example-environment \
    --scheduler-count=2

Terraform

Siga os passos em Ajuste o número de programadores para definir o número necessário de programadores para o seu ambiente.

O exemplo seguinte define o número de agendadores como dois:

resource "google_composer_environment" "example-environment" {

  # Other environment parameters

  config {
    workloads_config {
      scheduler {
        count = 2
      }
    }
  }
}

Alterar a CPU e a memória para programadores

Os parâmetros de CPU e memória destinam-se a cada programador no seu ambiente. Por exemplo, se o seu ambiente tiver dois programadores, a capacidade total é o dobro do número especificado de CPU e memória.

Consola

Siga os passos em Ajuste os parâmetros de desempenho e escala do servidor Web, do programador e do trabalhador para definir a CPU e a memória para os programadores.

gcloud

Siga os passos em Ajuste os parâmetros de desempenho e escala do trabalhador, do programador e do servidor Web para definir a CPU e a memória para os programadores.

O exemplo seguinte altera a CPU e a memória dos programadores. Pode especificar apenas atributos de CPU ou de memória, consoante a necessidade.

gcloud composer environments update example-environment \
  --scheduler-cpu=0.5 \
  --scheduler-memory=3.75

Terraform

Siga os passos em Ajuste os parâmetros de desempenho e escala do servidor Web, do programador e do trabalhador para definir a CPU e a memória para os programadores.

O exemplo seguinte altera a CPU e a memória dos programadores. Pode omitir os atributos de CPU ou memória, consoante a necessidade.

resource "google_composer_environment" "example-environment" {

  # Other environment parameters

  config {
    workloads_config {
      scheduler {
        cpu = "0.5"
        memory_gb = "3.75"
      }
    }
  }
}

Altere o número máximo de trabalhadores

Aumentar o número máximo de trabalhadores permite que o seu ambiente seja dimensionado automaticamente para um número superior de trabalhadores, se necessário.

Diminuir o número máximo de trabalhadores reduz a capacidade máxima do ambiente, mas também pode ser útil para reduzir os custos do ambiente.

Exemplos:

Consola

Siga os passos em Ajuste o número mínimo e máximo de trabalhadores para definir o número máximo de trabalhadores necessário para o seu ambiente.

gcloud

Siga os passos em Ajuste o número mínimo e máximo de trabalhadores para definir o número máximo de trabalhadores necessário para o seu ambiente.

O exemplo seguinte define o número máximo de trabalhadores como seis:

gcloud composer environments update example-environment \
    --max-workers=6

Terraform

Siga os passos em Ajuste o número mínimo e máximo de trabalhadores para definir o número máximo de trabalhadores necessário para o seu ambiente.

O exemplo seguinte define o número máximo de agendadores como seis:

resource "google_composer_environment" "example-environment" {

  # Other environment parameters

  config {
    workloads_config {
      worker {
        max_count = "6"
      }
    }
  }
}

Altere a CPU e a memória do trabalhador

  • Diminuir a memória do trabalhador pode ser útil quando o gráfico de utilização do trabalhador indica uma utilização de memória muito baixa.

  • O aumento da memória do trabalhador permite que os trabalhadores processem mais tarefas em simultâneo ou processem tarefas com utilização intensiva de memória. Pode resolver o problema das remoções de pods de trabalhadores.

  • Diminuir a CPU do trabalhador pode ser útil quando o gráfico de utilização da CPU do trabalhador indica que os recursos da CPU estão altamente sobrealocados.

  • Aumentar a CPU do trabalhador permite que os trabalhadores processem mais tarefas em simultâneo e, em alguns casos, reduz o tempo necessário para processar estas tarefas.

A alteração da CPU ou da memória do trabalhador reinicia os trabalhadores, o que pode afetar as tarefas em execução. Recomendamos que o faça quando não estiverem a ser executados DAGs.

Os parâmetros de CPU e memória destinam-se a cada trabalhador no seu ambiente. Por exemplo, se o seu ambiente tiver quatro trabalhadores, a capacidade total é quatro vezes o número especificado de CPU e memória.

Consola

Siga os passos em Ajuste os parâmetros de desempenho e escala do trabalhador, do programador e do servidor Web para definir a CPU e a memória dos trabalhadores.

gcloud

Siga os passos em Ajuste os parâmetros de desempenho e escala do trabalhador, do programador e do servidor Web para definir a CPU e a memória dos trabalhadores.

O exemplo seguinte altera a CPU e a memória dos trabalhadores. Pode omitir o atributo de CPU ou memória, se necessário.

gcloud composer environments update example-environment \
  --worker-memory=3.75 \
  --worker-cpu=2

Terraform

Siga os passos em Ajuste os parâmetros de desempenho e escala do trabalhador, do programador e do servidor Web para definir a CPU e a memória dos trabalhadores.

O exemplo seguinte altera a CPU e a memória dos trabalhadores. Pode omitir o parâmetro de CPU ou memória, se necessário.

resource "google_composer_environment" "example-environment" {

  # Other environment parameters

  config {
    workloads_config {
      worker {
        cpu = "2"
        memory_gb = "3.75"
      }
    }
  }
}

Altere a CPU e a memória do servidor Web

Diminuir a CPU ou a memória do servidor Web pode ser útil quando o gráfico de utilização do servidor Web indica que está continuamente subutilizado.

A alteração dos parâmetros do servidor Web reinicia o servidor Web, o que provoca uma indisponibilidade temporária do servidor Web. Recomendamos que faça alterações fora do horário de utilização normal.

Consola

Siga os passos em Ajuste os parâmetros de desempenho e escala do trabalhador, do programador e do servidor Web para definir a CPU e a memória para o servidor Web.

gcloud

Siga os passos em Ajuste os parâmetros de desempenho e escala do servidor Web, do programador e do trabalhador para definir a CPU e a memória para o servidor Web.

O exemplo seguinte altera a CPU e a memória do servidor Web. Pode omitir os atributos de CPU ou memória, consoante a necessidade.

gcloud composer environments update example-environment \
    --web-server-cpu=2 \
    --web-server-memory=3.75

Terraform

Siga os passos em Ajuste os parâmetros de desempenho e escala do trabalhador, do programador e do servidor Web para definir a CPU e a memória para o servidor Web.

O exemplo seguinte altera a CPU e a memória do servidor Web. Pode omitir os atributos de CPU ou memória, consoante a necessidade.

resource "google_composer_environment" "example-environment" {

  # Other environment parameters

  config {
    workloads_config {
      web_server {
        cpu = "2"
        memory_gb = "3.75"
      }
    }
  }
}

Altere o tamanho do ambiente

A alteração do tamanho do ambiente modifica a capacidade dos componentes de back-end do Cloud Composer, como a base de dados do Airflow e a fila do Airflow.

  • Considere alterar o tamanho do ambiente para um tamanho mais pequeno (por exemplo, de grande para médio ou de médio para pequeno) quando as métricas de utilização da base de dados mostrarem uma subutilização substancial.
  • Considere aumentar o tamanho do ambiente se observar uma utilização elevada da base de dados do Airflow.

Consola

Siga os passos em Ajuste o tamanho do ambiente para definir o tamanho do ambiente.

gcloud

Siga os passos em Ajuste o tamanho do ambiente para definir o tamanho do ambiente.

O exemplo seguinte altera o tamanho do ambiente para Médio.

gcloud composer environments update example-environment \
    --environment-size=medium

Terraform

Siga os passos em Ajuste o tamanho do ambiente para definir o tamanho do ambiente.

O exemplo seguinte altera o tamanho do ambiente para Médio.

resource "google_composer_environment" "example-environment" {

  # Other environment parameters

  config {
    environment_size = "medium"
  }
}

Alterar o intervalo de apresentação do diretório DAG

Aumentar o intervalo de apresentação do diretório DAG reduz a carga do programador associada à descoberta de novos DAGs no contentor do ambiente.

  • Considere aumentar este intervalo se implementar novos DAGs com pouca frequência.
  • Considere diminuir este intervalo se quiser que o Airflow reaja mais rapidamente aos ficheiros DAG implementados recentemente.

Para alterar este parâmetro, substitua a seguinte opção de configuração do Airflow:

Secção Chave Valor Notas
scheduler dag_dir_list_interval Novo valor para o intervalo da ficha O valor predefinido, em segundos, é 120.

Alterar o intervalo de análise do ficheiro DAG

Aumentar o intervalo de análise de ficheiros DAG reduz a carga do programador associada à análise contínua de DAGs no conjunto de DAGs.

Considere aumentar este intervalo quando tiver um número elevado de DAGs que não se alteram com muita frequência ou observar uma carga elevada do programador em geral.

Para alterar este parâmetro, substitua a seguinte opção de configuração do Airflow:

Secção Chave Valor Notas
scheduler min_file_process_interval Novo valor para o intervalo de análise DAG O valor predefinido, em segundos, é 30.

Simultaneidade de trabalhadores

O desempenho da concorrência e a capacidade de dimensionamento automático do seu ambiente estão relacionados com duas definições:

  • O número mínimo de trabalhadores do Airflow
  • o parâmetro [celery]worker_concurrency

Os valores predefinidos fornecidos pelo Cloud Composer são ideais para a maioria dos exemplos de utilização, mas o seu ambiente pode beneficiar de ajustes personalizados.

Considerações sobre o desempenho da simultaneidade de trabalhadores

O parâmetro [celery]worker_concurrency define o número de tarefas que um único trabalhador pode selecionar na fila de tarefas. A velocidade de execução das tarefas depende de vários fatores, como a CPU, a memória e o tipo de trabalho em si.

Escala automática de workers

O Cloud Composer monitoriza a fila de tarefas e gera trabalhadores adicionais para executar quaisquer tarefas pendentes. A definição de [celery]worker_concurrency para um valor elevado significa que cada trabalhador pode receber muitas tarefas. Por isso, em determinadas circunstâncias, a fila pode nunca ficar cheia, o que faz com que o dimensionamento automático nunca seja acionado.

Por exemplo, num ambiente do Cloud Composer com dois trabalhadores do Airflow, [celery]worker_concurrency definido como 100 e 200 tarefas na fila, cada trabalhador selecionaria 100 tarefas. Isto deixa a fila vazia e não aciona o dimensionamento automático. Se estas tarefas demorarem muito tempo a concluir, podem causar problemas de desempenho.

No entanto, se as tarefas forem pequenas e rápidas de executar, um valor elevado na definição [celery]worker_concurrency pode levar a um dimensionamento demasiado ambicioso. Por exemplo, se esse ambiente tiver 300 tarefas na fila, o Cloud Composer começa a criar novos trabalhadores. No entanto, se as primeiras 200 tarefas terminarem a execução quando os novos trabalhadores estiverem prontos, um trabalhador existente pode assumi-las. O resultado final é que o dimensionamento automático cria novos trabalhadores, mas não existem tarefas para eles.

O ajuste de [celery]worker_concurrency para casos especiais deve basear-se nos seus tempos de execução de tarefas de pico e números de filas:

  • Para tarefas que demoram mais tempo a concluir, os trabalhadores não devem conseguir esvaziar completamente a fila.
  • Para tarefas mais rápidas e pequenas, aumente o número mínimo de trabalhadores do Airflow para evitar o escalonamento excessivo.

Sincronização de registos de tarefas

Os trabalhadores do Airflow incluem um componente que sincroniza os registos de execução de tarefas com contentores do Cloud Storage. Um número elevado de tarefas simultâneas realizadas por um único trabalhador leva a um número elevado de pedidos de sincronização. Isto pode sobrecarregar o seu trabalhador e causar problemas de desempenho.

Se observar problemas de desempenho devido a um elevado número de tráfego de sincronização de registos, diminua os valores de [celery]worker_concurrency e, em alternativa, ajuste o número mínimo de trabalhadores do Airflow.

Altere a simultaneidade dos trabalhadores

A alteração deste parâmetro ajusta o número de tarefas que um único trabalhador pode executar em simultâneo.

Por exemplo, um Worker com 0,5 CPU pode normalmente processar 6 tarefas simultâneas; um ambiente com três desses Workers pode processar até 18 tarefas simultâneas.

  • Aumente este parâmetro quando existirem tarefas à espera na fila e os seus trabalhadores usarem uma percentagem baixa das respetivas CPUs e memória em simultâneo.

  • Diminua este parâmetro quando estiver a receber despejos de contentores; isto reduz o número de tarefas que um único trabalhador tenta processar. Em alternativa, pode aumentar a memória do trabalhador.

Por predefinição, a concorrência de trabalhadores é definida com base no número de instâncias de tarefas simultâneas simples que um trabalhador pode acomodar. Isto significa que o valor depende dos limites de recursos do trabalhador. O valor de concorrência do trabalhador não depende do número de trabalhadores no seu ambiente.

Para alterar este parâmetro, substitua a seguinte opção de configuração do Airflow:

Secção Chave Valor
celery worker_concurrency Novo valor para a simultaneidade de trabalhadores

Altere a simultaneidade do DAG

A concorrência de DAGs define o número máximo de instâncias de tarefas permitidas para execução em simultâneo em cada DAG. Aumente-o quando os seus DAGs executarem um número elevado de tarefas simultâneas. Se esta definição for baixa, o programador atrasa a colocação de mais tarefas na fila, o que também reduz a eficiência do ajuste automático de escala do ambiente.

Para alterar este parâmetro, substitua a seguinte opção de configuração do Airflow:

Secção Chave Valor Notas
core max_active_tasks_per_dag Novo valor para a simultaneidade de DAG O valor predefinido é 16

Aumente o número máximo de execuções ativas por DAG

Este atributo define o número máximo de execuções de DAGs ativas por DAG. Quando o mesmo DAG tem de ser executado várias vezes em simultâneo, por exemplo, com diferentes argumentos de entrada, este atributo permite que o agendador inicie essas execuções em paralelo.

Para alterar este parâmetro, substitua a seguinte opção de configuração do Airflow:

Secção Chave Valor Notas
core max_active_runs_per_dag Novo valor para execuções ativas máximas por DAG O valor predefinido é 25

O que se segue?