Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Risoluzione dei problemi di latenza della destinazione
In questa sezione sono illustrati gli scenari che possono contribuire alla latenza della destinazione.
Argomenti
Problemi di indicizzazione
Durante la CDC fase, AWS DMS replica le modifiche all'origine eseguendo DML istruzioni (inserimento, aggiornamento ed eliminazione) sulla destinazione. Per le migrazioni eterogeneeDMS, le differenze nelle ottimizzazioni degli indici sull'origine e sulla destinazione possono far sì che le scritture sulla destinazione richiedano più tempo. Questo approccio comporta problemi di latenza e prestazioni della destinazione.
Per risolvere i problemi di indicizzazione, procedi come segue. Le procedure per questi passaggi variano a seconda dei diversi motori di database.
Monitora il tempo di query per il database di destinazione. Il confronto del tempo di esecuzione delle query sulla destinazione e sull'origine può indicare quali indici devono essere ottimizzati.
Abilita la registrazione per le query a esecuzione lenta.
Per risolvere i problemi di indicizzazione per le repliche di lunga durata, esegui queste operazioni:
Ottimizza gli indici sui database di origine e di destinazione in modo che il tempo di esecuzione delle query sia simile sull'origine e sulla destinazione.
Confronta gli indici secondari utilizzati nelle DML query per l'origine e la destinazione. Assicurati che DML le prestazioni della destinazione siano paragonabili o migliori di quelle di origine. DML
Tieni presente che la procedura per l'ottimizzazione degli indici è specifica del motore di database in uso. Non è DMS disponibile alcuna funzionalità per l'ottimizzazione degli indici di origine e di destinazione.
SORTERmessaggio nel registro delle attività
Se un endpoint di destinazione non riesce a tenere il passo con il volume delle modifiche che vi AWS DMS scrive, il task memorizza le modifiche nella cache dell'istanza di replica. Se la cache supera la soglia interna, l'attività interrompe la lettura di ulteriori modifiche dall'origine. DMSesegue questa operazione per evitare che l'istanza di replica esaurisca lo spazio di archiviazione o che l'attività si blocchi durante la lettura di un grande volume di eventi in sospeso.
Per risolvere questo problema, controllate che nei CloudWatch log sia presente un messaggio simile a uno dei seguenti:
[SORTER ]I: Reading from source is paused. Total disk usage exceeded the limit 90% (sorter_transaction.c:110) [SORTER ]I: Reading from source is paused. Total storage used by swap files exceeded the limit 1048576000 bytes (sorter_transaction.c:110)
Se i log contengono un messaggio simile al primo, disabilita qualsiasi registrazione di traccia per l'attività e aumenta lo spazio di archiviazione dell'istanza di replica. Per informazioni sull'aumento dello spazio di archiviazione delle istanze di replica, consulta Modifica di un'istanza di replica.
Se i log contengono un messaggio simile al secondo, esegui queste operazioni:
Sposta le tabelle con numerose transazioni o DML operazioni di lunga durata in un'attività separata, se non hanno alcuna dipendenza da altre tabelle dell'attività.
Aumenta le impostazioni
MemoryLimitTotal
eMemoryKeepTime
per mantenere la transazione in memoria per un periodo più lungo. Ciò non aiuta se la latenza è sostenuta, ma può contribuire a mantenere bassa la latenza durante brevi aumenti di volume transazionale. Per informazioni su queste impostazioni dell'attività, consulta Impostazioni di ottimizzazione dell'elaborazione delle modifiche.Valuta se puoi utilizzare l'applicazione in batch per la transazione impostando
BatchApplyEnabled
sutrue
. Per informazioni sull'impostazioneBatchApplyEnabled
, consulta Impostazioni delle attività dei metadati di destinazione.
Blocco del database
Se un'applicazione accede a un database AWS DMS utilizzato come destinazione di replica, l'applicazione può bloccare una tabella a cui DMS sta tentando di accedere. Questo crea un conflitto di blocco. Poiché DMS scrive le modifiche nel database di destinazione nell'ordine in cui si sono verificate nell'origine, i ritardi nella scrittura su una tabella dovuti al contenzioso dei blocchi creano ritardi nella scrittura su tutte le tabelle.
Per risolvere questo problema, interrogate il database di destinazione per verificare se un conflitto di blocco sta bloccando le transazioni di scrittura. DMS Se il database di destinazione blocca le transazioni di DMS scrittura, esegui una o più delle seguenti operazioni:
Ristruttura le query per eseguire il commit delle modifiche più frequentemente.
Modifica le impostazioni del timeout di blocco.
Partiziona le tabelle per ridurre al minimo i conflitti di blocco.
Tieni presente che la procedura per l'ottimizzazione dei conflitti di blocco è specifica del motore di database in uso. Non è DMS disponibile alcuna funzione per regolare il contenuto dei blocchi.
Ricerche lente LOB
Quando AWS DMS replica una colonna object (LOB) di grandi dimensioni, esegue una ricerca sull'origine appena prima di scrivere le modifiche alla destinazione. Questa ricerca normalmente non causa alcuna latenza sulla destinazione, ma se il database di origine ritarda la ricerca a causa del blocco, la latenza della destinazione potrebbe aumentare.
Questo problema è in genere difficile da diagnosticare. Per risolvere questo problema, abilitate il debug dettagliato sui log delle attività e confrontate i timestamp delle chiamate di ricerca. DMS LOB Per informazioni su come abilitare il debug dettagliato, consulta Visualizzazione e gestione dei registri attività AWS DMS.
Per risolvere il problema, procedi come segue:
Migliora le prestazioni delle query sul database di origine. SELECT
Ottimizza le DMS LOB impostazioni. Per informazioni sulla regolazione delle LOB impostazioni, vedere Migrazione di oggetti binari di grandi dimensioni (LOB).
Multi-AZ: registrazione di audit e backup
Per RDS gli obiettivi di Amazon, la latenza target può aumentare nei seguenti periodi:
Backup
Dopo aver abilitato più zone di disponibilità (multi-AZ)
Dopo aver abilitato la registrazione del database, ad esempio i log di audit o delle query lente.
Questi problemi sono in genere difficili da diagnosticare. Per risolvere questi problemi, monitora la latenza per rilevare eventuali picchi periodici durante le finestre di RDS manutenzione di Amazon o i periodi di intenso carico del database.
Per risolvere questi problemi, prova a eseguire queste operazioni:
Se possibile, durante la migrazione a breve termine, disabilita le multi-AZ, i backup o la registrazione.
Riprogramma le finestre di manutenzione in periodi di scarsa attività.