Solução de problemas do erro do AWS DMS “Last Error Replication task out of memory. Stop Reason FATAL_ERROR Error Level FATAL”

4 minuto de leitura
0

Ao usar o AWS Database Migration Services (AWS DMS), recebo o erro “Last Error Replication task out of memory. Stop Reason FATAL_ERROR Error Level FATAL” (Última tarefa de replicação de erro sem memória. Motivo da interrupção FATAL_ERROR: Nível de erro FATAL).

Breve descrição

Ao usar o AWS DMS, você recebe o seguinte erro: “Last Error Replication task out of memory. Stop Reason FATAL_ERROR Error Level FATAL” (Última tarefa de replicação de erro sem memória. Motivo da interrupção FATAL_ERROR: Nível de erro FATAL) Para encontrar a causa raiz do erro, revise os logs de tarefas do AWS DMS. Para o erro anterior, os logs fornecem as seguintes informações: “Task process for 'XXXXXXX' failed because it ran out of memory” (O processo de tarefa para 'XXXXXXX' falhou porque ficou sem memória).

Para resolver esse erro, conclua uma ou mais das seguintes etapas:

  • Altere as configurações da tarefa ou os parâmetros relacionados à memória.
  • Aumente a escala verticalmente da classe de instância de replicação com base nas flutuações nas métricas do Amazon CloudWatch para instâncias de replicação, comoFreeMemory e SwapUsage.
  • Divida uma única tarefa em várias tarefas com base no tamanho dos dados migrados e na quantidade de memória necessária para a tarefa.

Resolução

Observação: você deve interromper a tarefa antes de fazer modificações. Depois de fazer as modificações, você deve retomar a tarefa. As tabelas em andamento seeão recarregadas do zero se a tarefa for interrompida durante a fase de carga total.

Altere as configurações da tarefa ou os parâmetros relacionados à memória

Verifique se você pode escalar as configurações da tarefa ou os parâmetros relacionados à memória que exigem maior capacidade de memória. A seguir estão algumas das configurações e parâmetros de tarefas mais comuns a serem verificados:

  • Configurações de LOB
  • Parâmetros de validação, como ThreadCount e PartitionSize
  • Parâmetros de thread paralelo, como ParallelLoadThreads, ParallelLoadBufferSize, ParallelLoadQueuesPerThread, ParallelApplyThreads, ParallelApplyBufferSize e ParallelApplyQueuesPerThread.
  • Parâmetros de aplicação em lote, como BatchApplyTimeoutMin, BatchApplyTimeoutMax, BatchApplyMemoryLimit e BatchSplitSize.
  • Outras configurações de tarefas relacionadas à memória, como MinTransactionSize, MemoryLimitTotal, MemoryKeepTime e StatementCacheSize.

Para obter mais detalhes sobre as configurações e parâmetros de tarefas anteriores, consulte Como o AWS DMS usa memória para migração?

Aumente a escala verticalmente da classe de instância de replicação com base nas flutuações nas métricas do Amazon CloudWatch

Verifique as métricas FreeMemory e SwapUsage da instância de replicação. Se a FreeMemory diminuir ou o SwapUsage aumentar ou flutuar, considere mudar para uma instância de replicação maior.

Além disso, considere usar instâncias otimizadas para memória. As instâncias otimizadas para memória são adequadas para workloads que consomem muita memória, como migrações e replicações contínuas de transações de alto throughput. Para obter mais informações sobre tamanhos e tipos de instâncias de replicação, consulte Choosing the right AWS DMS replication instance for your migration (Escolher a instância de replicação certa do AWS DMS para sua migração).

Divida uma única tarefa em várias tarefas com base no tamanho dos dados migrados e na quantidade de memória necessária para a tarefa.

Se a instância de replicação tiver várias tarefas, você poderá usar a métrica MemoryUsage do DMS para observar a quantidade de memória que a tarefa consome. Para determinar por que a tarefa está mantendo memória na fase CDC, compare CDCChangesMemorySource e CDCChangesMemoryTarget e solucione o problema do respectivo endpoint.

Quando várias tarefas estiverem sendo executadas na instância de replicação, execute uma ou mais das seguintes ações:

  • Reduza o número e o tipo de tarefas que estão sendo executadas na instância de replicação.
  • Mova a tarefa que falhou para outra instância de replicação e tente novamente.
  • Aumente a capacidade da instância.

Para tarefas que tenham várias tabelas sendo carregadas em paralelo ou com várias tabelas e esquemas sendo migrados, execute uma ou mais das seguintes ações:

  • Reduza o número de tabelas que estão sendo carregadas em paralelo.
  • Reduza o número total de tabelas e esquemas que estão sendo migrados.
  • Use uma tarefa distinta em outra instância de replicação para descarregar a migração de algumas tabelas e esquemas.
  • Aumente a capacidade da instância.

Informações relacionadas

Target metadata task settings (Configurações de tarefas de metadados de destino)

Change processing tuning settings (Alterar configurações de ajuste de processamento)

AWS Database Migration Service metrics (Métricas do AWS Database Migration Service)

AWS OFICIAL
AWS OFICIALAtualizada há um ano