In che modo è possibile risolvere un errore di AWS DMS "last error replication task out of memory"?

4 minuti di lettura
0

Quando utilizzo AWS Database Migration Services (AWS DMS), ricevo l'errore "Last Error Replication task out of memory. Stop Reason FATAL_ERROR Error Level FATAL".

Descrizione breve

Se ricevi il seguente errore quando usi SQLT: "Last Error Replication task out of memory. Stop Reason FATAL_ERROR Error Level FATAL". Per trovare la causa principale dell'errore, consulta i llog delle attività di AWS DMS. Per l'errore precedente, i log forniscono le seguenti informazioni: “Task process for 'XXXXXXX' failed because it ran out of memory”.

Per risolvere questo errore, completa almeno uno dei seguenti passaggi:

  • Modificare le impostazioni delle attività o i parametri relativi alla memoria.
  • Scala la classe delle istanze di replica in base alle fluttuazioni delle metriche di Amazon CloudWatch per le istanze di replica, come FreeMemory e SwapUsage.
  • Suddividi una singola attività in più attività in base alla dimensione dei dati migrati e alla quantità di memoria richiesta per l'attività.

Risoluzione

**Nota:**è necessario interrompere l'operazione prima di apportare modifiche. Dopo aver apportato le modifiche, è necessario riprendere l'attività. Le tabelle in volo vengono ricaricate da zero se l'attività si interrompe durante la fase di pieno carico.

Modificare le impostazioni delle attività o i parametri relativi alla memoria

Verifica se è possibile ridimensionare le impostazioni delle attività o i parametri relativi alla memoria che richiedono una maggiore capacità di memoria. Di seguito sono riportate alcune delle impostazioni e dei parametri delle attività più comuni da verificare:

  • Impostazioni LOB
  • Parametri di convalida, come ThreadCount e PartitionSize
  • Parametri di thread paralleli, come ParallelLoadThreads, ParallelLoadBufferSize, ParallelLoadQueuesPerThread, ParallelApplyThreads, ParallelApplyBufferSize e ParallelApplyQueuesPerThread.
  • Parametri di applicazione in batch, come BatchApplyTimeoutMin, BatchApplyTimeoutMax, BatchApplyMemoryLimit e BatchSplitSize.
  • Altre impostazioni delle attività relative alla memoria, come MinTransactionSize, MemoryLimitTotal, MemoryKeepTime e StatementCacheSize.

Per maggiori dettagli sulle impostazioni e sui parametri delle attività precedenti, consulta In che modo AWS DMS utilizza la memoria per la migrazione?

Aumentare la classe di istanze di replica in base alle fluttuazioni delle metriche di Amazon CloudWatch

Controlla le metriche FreeMemory e SwapUsage. Se FreeMemory diminuisce o SwapUsage aumenta od oscilla, valuta la possibilità di passare a un'istanza di replica più grande.

Inoltre, considera l'utilizzo di istanze ottimizzate per la memoria. Le istanze ottimizzate per la memoria sono adatte per carichi di lavoro ad alta intensità di memoria, come migrazioni continue e repliche di transazioni ad alto rendimento. Per ulteriori informazioni sulle dimensioni e sui tipi di istanze di replica, consulta Choosing the right AWS DMS replication instance for your migration.

Suddividere una singola attività in più attività in base alla dimensione dei dati migrati e alla quantità di memoria richiesta per l'attività

Se l'istanza di replica ha più attività, puoi utilizzare la metrica DMS MemoryUsage per osservare la quantità di memoria consumata dall'attività. Per determinare il motivo per cui l'attività trattiene la memoria nella fase CDC, confronta CDCChangesMemorySource e CDCChangesMemoryTarget, quindi risolvi i problemi relativi al rispettivo endpoint.

Quando sono in esecuzione più attività sull'istanza di replica, esegui una o più delle seguenti azioni:

  • Riduci il numero e il tipo di attività in esecuzione sull'istanza di replica.
  • Sposta l'operazione non riuscita in un'istanza di replica diversa, quindi riprova.
  • Aumenta la capacità delle istanze.

Per le attività in cui più tabelle vengono caricate in parallelo o molte tabelle e schemi in fase di migrazione, esegui una o più delle seguenti azioni:

  • Riduci il numero di tabelle che vengono caricate in parallelo.
  • Riduci il numero totale di tabelle e schemi da migrare.
  • Utilizza un'attività diversa su un'istanza di replica diversa per scaricare la migrazione di alcune tabelle e schemi.
  • Aumenta la capacità delle istanze.

Informazioni correlate

Target metadata task settings

Change processing tuning settings

AWS Database Migration Service metrics