Impostazioni di ottimizzazione dell'elaborazione delle modifiche - AWS Servizio di migrazione del Database

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à.

Impostazioni di ottimizzazione dell'elaborazione delle modifiche

Le seguenti impostazioni determinano come AWS DMS gestisce le modifiche per le tabelle di destinazione durante l'acquisizione dei dati di modifica (CDC). Molte di queste impostazioni dipendono dal valore del parametro di metadati di destinazione BatchApplyEnabled. Per ulteriori informazioni sul parametro BatchApplyEnabled, consulta Impostazioni delle attività dei metadati di destinazione. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta Esempio di impostazioni delle attività.

Le impostazioni di ottimizzazione dell'elaborazione delle modifiche includono le seguenti:

Le impostazioni seguenti si applicano solo quando il parametro dei metadati di destinazione BatchApplyEnabled è impostato su true.

  • BatchApplyPreserveTransaction: se è impostato su true, l'integrità transazionale viene conservata ed è garantito che un batch contenga tutte le modifiche all'interno di una transazione dall'origine. Il valore predefinito è true. Questa impostazione si applica solo agli endpoint di destinazione Oracle.

    Se il parametro è impostato su false, per migliorare le prestazioni possono verificarsi vuoti temporanei nell'integrità transazionale. Non vi è alcuna garanzia che tutte le modifiche in una transazione dall'origine vengano applicate alla destinazione in un singolo batch.

    Per impostazione predefinita, AWS DMS elabora le modifiche in modalità transazionale, che preserva l'integrità delle transazioni. Se puoi permetterti vuoti temporanei nell'integrità delle transazioni, puoi utilizzare in alternativa l'opzione di applicazione ottimizzata in batch. Questa opzione raggruppa in modo efficiente le transazioni e le applica in batch per garantire l'efficienza. L'utilizzo dell'opzione di applicazione ottimizzata in batch viola quasi sempre i vincoli di integrità referenziale. Pertanto, ti consigliamo di disattivare questi vincoli durante il processo di migrazione e di riattivarli nel processo di conversione.

  • BatchApplyTimeoutMin— Imposta il periodo minimo di AWS DMS attesa, in secondi, tra ogni applicazione di modifiche in batch. Il valore predefinito è 1.

  • BatchApplyTimeoutMax— Imposta il tempo massimo, in secondi, di AWS DMS attesa tra ogni applicazione di modifiche in batch prima del timeout. Il valore predefinito è 30.

  • BatchApplyMemoryLimit: imposta la quantità di memoria massima (in MB) da utilizzare per l'elaborazione in modalità di applicazione ottimizzata in batch. Il valore predefinito è 500.

  • BatchSplitSize: imposta il numero massimo di modifiche applicate in un singolo batch. Il valore predefinito è 0 e indica che non viene applicato alcun limite.

Le impostazioni seguenti si applicano solo quando il parametro dei metadati di destinazione BatchApplyEnabled è impostato su false.

  • MinTransactionSize: imposta il numero minimo di modifiche da includere in ciascuna transazione. Il valore predefinito è 1000.

  • CommitTimeout— Imposta il tempo massimo in secondi AWS DMS per la raccolta delle transazioni in batch prima di dichiarare un timeout. Il valore predefinito è 1.

Per la replica bidirezionale, l'impostazione seguente si applica solo quando il parametro dei metadati di destinazione BatchApplyEnabled è impostato su false.

  • LoopbackPreventionSettings: queste impostazioni forniscono la prevenzione del loopback per ogni attività di replica in corso in qualsiasi coppia di attività coinvolte nella replica bidirezionale. La prevenzione del loopback impedisce l'applicazione di modifiche identiche in entrambe le direzioni della replica bidirezionale, che può danneggiare i dati. Per ulteriori informazioni sulla replica bidirezionale, consulta Esecuzione della replica bidirezionale.

AWS DMS tenta di conservare i dati della transazione in memoria fino a quando la transazione non viene completamente confermata all'origine, alla destinazione o a entrambi. Tuttavia, le transazioni di dimensioni superiori a quelle della memoria allocata o di cui non viene eseguito il commit entro il limite di tempo specificato vengono scritte su disco.

Le impostazioni seguenti si applicano all'ottimizzazione dell'elaborazione delle modifiche indipendentemente dalla modalità di elaborazione delle modifiche.

  • MemoryLimitTotal: imposta le dimensioni massime (in MB) che tutte le transazioni possono occupare in memoria prima di essere scritte su disco. Il valore predefinito è 1024.

  • MemoryKeepTime: imposta il periodo di tempo massimo in secondi in cui ciascuna transazione può rimanere in memoria prima di essere scritta su disco. La durata viene calcolata a partire dal momento in cui è AWS DMS iniziata l'acquisizione della transazione. Il valore predefinito è 60.

  • StatementCacheSize: imposta il numero massimo di istruzioni preparate da archiviare nel server per l'esecuzione successiva quando vengono applicate le modifiche sulla destinazione. Il valore predefinito è 50. Il valore massimo è 200.

Di seguito è riportato un esempio di come le impostazioni delle attività che gestiscono l'ottimizzazione dell'elaborazione delle modifiche vengono visualizzate in un file di impostazioni delle attività: JSON

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

Per controllare la frequenza delle scritture su una destinazione Amazon S3 durante un'attività di replica dei dati, puoi configurare gli attributi aggiuntivi di connessione cdcMaxBatchInterval e cdcMinFileSize. In tal modo le prestazioni possono risultare migliori durante l'analisi dei dati senza ulteriori operazioni di sovraccarico. Per ulteriori informazioni, consulta Impostazioni degli endpoint quando si utilizza Amazon S3 come destinazione per AWS DMS.