Configurações de ajuste de processamento de alterações - AWS Database Migration Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurações de ajuste de processamento de alterações

As configurações a seguir determinam como AWS DMS manipula as alterações nas tabelas de destino durante a captura de dados de alteração (CDC). Várias dessas configurações dependem do valor do parâmetro de metadados de destino BatchApplyEnabled. Para obter mais informações sobre o parâmetro BatchApplyEnabled, consulte Configurações de tarefa de metadados de destino. Para obter informações sobre como utilizar um arquivo de configuração de tarefas para definir as configurações de tarefas, consulte Exemplo de configurações de tarefas.

Veja a seguir as configurações de ajuste do processamento de alterações:

As seguintes configurações aplicam-se somente quando o parâmetro de metadados de destino BatchApplyEnabled está definido como true.

  • BatchApplyPreserveTransaction: se estiver definido como true, a integridade transacional será preservada e será garantido que um lote contenha todas as alterações dentro de uma transação da origem. O valor padrão é true. Essa configuração se aplica apenas a endpoints de destino da Oracle.

    Se definido como false, pode haver lapsos temporários na integridade para melhorar o desempenho. Não há garantia de que todas as alterações em uma transação da origem sejam aplicadas ao destino em um único lote.

    Por padrão, AWS DMS os processos mudam em um modo transacional, que preserva a integridade transacional. Se houver condições para lapsos temporários em integridade transacional, você poderá usar a opção batch optimized apply. Essa opção agrupa transações de maneira eficaz e as aplica em lotes para fins de eficiência. A utilização da opção de aplicação otimizada em lote quase sempre viola as restrições de integridade referencial. Portanto, é recomendável desativar essas restrições durante o processo de migração e ativá-las novamente como parte do processo de substituição.

  • BatchApplyTimeoutMin— Define o tempo mínimo em segundos de AWS DMS espera entre cada aplicação de alterações em lote. O valor padrão é 1.

  • BatchApplyTimeoutMax— Define o tempo máximo em segundos que AWS DMS espera entre cada aplicação de alterações em lote antes de atingir o tempo limite. O valor padrão é 30.

  • BatchApplyMemoryLimit: define a quantidade máxima de memória em MB a ser utilizada para pré-processamento no Modo de aplicação otimizada para lotes. O valor padrão é 500.

  • BatchSplitSize: define o número máximo de alterações aplicadas em um único lote. O valor padrão é 0, o que significa que não há limite aplicado.

As seguintes configurações aplicam-se somente quando o parâmetro de metadados de destino BatchApplyEnabled está definido como false.

  • MinTransactionSize: define o número mínimo de alterações a serem incluídas em cada transação. O valor padrão é 1000.

  • CommitTimeout— Define o tempo máximo em segundos AWS DMS para coletar transações em lotes antes de declarar um tempo limite. O valor padrão é 1.

Para a replicação bidirecional, aplicam-se as seguintes configurações somente quando o parâmetro de metadados de destino BatchApplyEnabled está definido como false.

  • LoopbackPreventionSettings: essas configurações fornecem prevenção de loopback para cada tarefa de replicação contínua em qualquer par de tarefas envolvidas na replicação bidirecional. A Prevenção de loopback impede que alterações idênticas sejam aplicadas nas duas direções da replicação bidirecional, o que pode corromper os dados. Para obter mais informações sobre a replicação bidirecional, consulte Executar replicação bidirecional.

AWS DMS tenta manter os dados da transação na memória até que a transação seja totalmente confirmada com a origem, o destino ou ambos. Contudo, as transações maiores que a memória alocada ou não confirmadas dentro do limite de tempo especificado são gravadas no disco.

As seguintes configurações aplicam-se ao ajuste de processamento de alterações, independentemente do modo de processamento de alterações.

  • MemoryLimitTotal: define o tamanho máximo em MB que todas as transações podem ocupar na memória antes de serem gravadas no disco. O valor padrão é 1024.

  • MemoryKeepTime: define o tempo máximo em segundos que cada transação pode permanecer na memória antes de ser gravada no disco. A duração é calculada a partir do momento em que AWS DMS começou a capturar a transação. O valor padrão é 60.

  • StatementCacheSize: define o número máximo de declarações preparadas a serem armazenadas no servidor para execução posterior ao aplicar alterações ao destino. O valor padrão é 50. O valor máximo é 200.

Veja a seguir um exemplo de como as configurações de tarefas que manipulam o ajuste do processamento de alterações aparecem em um JSON arquivo de configuração de tarefa:

"ChangeProcessingTuning": { "BatchApplyPreserveTransaction": true, "BatchApplyTimeoutMin": 1, "BatchApplyTimeoutMax": 30, "BatchApplyMemoryLimit": 500, "BatchSplitSize": 0, "MinTransactionSize": 1000, "CommitTimeout": 1, "MemoryLimitTotal": 1024, "MemoryKeepTime": 60, "StatementCacheSize": 50 }

Para controlar a frequência de gravações em um destino do Amazon S3 durante uma tarefa de replicação de dados, é possível configurar os atributos de conexão adicionais cdcMaxBatchInterval e cdcMinFileSize. Isso pode resultar em melhor desempenho ao analisar os dados sem operações adicionais de sobrecarga. Para obter mais informações, consulte Configurações de endpoint ao usar o Amazon S3 como destino para AWS DMS.