Controles de simultaneidade de stream

Os controles de simultaneidade de stream no Datastream permitem gerenciar o número máximo de tarefas paralelas de captura de dados alterados (CDC) e de preenchimento que um stream executa. É possível ajustar esses parâmetros na API Datastream para aumentar a capacidade de replicação ou limitar a carga no banco de dados de origem.

Visão geral dos controles de simultaneidade

Ao usar os controles de simultaneidade, é possível acelerar o preenchimento e a CDC ou equilibrar a carga no banco de dados de origem. Se você precisar de uma capacidade de processamento maior e puder pagar por uma carga maior no banco de dados, aumente a simultaneidade das tarefas de CDC e de preenchimento. Por outro lado, se o banco de dados estiver com uma carga alta e você quiser protegê-lo contra sobrecarga, reduza os valores desses parâmetros.

Número máximo de tarefas de CDC

O parâmetro maxConcurrentCdcTasks permite controlar o número de tarefas de CDC que um stream executa em paralelo. Para estender a capacidade de processamento da CDC, aumente o valor desse parâmetro e permita que o Datastream processe mais arquivos de registro da CDC ao mesmo tempo.

As principais características do parâmetro incluem:

  • O valor padrão é 5. É possível definir esse parâmetro com qualquer valor entre 1 e 50.
  • O parâmetro é aplicável apenas às origens Oracle e MySQL.
  • O parâmetro só terá impacto se houver mais arquivos de registro de banco de dados disponíveis para leitura do que tarefas de CDC. As configurações dos arquivos de registro são controladas pelos parâmetros de configuração do banco de dados de origem: o tamanho máximo do arquivo de registro e o intervalo de tempo máximo de rotação de registros. Para mais informações sobre esses parâmetros, consulte a documentação do Oracle e do MySQL.
  • Se você diminuir o número de tarefas simultâneas de CDC, o Datastream poderá ficar atrás dos registros do banco de dados, o que pode levar à perda da posição do registro e à falha do stream.

Número máximo de tarefas de preenchimento

O parâmetro maxConcurrentBackfillTasks permite controlar o número de tarefas de preenchimento que um stream pode executar em paralelo. É possível aumentar ou diminuir esse valor para controlar a capacidade de preenchimento.

As principais características do parâmetro incluem:

  • O valor padrão é 15. É possível definir esse parâmetro com qualquer valor entre 1 e 50.
  • Há um alto risco associado ao aumento da simultaneidade de preenchimento, porque as tarefas de preenchimento têm um impacto significativo no desempenho do banco de dados. Cada tarefa de preenchimento executa uma consulta SELECT não filtrada em uma tabela. Para tabelas grandes, essas consultas retornam um grande número de linhas.
  • Se você diminuir a simultaneidade de preenchimento, não haverá impacto negativo no banco de dados de origem, exceto pelo fato de que o preenchimento levará mais tempo para ser concluído.

Mudar os valores dos controles de simultaneidade

É possível alterar os valores dos parâmetros de controle de simultaneidade usando a API Datastream.

A seguir