

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

# Specificazione delle impostazioni delle attività per le attività del AWS Database Migration Service
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings"></a>

Ogni attività dispone di impostazioni che puoi configurare in base alle esigenze della migrazione del database. Puoi creare queste impostazioni in un file JSON oppure, con alcune impostazioni, puoi specificare le impostazioni utilizzando la AWS DMS console. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).

Di seguito sono elencati i diversi principali tipi di impostazioni delle attività.

**Topics**
+ [

## Esempio di impostazioni delle attività
](#CHAP_Tasks.CustomizingTasks.TaskSettings.Example)
+ [

# Impostazioni delle attività dei metadati di destinazione
](CHAP_Tasks.CustomizingTasks.TaskSettings.TargetMetadata.md)
+ [

# Impostazioni delle attività di caricamento completo
](CHAP_Tasks.CustomizingTasks.TaskSettings.FullLoad.md)
+ [

# Impostazioni delle attività Time Travel
](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.md)
+ [

# Registrazione delle impostazioni delle attività
](CHAP_Tasks.CustomizingTasks.TaskSettings.Logging.md)
+ [

# Impostazioni delle attività delle tabelle di controllo
](CHAP_Tasks.CustomizingTasks.TaskSettings.ControlTable.md)
+ [

# Impostazioni delle attività di buffer del flusso
](CHAP_Tasks.CustomizingTasks.TaskSettings.StreamBuffer.md)
+ [

# Impostazioni di ottimizzazione dell'elaborazione delle modifiche
](CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning.md)
+ [

# Impostazioni delle attività di convalida dei dati
](CHAP_Tasks.CustomizingTasks.TaskSettings.DataValidation.md)
+ [

# Impostazioni di risincronizzazione dei dati
](CHAP_Tasks.CustomizingTasks.TaskSettings.DataResyncSettings.md)
+ [

# Impostazioni delle attività per la gestione di DDL durante l'elaborazione delle modifiche
](CHAP_Tasks.CustomizingTasks.TaskSettings.DDLHandling.md)
+ [

# Impostazioni dell'attività di sostituzione dei caratteri
](CHAP_Tasks.CustomizingTasks.TaskSettings.CharacterSubstitution.md)
+ [

# Impostazioni dell'attività immagine precedente
](CHAP_Tasks.CustomizingTasks.TaskSettings.BeforeImage.md)
+ [

# Impostazioni delle attività per la gestione degli errori
](CHAP_Tasks.CustomizingTasks.TaskSettings.ErrorHandling.md)
+ [

# Salvataggio delle impostazioni delle attività
](CHAP_Tasks.CustomizingTasks.TaskSettings.Saving.md)


| Impostazioni delle attività | Documentazione di riferimento | 
| --- | --- | 
|   **Creazione di un report di valutazione dell'attività**  Puoi creare un report di valutazione dell'attività che mostra i tipi di dati non supportati che potrebbero causare problemi durante la migrazione. Puoi eseguire questo report sull'attività prima di eseguire l'attività per individuare i potenziali problemi.  |  [Abilitazione e utilizzo delle valutazioni preliminari alla migrazione di un'attività](CHAP_Tasks.AssessmentReport.md)  | 
|   **Creazione di un'attività**  Quando crei un'attività, specifichi l'origine, la destinazione, l'istanza di replica e le eventuali impostazioni di migrazione.  |  [Creazione di un'attività](CHAP_Tasks.Creating.md)  | 
|   **Creazione di un'attività di replica continua**  Puoi configurare un'attività per fornire la replica continua tra l'origine e la destinazione.   |  [Creazione di attività per la replica continua utilizzando AWS DMS](CHAP_Task.CDC.md)  | 
|   **Applicazione delle impostazioni dell'attività**  Ogni attività dispone di impostazioni che puoi configurare in base alle esigenze della migrazione del database. Queste impostazioni vengono create in un file JSON oppure, con alcune impostazioni, è possibile specificare le impostazioni utilizzando la AWS DMS console.  |  [Specificazione delle impostazioni delle attività per le attività del AWS Database Migration Service](#CHAP_Tasks.CustomizingTasks.TaskSettings)  | 
|   **Convalida dei dati**  Utilizza la convalida dei dati per AWS DMS confrontare i dati del data store di destinazione con i dati del data store di origine.  |  [AWS Convalida dei dati DMS](CHAP_Validating.md)  | 
|   **Modifica di un'attività**  Quando un'attività viene arrestata, puoi modificarne le impostazioni.  |  [Modifica di un'attività](CHAP_Tasks.Modifying.md)  | 
|   **Ricaricamento delle tabelle durante un'attività**  Puoi ricaricare una tabella durante un'attività se si verifica un errore durante l'esecuzione.  |  [Ricaricamento delle tabelle durante un'attività](CHAP_Tasks.ReloadTables.md)  | 
|   **Utilizzo della mappatura delle tabelle**  La mappatura delle tabelle utilizza diversi tipi di regole per specificare le impostazioni delle attività per l'origine dati, lo schema di origine, i dati e le eventuali trasformazioni che devono verificarsi durante l'attività.  |  Regole di selezione [Operazioni e regole di selezione](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Selections.md) Regole di trasformazione [Operazioni e regole di trasformazione](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Transformations.md)  | 
|   **Applicazione di filtri**  Puoi utilizzare i filtri di origine per limitare il numero e il tipo di record trasferiti dall'origine alla destinazione. Ad esempio, puoi specificare che solo i dipendenti con un'ubicazione di sede vengano spostati al database di destinazione. I filtri vengono applicati su una colonna di dati.  |  [Utilizzo di filtri di origine](CHAP_Tasks.CustomizingTasks.Filters.md)  | 
| Monitoraggio di un'attività Vi sono diversi modi per ottenere informazioni sulle prestazioni di un'attività e sulle tabelle utilizzate dall'attività.  |  [Monitoraggio delle attività AWS DMS](CHAP_Monitoring.md)  | 
| Gestione dei log delle attività Puoi visualizzare ed eliminare i registri delle attività utilizzando l' AWS DMS API o. AWS CLI  |  [Visualizzazione e gestione dei registri delle attività AWS DMS](CHAP_Monitoring.md#CHAP_Monitoring.ManagingLogs)  | 

## Esempio di impostazioni delle attività
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.Example"></a>

È possibile utilizzare il Console di gestione AWS o il AWS CLI per creare un'attività di replica. Se si utilizza il AWS CLI, si impostano le impostazioni dell'attività creando un file JSON, quindi specificando l'URI file://del file JSON come [ ReplicationTaskSettings](https://docs.aws.amazon.com/dms/latest/APIReference/API_CreateReplicationTask.html#DMS-CreateReplicationTask-request-ReplicationTaskSettings)parametro dell'operazione. [CreateReplicationTask](https://docs.aws.amazon.com/dms/latest/APIReference/API_CreateReplicationTask.html)

L'esempio seguente mostra come utilizzare to AWS CLI richiamare l'operazione: `CreateReplicationTask`

```
aws dms create-replication-task \
--replication-task-identifier MyTask \
--source-endpoint-arn arn:aws:dms:us-west-2:123456789012:endpoint:ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABC \
--target-endpoint-arn arn:aws:dms:us-west-2:123456789012:endpoint:ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABC \
--replication-instance-arn arn:aws:dms:us-west-2:123456789012:rep:ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890ABC \
--migration-type cdc \
--table-mappings file://tablemappings.json \
--replication-task-settings file://settings.json
```

L'esempio precedente utilizza un file di mappatura delle tabelle chiamato `tablemappings.json`. Per gli esempi di mappatura delle tabelle, consulta [Utilizzo della mappatura delle tabelle per specificare le impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TableMapping.md).

Un file JSON delle impostazioni delle attività può apparire come segue: 

```
{
  "TargetMetadata": {
    "TargetSchema": "",
    "SupportLobs": true,
    "FullLobMode": false,
    "LobChunkSize": 64,
    "LimitedSizeLobMode": true,
    "LobMaxSize": 32,
    "InlineLobMaxSize": 0,
    "LoadMaxFileSize": 0,
    "ParallelLoadThreads": 0,
    "ParallelLoadBufferSize":0,
    "ParallelLoadQueuesPerThread": 1,
    "ParallelApplyThreads": 0,
    "ParallelApplyBufferSize": 100,
    "ParallelApplyQueuesPerThread": 1,    
    "BatchApplyEnabled": false,
    "TaskRecoveryTableEnabled": false
  },
  "FullLoadSettings": {
    "TargetTablePrepMode": "DO_NOTHING",
    "CreatePkAfterFullLoad": false,
    "StopTaskCachedChangesApplied": false,
    "StopTaskCachedChangesNotApplied": false,
    "MaxFullLoadSubTasks": 8,
    "TransactionConsistencyTimeout": 600,
    "CommitRate": 10000
  },
    "TTSettings" : {
    "EnableTT" : true,
    "TTS3Settings": {
        "EncryptionMode": "SSE_KMS",
        "ServerSideEncryptionKmsKeyId": "arn:aws:kms:us-west-2:112233445566:key/myKMSKey",
        "ServiceAccessRoleArn": "arn:aws:iam::112233445566:role/dms-tt-s3-access-role",
        "BucketName": "myttbucket",
        "BucketFolder": "myttfolder",
        "EnableDeletingFromS3OnTaskDelete": false
      },
    "TTRecordSettings": {
        "EnableRawData" : true,
        "OperationsToLog": "DELETE,UPDATE",
        "MaxRecordSize": 64
      }
  },
  "Logging": {
    "EnableLogging": false
  },
  "ControlTablesSettings": {
    "ControlSchema":"",
    "HistoryTimeslotInMinutes":5,
    "HistoryTableEnabled": false,
    "SuspendedTablesTableEnabled": false,
    "StatusTableEnabled": false
  },
  "StreamBufferSettings": {
    "StreamBufferCount": 3,
    "StreamBufferSizeInMB": 8
  },
  "ChangeProcessingTuning": { 
    "BatchApplyPreserveTransaction": true, 
    "BatchApplyTimeoutMin": 1, 
    "BatchApplyTimeoutMax": 30, 
    "BatchApplyMemoryLimit": 500, 
    "BatchSplitSize": 0, 
    "MinTransactionSize": 1000, 
    "CommitTimeout": 1, 
    "MemoryLimitTotal": 1024, 
    "MemoryKeepTime": 60, 
    "StatementCacheSize": 50 
  },
  "ChangeProcessingDdlHandlingPolicy": {
    "HandleSourceTableDropped": true,
    "HandleSourceTableTruncated": true,
    "HandleSourceTableAltered": true
  },
  "LoopbackPreventionSettings": {
    "EnableLoopbackPrevention": true,
    "SourceSchema": "LOOP-DATA",
    "TargetSchema": "loop-data"
  },

  "CharacterSetSettings": {
    "CharacterReplacements": [ {
        "SourceCharacterCodePoint": 35,
        "TargetCharacterCodePoint": 52
      }, {
        "SourceCharacterCodePoint": 37,
        "TargetCharacterCodePoint": 103
      }
    ],
    "CharacterSetSupport": {
      "CharacterSet": "UTF16_PlatformEndian",
      "ReplaceWithCharacterCodePoint": 0
    }
  },
  "BeforeImageSettings": {
    "EnableBeforeImage": false,
    "FieldName": "",  
    "ColumnFilter": "pk-only"
  },
  "ErrorBehavior": {
    "DataErrorPolicy": "LOG_ERROR",
    "DataTruncationErrorPolicy":"LOG_ERROR",
    "DataMaskingErrorPolicy": "STOP_TASK",
    "DataErrorEscalationPolicy":"SUSPEND_TABLE",
    "DataErrorEscalationCount": 50,
    "TableErrorPolicy":"SUSPEND_TABLE",
    "TableErrorEscalationPolicy":"STOP_TASK",
    "TableErrorEscalationCount": 50,
    "RecoverableErrorCount": 0,
    "RecoverableErrorInterval": 5,
    "RecoverableErrorThrottling": true,
    "RecoverableErrorThrottlingMax": 1800,
    "ApplyErrorDeletePolicy":"IGNORE_RECORD",
    "ApplyErrorInsertPolicy":"LOG_ERROR",
    "ApplyErrorUpdatePolicy":"LOG_ERROR",
    "ApplyErrorEscalationPolicy":"LOG_ERROR",
    "ApplyErrorEscalationCount": 0,
    "FullLoadIgnoreConflicts": true
  },
  "ValidationSettings": {
    "EnableValidation": false,
    "ValidationMode": "ROW_LEVEL",
    "ThreadCount": 5,
    "PartitionSize": 10000,
    "FailureMaxCount": 1000,
    "RecordFailureDelayInMinutes": 5,
    "RecordSuspendDelayInMinutes": 30,
    "MaxKeyColumnSize": 8096,
    "TableFailureMaxCount": 10000,
    "ValidationOnly": false,
    "HandleCollationDiff": false,
    "RecordFailureDelayLimitInMinutes": 1,
    "SkipLobColumns": false,
    "ValidationPartialLobSize": 0,
    "ValidationQueryCdcDelaySeconds": 0
  }
}
```

# Impostazioni delle attività dei metadati di destinazione
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.TargetMetadata"></a>

Di seguito sono descritte le impostazioni 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à](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).
+ `TargetSchema`: il nome dello schema della tabella di destinazione. Se questa opzione di metadati è vuota, viene utilizzato lo schema della tabella di origine. Se non è definito alcuno schema di origine, AWS DMS aggiunge automaticamente il prefisso del proprietario per il database di destinazione a tutte le tabelle. Questa opzione deve essere lasciata vuota per endpoint di destinazione di tipo MySQL. La ridenominazione di uno schema nella mappatura dei dati ha la precedenza su questa impostazione.
+ Impostazioni LOB: impostazioni che determinano la modalità di gestione degli oggetti di grandi dimensioni (LOBs). Impostando `SupportLobs=true`, è necessario impostare su `true` una delle seguenti opzioni: 
  + `FullLobMode`: se si imposta questa opzione su `true`, è necessario specificare una valore per l'opzione `LobChunkSize`. Inserisci le dimensioni, in kilobyte, dei chunk LOB da utilizzare durante la replica dei dati sulla destinazione. L'opzione `FullLobMode` è ideale per LOB di dimensioni molto grandi, ma tende a rallentare le operazioni di caricamento. Il valore consigliato per `LobChunkSize` è 64 kilobyte. L'aumento del valore di `LobChunkSize` su valori superiori a 64 kilobyte può causare errori nelle attività.
  + `InlineLobMaxSize`— Questo valore determina quali LOBs AWS DMS trasferimenti in linea durante un carico completo. Il trasferimento di piccole dimensioni LOBs è più efficiente rispetto alla ricerca da una tabella di origine. Durante un caricamento completo, AWS DMS controlla tutto LOBs ed esegue un trasferimento in linea per LOBs i file inferiori a. `InlineLobMaxSize` AWS DMS trasferisce tutte le LOBs dimensioni maggiori del `InlineLobMaxSize` perno. `FullLobMode` Il valore predefinito per `InlineLobMaxSize` è 0 e l'intervallo è compreso tra 1 e 102400 kilobyte (100 MB). Imposta un valore `InlineLobMaxSize` solo se sai che la maggior parte di LOBs essi è inferiore al valore specificato in`InlineLobMaxSize`.
  + `LimitedSizeLobMode`: se si imposta questa opzione su `true`, è necessario specificare una valore per l'opzione `LobMaxSize`. Inserisci le dimensioni massime, in kilobyte, per un singolo LOB. Il valore massimo per `LobMaxSize` è 102400 kilobyte (100 MB).

  Per ulteriori informazioni sui criteri per l'utilizzo di queste impostazioni dei LOB per le attività, consulta [Impostazione del supporto LOB per i database di origine in un task AWS DMS](CHAP_Tasks.LOBSupport.md). È inoltre possibile controllare la gestione di singole tabelle. LOBs Per ulteriori informazioni, consulta [Regole e operazioni delle impostazioni di tabella e raccolta](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md).
+ `BatchApplyEnabled`: determina se ogni transazione viene applicata singolarmente o se le modifiche sono sottoposte a commit in batch. Il valore predefinito è `false`.

  Quando `BatchApplyEnabled` è impostato su `true`, DMS richiede una chiave primaria (PK) o una chiave unica (UK) nelle tabelle di **origine**. Senza PK o UK nelle tabelle di origine, vengono applicati solo gli inserimenti in batch, ma non gli aggiornamenti e le eliminazioni in batch.

  Quando `BatchApplyEnabled` è impostato su `true`, AWS DMS genera un messaggio di errore se una tabella di **destinazione** ha un vincolo univoco e una chiave primaria. Le tabelle di destinazione con un vincolo univoco e una chiave primaria non sono supportate quando `BatchApplyEnabled` è impostato su `true`.

  Quando `BatchApplyEnabled` è impostato su true e AWS DMS rileva un errore nei dati da una tabella con la politica di gestione degli errori predefinita, l' AWS DMS attività passa dalla modalità batch alla one-by-one modalità per il resto delle tabelle. Per modificare questo comportamento, è possibile impostare l'azione `"SUSPEND_TABLE"` nelle seguenti policy nella proprietà di gruppo `"ErrorBehavior"` del file JSON delle impostazioni delle attività:
  + `DataErrorPolicy`
  + `ApplyErrorDeletePolicy`
  + `ApplyErrorInsertPolicy`
  + `ApplyErrorUpdatePolicy`

  Per ulteriori informazioni sulla proprietà di gruppo `"ErrorBehavior"`, vedi l'esempio di file JSON delle impostazioni delle attività in [Specificazione delle impostazioni delle attività per le attività del AWS Database Migration Service](CHAP_Tasks.CustomizingTasks.TaskSettings.md). Dopo aver impostato questi criteri su`"SUSPEND_TABLE"`, l' AWS DMS attività sospende quindi gli errori nei dati su tutte le tabelle che li generano e continua in modalità batch per tutte le tabelle.

  Puoi utilizzare il parametro `BatchApplyEnabled` con il parametro `BatchApplyPreserveTransaction`. Se `BatchApplyEnabled` è impostato su `true`, il parametro `BatchApplyPreserveTransaction` determina l'integrità transazionale. 

  Se `BatchApplyPreserveTransaction` è impostata su `true`, l'integrità transazionale viene conservata ed è garantito che un batch contenga tutte le modifiche all'interno di una transazione dall'origine.

  Se `BatchApplyPreserveTransaction` è impostato su `false`, per migliorare le prestazioni possono verificarsi vuoti temporanei nell'integrità transazionale. 

  Il parametro `BatchApplyPreserveTransaction` si applica solo a endpoint di destinazione Oracle ed è rilevante solo quando il parametro `BatchApplyEnabled` è impostato su `true`.

  Quando le colonne LOB sono incluse nella replica, è possibile usare `BatchApplyEnabled` solo in modalità LOB limitata.

  Per ulteriori informazioni sull'utilizzo di queste impostazioni per l'acquisizione dei dati di modifica (CDC), consulta [Impostazioni di ottimizzazione dell'elaborazione delle modifiche](CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning.md).
+ `MaxFullLoadSubTasks`: indica il numero massimo di tabelle da caricare in parallelo. Il valore predefinito è 8; il valore il massimo è 49.
+ `ParallelLoadThreads`— specifica il numero di thread AWS DMS utilizzati per caricare ogni tabella nel database di destinazione. Questo parametro prevede valori massimi per le destinazioni non RDBMS. Il valore massimo per una destinazione DynamoDB è 200. Il valore massimo per un target Amazon Kinesis Data Streams, Apache Kafka o OpenSearch Amazon Service è 32. Puoi chiedere di aumentare questo limite massimo. `ParallelLoadThreads` si applica alle attività di pieno carico. Per ulteriori informazioni sulle impostazioni che consentono il caricamento in parallelo di singole tabelle, consultare [Regole e operazioni delle impostazioni di tabella e raccolta](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md).

  Questa impostazione si applica ai seguenti tipi di motori di endpoint:
  + DynamoDB
  + Flusso di dati Amazon Kinesis
  + MSK Amazon
  +  OpenSearch Servizio Amazon
  + Amazon Redshift

  AWS DMS supporta `ParallelLoadThreads` MySQL come attributo di connessione aggiuntivo. `ParallelLoadThreads`non si applica a MySQL come impostazione delle attività. 
+ `ParallelLoadBufferSize` : specifica il numero massimo di record da archiviare nel buffer utilizzato dai thread di caricamento parallelo per caricare i dati nella destinazione. Il valore predefinito è 50. Il valore massimo è 1.000. Questa impostazione è attualmente valida solo quando DynamoDB, Kinesis, Apache Kafka o è la destinazione. OpenSearch Utilizzare questo parametro con `ParallelLoadThreads`; `ParallelLoadBufferSize` è valido solo quando è presente più di un thread. Per ulteriori informazioni sulle impostazioni che consentono il caricamento in parallelo di singole tabelle, consultare [Regole e operazioni delle impostazioni di tabella e raccolta](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md).
+ `ParallelLoadQueuesPerThread`: specifica il numero di code a cui ogni thread simultaneo accede per estrarre i record di dati dalle code e generare un caricamento batch per una destinazione. Il valore di default è 1. Questa impostazione è attualmente valida solo quando la destinazione è Kinesis o Apache Kafka.
+ `ParallelApplyThreads`: specifica il numero di thread simultanei da AWS DMS utilizzare durante un caricamento CDC per inviare i record di dati a un endpoint di destinazione Amazon DocumentDB, Kinesis, Amazon MSK o Amazon Redshift. OpenSearch Il valore predefinito è zero (0).

  Questa impostazione si applica solo ai CDC. Questa impostazione non è valida per il pieno carico.

  

  Questa impostazione si applica ai seguenti tipi di motori di endpoint:
  + Amazon DocumentDB (compatibile con MongoDB)
  + Flusso di dati Amazon Kinesis
  + Amazon Managed Streaming per Apache Kafka
  +  OpenSearch Servizio Amazon
  + Amazon Redshift
+ `ParallelApplyBufferSize`: specifica il numero massimo di record da archiviare in ogni coda di buffer per i thread simultanei da inviare a un endpoint di destinazione Amazon DocumentDB, Kinesis, Amazon MSK o Amazon Redshift durante un OpenSearch caricamento CDC. Il valore predefinito è 100. Il valore massimo è 1000. Utilizzare questa opzione quando `ParallelApplyThreads` specifica più di un thread. 
+ `ParallelApplyQueuesPerThread`: specifica il numero di code a cui ogni thread accede per estrarre i record di dati dalle code e generare un caricamento in batch per Amazon DocumentDB, Kinesis, Amazon MSK o endpoint durante il CDC. OpenSearch Il valore predefinito è 1.

# Impostazioni delle attività di caricamento completo
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.FullLoad"></a>

Di seguito sono descritte le impostazioni di pieno carico. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).
+ Per indicare come gestire il caricamento della destinazione all'avvio del caricamento completo, specifica uno dei seguenti valori per l'opzione `TargetTablePrepMode`: 
  +  `DO_NOTHING`: i dati e i metadati della tabella di destinazione esistente rimangono invariati. 
  +  `DROP_AND_CREATE`: la tabella esistente viene eliminata e, al suo posto, viene creata una nuova tabella. 
  +  `TRUNCATE_BEFORE_LOAD`: i dati vengono troncati senza modificare i metadati della tabella.
+ Per ritardare la creazione della chiave primaria o dell'indice univoco finché non viene completato il pieno carico, imposta l'opzione `CreatePkAfterFullLoad` su `true`.
+ Per attività di caricamento completo e abilitate per CDC, puoi impostare le seguenti opzioni per `Stop task after full load completes`: 
  + `StopTaskCachedChangesApplied`: imposta questa opzione su `true` per interrompere un'attività dopo il completamento di un pieno carico e l'applicazione delle modifiche memorizzate nella cache. 
  + `StopTaskCachedChangesNotApplied`: imposta questa opzione su `true` per arrestare un'attività prima che le modifiche memorizzate nella cache vengano applicate. 
+ Imposta l'opzione `MaxFullLoadSubTasks` per indicare il numero massimo di tabelle da caricare in parallelo. Il valore predefinito è 8; il valore il massimo è 49.
+ Imposta l'opzione `ParallelLoadThreads` per indicare quanti thread simultanei vengono utilizzati da DMS durante un processo di pieno carico per eseguire il push dei record di dati a un endpoint di destinazione. Il valore predefinito è zero (0).
**Importante**  
`MaxFullLoadSubTasks` controlla il numero di tabelle o segmenti di tabella da caricare in parallelo. `ParallelLoadThreads` controlla il numero di thread utilizzati da un'attività di migrazione per eseguire i carichi in parallelo. *Queste impostazioni sono moltiplicative*. Pertanto, il numero totale di thread utilizzati durante un'operazione di pieno carico è approssimativamente il risultato del valore di `ParallelLoadThreads `moltiplicato per il valore di `MaxFullLoadSubTasks` (`ParallelLoadThreads` **\$1** `MaxFullLoadSubtasks)`.  
Se si creano attività con un numero elevato di attività secondarie di pieno carico e un numero elevato di thread di caricamento parallelo, l'attività può consumare troppa memoria e non riuscire.
+ È possibile impostare il numero di secondi di AWS DMS attesa per la chiusura delle transazioni prima di iniziare un'operazione a pieno carico. A tale scopo, se le transazioni sono aperte all'avvio dell'attività, imposta l' opzione `TransactionConsistencyTimeout`. Il valore predefinito è 600 (10 minuti). AWS DMS avvia il caricamento completo dopo il raggiungimento del valore di timeout, anche se ci sono transazioni aperte. Un' full-load-onlyattività non aspetta 10 minuti ma inizia immediatamente.
+ Per indicare il numero massimo di record che possono essere trasferiti contemporaneamente, imposta l'opzione `CommitRate`. Il valore predefinito è 10000 e il valore massimo è 50000.

# Impostazioni delle attività Time Travel
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel"></a>

Per registrare ed eseguire il debug delle attività di replica, puoi utilizzare AWS DMS Time Travel. Con questo approccio usi Amazon S3 per archiviare e crittografare i log con le chiavi di crittografia. Solo con l'accesso al tuo bucket S3 Time Travel, puoi recuperare i log S3 utilizzando filtri data-ora, quindi visualizzare, scaricare e offuscare i log secondo le tue necessità. In questo modo, puoi andare in sicurezza indietro nel tempo per analizzare le attività del database. Time Travel funziona indipendentemente dalla CloudWatch registrazione. Per ulteriori informazioni sulla CloudWatch registrazione, vedere. [Registrazione delle impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.Logging.md) 

Puoi utilizzare Time Travel in tutte le AWS regioni con endpoint AWS DMS di origine Oracle, Microsoft SQL Server e PostgreSQL supportati e endpoint di destinazione PostgreSQL e MySQL supportati. AWS DMSÈ possibile attivare Time Travel solo per le attività di pieno carico e acquisizione dei dati di modifica (CDC) e per le attività di sola CDC. Per attivare Time Travel o modificare le impostazioni esistenti di Time Travel, assicurati che l'attività di replica sia arrestata.

Le impostazioni Time Travel includono le seguenti proprietà `TTSettings`:
+ `EnableTT`: se questa opzione è impostata su `true`, la registrazione Time Travel è attivata per l'attività. Il valore predefinito è `false`.

  Tipo: Booleano

  Obbligatorio: no
+ `EncryptionMode`: il tipo di crittografia lato server utilizzato nel bucket S3 per archiviare dati e log. Puoi specificare `"SSE_S3"` (valore predefinito) oppure `"SSE_KMS"`.

  Puoi cambiare `EncryptionMode` da `"SSE_KMS"` a `"SSE_S3"`, ma non viceversa.

  ▬Tipo: stringa

  Obbligatorio: no
+ `ServerSideEncryptionKmsKeyId`— Se specifichi for, fornisci l'ID per la tua chiave gestita personalizzata. `"SSE_KMS"` `EncryptionMode` AWS KMS Assicurati che alla chiave che utilizzi sia associata una policy che attivi le autorizzazioni utente AWS Identity and Access Management (IAM) e consenta l'uso della chiave. 

  L'opzione `"SSE_KMS"` supporta solo la chiave KMS simmetrica gestita dal cliente.

  Tipo: String

  Obbligatorio: solo se imposti `EncryptionMode` su `"SSE_KMS"`.
+ `ServiceAccessRoleArn`: il nome della risorsa Amazon (ARN) utilizzato dal servizio per accedere al ruolo IAM. Imposta il nome del ruolo su `dms-tt-s3-access-role`. Questa è un'impostazione obbligatoria che consente di AWS DMS scrivere e leggere oggetti da un bucket S3.

  Tipo: String

  Obbligatorio: se Time Travel è attivo.

  Di seguito è riportato un esempio di policy per questo ruolo.

------
#### [ JSON ]

****  

  ```
  {
   "Version":"2012-10-17",		 	 	 
   "Statement": [
          {
              "Sid": "VisualEditor0",
              "Effect": "Allow",
              "Action": [
                  "s3:PutObject",
                  "kms:GenerateDataKey",
                  "kms:Decrypt",
                  "s3:ListBucket",
                  "s3:DeleteObject"
              ],
              "Resource": [
                  "arn:aws:s3:::S3bucketName*",
                  "arn:aws:kms:us-east-1:112233445566:key/1234a1a1-1m2m-1z2z-d1d2-12dmstt1234"
              ]
          }
      ]
  }
  ```

------

  Di seguito è riportato un esempio di policy di trust per questo ruolo.

------
#### [ JSON ]

****  

  ```
  {
   "Version":"2012-10-17",		 	 	 
   "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "dms.amazonaws.com"
                   ]
               },
               "Action": "sts:AssumeRole"
          }
      ]
  }
  ```

------
+ `BucketName`: il nome del bucket S3 per archiviare i log Time Travel. Assicurati di creare questo bucket S3 prima di attivare i log Time Travel.

  Tipo: String

  Obbligatorio: se Time Travel è attivo.
+ `BucketFolder`: un parametro facoltativo per impostare un nome di cartella nel bucket S3. Se specifichi questo parametro, DMS crea i log Time Travel nel percorso `"/BucketName/BucketFolder/taskARN/YYYY/MM/DD/hh"`. Se non specifichi questo parametro, AWS DMS crea il percorso predefinito come. `"/BucketName/dms-time-travel-logs/taskARN/YYYY/MM/DD/hh`

  ▬Tipo: stringa

  Obbligatorio: no
+ `EnableDeletingFromS3OnTaskDelete`— Quando questa opzione è impostata su`true`, AWS DMS elimina i registri di Time Travel da S3 se l'attività viene eliminata. Il valore predefinito è `false`.

  ▬Tipo: stringa

  Obbligatorio: no
+ `EnableRawData`: quando questa opzione è impostata su `true`, i dati non elaborati DML (Data Manipulation Language) per i log Time Travel vengono visualizzati sotto la colonna `raw_data` dei log Time Travel. Per informazioni dettagliate, consulta [Utilizzo dei log Time Travel](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.LogSchema.md). Il valore predefinito è `false`. Quando questa opzione è impostata su `false`, viene acquisito solo il tipo di DML.

  ▬Tipo: stringa

  Obbligatorio: no
+ `RawDataFormat`— Nelle AWS DMS versioni 3.5.0 e successive, quando `EnableRawData` è impostato su. `true` Questa proprietà specifica un formato per i dati non elaborati DML in un log Time Travel e può essere presentato come:
  + `"TEXT"`: nomi e valori di colonna analizzati e leggibili per gli eventi DML acquisiti durante la CDC come campi `Raw`.
  + `"HEX"`: il codice esadecimale originale per i nomi e i valori di colonna acquisiti per gli eventi DML durante la CDC.

  Questa proprietà si applica alle origini di database Oracle e Microsoft SQL Server.

  ▬Tipo: stringa

  Obbligatorio: no
+ `OperationsToLog`: specifica il tipo di operazioni DML per accedere ai log Time Travel. È possibile specificare una delle seguenti opzioni:
  + `"INSERT"`
  + `"UPDATE"`
  + `"DELETE"`
  + `"COMMIT"`
  + `"ROLLBACK"`
  + `"ALL"`

  Il valore predefinito è `"ALL"`.

  ▬Tipo: stringa

  Obbligatorio: no
+ `MaxRecordSize`: specifica la dimensione massima dei record dei log Time Travel registrati per ogni riga. Utilizza questa proprietà per controllare l'aumento delle dimensioni dei log Time Travel per le tabelle particolarmente utilizzate. Il valore predefinito è 64 KB.

  Tipo: Integer

  Obbligatorio: no

Per ulteriori informazioni sull'attivazione e l'utilizzo dei log Time Travel, consulta i seguenti argomenti.

**Topics**
+ [

# Attivazione dei log Time Travel per un'attività
](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.TaskEnabling.md)
+ [

# Utilizzo dei log Time Travel
](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.LogSchema.md)
+ [

# Con quale frequenza AWS DMS carica i registri di Time Travel su S3
](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.UploadsToS3.md)

# Attivazione dei log Time Travel per un'attività
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.TaskEnabling"></a>

È possibile attivare Time Travel per un' AWS DMS attività utilizzando le impostazioni dell'attività descritte in precedenza. Assicurati che l'attività di replica sia interrotta prima di attivare Time Travel.

**Per attivare Time Travel, utilizzare il AWS CLI**

1. Crea un file JSON di configurazione delle attività DMS e aggiungi una sezione `TTSettings` come indicato di seguito. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).

   ```
    .
    .
    .
       },
   "TTSettings" : {
     "EnableTT" : true,
     "TTS3Settings": {
         "EncryptionMode": "SSE_KMS",
         "ServerSideEncryptionKmsKeyId": "arn:aws:kms:us-west-2:112233445566:key/myKMSKey",
         "ServiceAccessRoleArn": "arn:aws:iam::112233445566:role/dms-tt-s3-access-role",
         "BucketName": "myttbucket",
         "BucketFolder": "myttfolder",
         "EnableDeletingFromS3OnTaskDelete": false
       },
     "TTRecordSettings": {
         "EnableRawData" : true,
         "OperationsToLog": "DELETE,UPDATE",
         "MaxRecordSize": 64
       },
    .
    .
    .
   ```

1. In un'azione dell'attività appropriata, specifica questo file JSON utilizzando l'opzione `--replication-task-settings`. Ad esempio, il frammento di codice della CLI che segue specifica questo file di impostazioni Time Travel come parte di `create-replication-task`.

   ```
   aws dms create-replication-task 
   --target-endpoint-arn arn:aws:dms:us-east-1:112233445566:endpoint:ELS5O7YTYV452CAZR2EYBNQGILFHQIFVPWFRQAY \
   --source-endpoint-arn arn:aws:dms:us-east-1:112233445566:endpoint:HNX2BWIIN5ZYFF7F6UFFZVWTDFFSMTNOV2FTXZA \
   --replication-instance-arn arn:aws:dms:us-east-1:112233445566:rep:ERLHG2UA52EEJJKFYNYWRPCG6T7EPUAB5AWBUJQ \
   --migration-type full-load-and-cdc --table-mappings 'file:///FilePath/mappings.json' \
   --replication-task-settings 'file:///FilePath/task-settings-tt-enabled.json' \
   --replication-task-identifier test-task
                               .
                               .
                               .
   ```

   Qui, il nome di questo file di impostazioni Time Travel è `task-settings-tt-enabled.json`.

Allo stesso modo, è possibile specificare questo file come parte dell'azione `modify-replication-task`.

Nota la particolare gestione dei log Time Travel per le seguenti azioni dell'attività:
+ `start-replication-task`: quando si esegue un'attività di replica, se un bucket S3 utilizzato per Time Travel non è accessibile, l'attività viene contrassegnata come `FAILED`.
+ `stop-replication-task`— Quando l'attività si interrompe, invia AWS DMS immediatamente tutti i registri Time Travel attualmente disponibili per l'istanza di replica al bucket S3 utilizzato per Time Travel.

Durante l'esecuzione di un'attività di replica, è possibile modificare il valore `EncryptionMode` da `"SSE_KMS"` a `"SSE_S3"` ma non viceversa.

Se la dimensione dei log Time Travel per un'attività in corso supera 1 GB, DMS esegue il push dei log a S3 entro cinque minuti dal raggiungimento della dimensione. Dopo l'esecuzione di un'attività, se il bucket S3 o la chiave KMS diventano inaccessibili, DMS interrompe il push dei log a questo bucket. Se scopri che i log non vengono trasferiti nel bucket S3, controlla S3 e le autorizzazioni. AWS KMS Per maggiori dettagli sulla frequenza con cui DMS esegue il push dei log a S3, consulta [Con quale frequenza AWS DMS carica i registri di Time Travel su S3](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.UploadsToS3.md).

Per attivare Time Travel per un'attività esistente dalla console, utilizza l'opzione dell'editor JSON in **Impostazioni delle attività** per aggiungere una sezione `TTSettings`.

# Utilizzo dei log Time Travel
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.LogSchema"></a>

I *log Time Travel* sono file CSV (Comma-Separated Value, valori separati da virgole) con i campi seguenti.

```
log_timestamp 
component 
dms_source_code_location 
transaction_id 
event_id 
event_timestamp 
lsn/scn 
primary_key
record_type 
event_type 
schema_name 
table_name 
statement 
action 
result 
raw_data
```

Dopo che i log Time Travel sono disponibili in S3, puoi accedervi direttamente ed eseguire query con strumenti come Amazon Athena. Oppure puoi scaricare i log come qualsiasi altro file da S3.

L'esempio seguente mostra un log Time Travel in cui vengono registrate le transazioni per una tabella chiamata `mytable`. I fine riga per il log seguente sono aggiunti per motivi di leggibilità.

```
"log_timestamp ","tt_record_type","dms_source_code_location ","transaction_id",
"event_id","event_timestamp","scn_lsn","primary_key","record_type","event_type",
"schema_name","table_name","statement","action","result","raw_data"
"2021-09-23T01:03:00:778230","SOURCE_CAPTURE","postgres_endpoint_wal_engine.c:00819",
"609284109","565612992","2021-09-23 01:03:00.765321+00","00000E9C/D53AB518","","DML",
"UPDATE (3)","dmstest","mytable","","Migrate","","table dmstest.mytable:
UPDATE: id[bigint]:2244937 phone_number[character varying]:'phone-number-482'
age[integer]:82 gender[character]:'f' isactive[character]:'true ' 
date_of_travel[timestamp without time zone]:'2021-09-23 01:03:00.76593' 
description[text]:'TEST DATA TEST DATA TEST DATA TEST DATA'"
```

# Con quale frequenza AWS DMS carica i registri di Time Travel su S3
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.UploadsToS3"></a>

Per ridurre al minimo l'utilizzo dello storage dell'istanza di replica, AWS DMS scarica periodicamente i log di Time Travel da essa. 

I log Time Travel vengono sottoposti al push nel bucket Amazon S3 nei seguenti casi:
+ Se la dimensione corrente dei log supera 1 GB, AWS DMS carica i log su S3 entro cinque minuti. Pertanto, AWS DMS può effettuare fino a 12 chiamate all'ora verso S3 e per ogni attività in esecuzione. AWS KMS 
+ AWS DMS carica i log su S3 ogni ora, indipendentemente dalla dimensione dei log.
+ Quando un'attività viene interrotta, carica AWS DMS immediatamente i registri dei viaggi nel tempo su S3.

# Registrazione delle impostazioni delle attività
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.Logging"></a>

La registrazione utilizza Amazon CloudWatch per registrare le informazioni durante il processo di migrazione. Utilizzando le impostazioni delle attività di registrazione, puoi specificare quali attività di componente vengono registrate e quale quantità di informazioni viene scritta nel log. Le impostazioni delle attività di registrazione vengono scritte in un file JSON. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example). 

Puoi attivare la CloudWatch registrazione in diversi modi. È possibile selezionare l'`EnableLogging`opzione Console di gestione AWS quando si crea un'attività di migrazione. In alternativa, è possibile impostare l'`EnableLogging`opzione su `true` quando si crea un'attività utilizzando l' AWS DMS API. Puoi inoltre specificare `"EnableLogging": true` nel JSON della sezione di registrazione delle impostazioni delle attività.

Quando lo `EnableLogging` imposti su`true`, AWS DMS assegna il nome del CloudWatch gruppo e il nome dello stream come segue. Non è possibile impostare questi valori direttamente.
+ **CloudWatchLogGroup**: `dms-tasks-<REPLICATION_INSTANCE_IDENTIFIER>`
+ **CloudWatchLogStream**: `dms-task-<REPLICATION_TASK_EXTERNAL_RESOURCE_ID>`

`<REPLICATION_INSTANCE_IDENTIFIER>` è l'identificativo dell'istanza di replica. `<REPLICATION_TASK_EXTERNAL_RESOURCE_ID>` è il valore della sezione `<resourcename>` dell'ARN dell'attività. Per informazioni su come AWS DMS genera la risorsa ARNs, consulta[Creazione di un Amazon Resource Name (ARN) per AWS DMS](CHAP_Introduction.AWS.ARN.md).

CloudWatch si integra con AWS Identity and Access Management (IAM) e puoi specificare quali CloudWatch azioni può eseguire un utente AWS del tuo account. Per ulteriori informazioni sull'utilizzo di IAM in CloudWatch, consulta [Gestione delle identità e degli accessi per Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/auth-and-access-control-cw.html) e [Registrazione delle chiamate CloudWatch API Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/logging_cw_api_calls.html) nella *Amazon CloudWatch User Guide*.

Per eliminare i log delle attività, puoi impostare `DeleteTaskLogs` su true nel file JSON della sezione di registrazione delle impostazioni delle attività.

È possibile specificare la registrazione per i seguenti tipi di eventi:
+ `FILE_FACTORY`: la file factory gestisce i file utilizzati per l'applicazione e il caricamento in batch e gli endpoint Amazon S3.
+ `METADATA_MANAGER`: il gestore dei metadati gestisce i metadati di origine e di destinazione, il partizionamento e lo stato della tabella durante la replica.
+ `SORTER`: `SORTER` riceve gli eventi in entrata dal processo `SOURCE_CAPTURE`. Gli eventi vengono raggruppati in transazioni e passati al componente di servizio `TARGET_APPLY`. Se il processo `SOURCE_CAPTURE` produce eventi più velocemente di quanto il componente `TARGET_APPLY` possa consumare, il componente `SORTER` memorizza gli eventi backlog nella cache su disco o in un file swap. Gli eventi memorizzati nella cache sono una causa comune di esaurimento dello storage nelle istanze di replica.

  Il componente di servizio `SORTER` gestisce gli eventi memorizzati nella cache, raccoglie le statistiche CDC e riporta la latenza delle attività.
+ `SOURCE_CAPTURE`: i dati di replica continua (CDC) vengono acquisiti dal database o dal servizio di origine e passati al componente di servizio SORTER.
+ `SOURCE_UNLOAD`: i dati vengono scaricati dal database o dal servizio di origine durante il pieno carico.
+ `TABLES_MANAGER`: il gestore delle tabelle tiene traccia delle tabelle acquisite, gestisce l'ordine di migrazione delle tabelle e raccoglie le statistiche delle tabelle.
+ `TARGET_APPLY`: i dati e le istruzioni DDL (Data Definition Language) vengono applicati al database di destinazione.
+ `TARGET_LOAD`: i dati vengono caricati nel database di destinazione.
+ `TASK_MANAGER`: il gestore attività gestisce le attività in esecuzione e le suddivide in attività secondarie per l'elaborazione parallela dei dati.
+ `TRANSFORMATION`: eventi di trasformazione basati sulla mappatura delle tabelle. Per ulteriori informazioni, consulta [Utilizzo della mappatura delle tabelle per specificare le impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TableMapping.md).
+ `VALIDATOR/ VALIDATOR_EXT`: il componente di servizio `VALIDATOR` verifica che i dati siano stati migrati con precisione dall'origine alla destinazione. Per ulteriori informazioni, consulta [Convalida dei dati](CHAP_Validating.md). 
+ `DATA_RESYNC`— Componente comune della funzionalità di risincronizzazione dei dati che gestisce il flusso di risincronizzazione dei dati. Per ulteriori informazioni, consulta [AWS DMS risincronizzazione dei dati](CHAP_Validating.DataResync.md).
+ `RESYNC_UNLOAD`— I dati vengono scaricati dal database o dal servizio di origine durante il processo di risincronizzazione.
+ `RESYNC_APPLY`— Le istruzioni DML (Data Manipulation Language) vengono applicate al database di destinazione durante la risincronizzazione.

I seguenti componenti di registrazione generano una grande quantità di log quando si utilizza il livello di gravità del log `LOGGER_SEVERITY_DETAILED_DEBUG`:
+ `COMMON`
+ `ADDONS`
+ `DATA_STRUCTURE`
+ `COMMUNICATION`
+ `FILE_TRANSFER`
+ `FILE_FACTORY`

Livelli di registrazione diversi da `DEFAULT` sono raramente necessari per questi componenti durante la risoluzione dei problemi. Si sconsiglia di modificare il livello di registrazione `DEFAULT` per questi componenti a meno che non sia specificamente richiesto da AWS Support.

Dopo aver specificato una delle opzioni precedenti, è possibile specificare la quantità di informazioni registrate, come illustrato nel seguente elenco. 

I livelli di gravità sono in ordine dal più basso al più alto livello di informazioni. I livelli più elevati includono sempre informazioni dai livelli inferiori. 
+ LOGGER\$1SEVERITY\$1ERROR: i messaggi di errore vengono scritti nel log.
+ LOGGER\$1SEVERITY\$1WARNING: gli avvisi e i messaggi di errore vengono scritti nel log.
+ LOGGER\$1SEVERITY\$1INFO: i messaggi informativi, gli avvisi e i messaggi di errore vengono scritti nel log.
+ LOGGER\$1SEVERITY\$1DEFAULT: i messaggi informativi, gli avvisi e i messaggi di errore vengono scritti nel log.
+ LOGGER\$1SEVERITY\$1DEBUG: i messaggi di debug, i messaggi informativi, gli avvisi e i messaggi di errore vengono scritti nel log.
+ LOGGER\$1SEVERITY\$1DETAILED\$1DEBUG: tutte le informazioni vengono scritte nel log.

Nell'esempio JSON seguente vengono illustrate le impostazioni delle attività per la registrazione di tutte le operazioni e i livelli di gravità.

```
…
  "Logging": {
    "EnableLogging": true,
    "LogComponents": [
      {
        "Id": "FILE_FACTORY",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "METADATA_MANAGER",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "SORTER",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "SOURCE_CAPTURE",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "SOURCE_UNLOAD",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "TABLES_MANAGER",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "TARGET_APPLY",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      },{
        "Id": "TARGET_LOAD",
        "Severity": "LOGGER_SEVERITY_INFO"
      },{
        "Id": "TASK_MANAGER",
        "Severity": "LOGGER_SEVERITY_DEBUG"
      },{
        "Id": "TRANSFORMATION",
        "Severity": "LOGGER_SEVERITY_DEBUG"
      },{
        "Id": "VALIDATOR",
        "Severity": "LOGGER_SEVERITY_DEFAULT"
      }
    ],
    "CloudWatchLogGroup": null,
    "CloudWatchLogStream": null
  }, 
…
```

# Impostazioni delle attività delle tabelle di controllo
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.ControlTable"></a>

Le tabelle di controllo forniscono informazioni su un' AWS DMS attività. Inoltre, forniscono statistiche utili che puoi utilizzare per pianificare e gestire sia l'attività di migrazione corrente che le attività future. È possibile applicare queste impostazioni delle attività in un file JSON o scegliendo **Impostazioni avanzate** nella pagina **Crea attività** della AWS DMS console. Viene sempre creata la tabella Applica eccezioni (`dmslogs.awsdms_apply_exceptions`) nelle destinazioni del database. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example). 

AWS DMS crea tabelle di controllo solo durante le attività Full Load \$1 CDC o solo CDC e non durante le attività Full Load Only. 

Per le attività di pieno carico e CDC (migrazione dei dati esistenti e replica delle modifiche in corso) e sola CDC (solo replica delle modifiche ai dati), puoi anche creare tabelle aggiuntive, tra cui le seguenti:
+ **Stato della replica (dmslogs.awsdms\$1status)**: questa tabella fornisce i dettagli sull'attività corrente. Tali dettagli includono lo stato dell'attività, la quantità di memoria utilizzata dall'attività e il numero di modifiche non ancora applicate alla destinazione. Questa tabella indica anche la posizione nel database di origine in cui AWS DMS è attualmente in lettura. Inoltre, indica se l'attività è pieno carico o acquisizione dei dati di modifica (CDC).
+ **Tabelle sospese (dmslogs.awsdms\$1suspended\$1tables)**: Questa tabella fornisce un elenco delle tabelle sospese, nonché il motivo per il quale sono state sospese.
+ **Cronologia della replica (dmslogs.awsdms\$1history)**: questa tabella fornisce informazioni sulla cronologia delle repliche. Queste informazioni includono il numero e il volume di record elaborati durante l'attività, la latenza al termine di un'attività CDC e altre statistiche.

La tabella Apply Exceptions (`dmslogs.awsdms_apply_exceptions`) contiene i parametri seguenti.


| Colonna | Tipo | Description | 
| --- | --- | --- | 
|  TASK\$1NAME  |  nvchar  |  L'ID della risorsa dell' AWS DMS attività. L'ID risorsa è disponibile nell'ARN dell'attività.  | 
|  TABLE\$1OWNER  |  nvchar  |  Il proprietario della tabella.  | 
|  TABLE\$1NAME  |  nvchar  |  Il nome della tabella.  | 
|  ERROR\$1TIME  |  timestamp  |  L'ora in cui si è verificata l'eccezione (errore).  | 
|  STATEMENT  |  nvchar  |  L'istruzione che era in esecuzione quando si è verificato l'errore.  | 
|  ERRORE  |  nvchar  |  Il nome e la descrizione dell'errore.  | 

La tabella Replication Status (Stato replica) (`dmslogs.awsdms_status`) contiene lo stato corrente dell'attività e il database di destinazione. Dispone delle seguenti impostazioni.


| Colonna | Tipo | Description | 
| --- | --- | --- | 
|  SERVER\$1NAME  |  nvchar  |  Il nome del computer in cui l'attività di replica è in esecuzione.  | 
|  TASK\$1NAME  |  nvchar  |  L'ID della risorsa dell' AWS DMS attività. L'ID risorsa è disponibile nell'ARN dell'attività.  | 
|  TASK\$1STATUS  |  varchar  |  Uno dei seguenti valori: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.ControlTable.html) Lo stato dell'attività è impostato su FULL LOAD purché vi sia almeno una tabella in caricamento completo. Dopo che tutte le tabelle sono state caricate, lo stato dell'attività viene modificato in CHANGE PROCESSING se CDC è abilitato. L'attività è impostata su NON IN ESECUZIONE prima di avviarla o dopo il completamento dell'attività.  | 
| STATUS\$1TIME |  timestamp  |  Il timestamp dello stato dell'attività.  | 
|  PENDING\$1CHANGES  |  int  |  Il numero di record di modifiche che sono stati confermati nel database di origine e memorizzati nella memoria cache e nel disco dell'istanza di replica.  | 
|  DISK\$1SWAP\$1SIZE  |  int  |  La quantità di spazio su disco utilizzata da transazioni precedenti o di cui è stato eseguito l'offload.  | 
| TASK\$1MEMORY |  int  |  Memoria attualmente utilizzata, in MB.  | 
|  SOURCE\$1CURRENT \$1POSITION  |  varchar  |  La posizione nel database di origine da cui AWS DMS è attualmente in corso la lettura.  | 
|  SOURCE\$1CURRENT \$1TIMESTAMP  |  timestamp  |  Il timestamp nel database di origine da cui AWS DMS è attualmente in corso la lettura.  | 
|  SOURCE\$1TAIL \$1POSITION  |  varchar  |  La posizione della transazione di inizio meno recente di cui non è stato eseguito il commit. Questo valore è la posizione più recente da cui puoi eseguire il ripristino senza perdere alcuna modifica.  | 
|  SOURCE\$1TAIL \$1TIMESTAMP  |  timestamp  |  Il timestamp della transazione di inizio meno recente di cui non è stato eseguito il commit. Questo valore è il timestamp più recente da cui puoi eseguire il ripristino senza perdere alcuna modifica.  | 
|  SOURCE\$1TIMESTAMP \$1APPLIED  |  timestamp  |  Il timestamp per il commit dell'ultima transazione. In un processo di applicazione in blocco, questo valore è il timestamp per il commit dell'ultima transazione nel batch.  | 

La tabella sospesa (`dmslogs.awsdms_suspended_tables`) contiene i seguenti parametri.


| Colonna | Tipo | Description | 
| --- | --- | --- | 
|  SERVER\$1NAME  |  nvchar  |  Il nome del computer in cui l'attività di replica è in esecuzione.  | 
|  TASK\$1NAME  |  nvchar  |  Il nome dell'attività AWS DMS   | 
|  TABLE\$1OWNER  |  nvchar  |  Il proprietario della tabella.  | 
|  TABLE\$1NAME  |  nvchar  |  Il nome della tabella.  | 
|  SUSPEND\$1REASON  |  nvchar  |  Motivo della sospensione.  | 
|  SUSPEND\$1TIMESTAMP  |  timestamp  |  L'ora della sospensione.  | 

La tabella Replication History (Cronologia repliche) (`dmslogs.awsdms_history`) contiene i parametri seguenti.


| Colonna | Tipo | Description | 
| --- | --- | --- | 
|  SERVER\$1NAME  |  nvchar  |  Il nome del computer in cui l'attività di replica è in esecuzione.  | 
|  TASK\$1NAME  |  nvchar  |  L'ID della risorsa dell' AWS DMS attività. L'ID risorsa è disponibile nell'ARN dell'attività.  | 
|  TIMESLOT\$1TYPE  |  varchar  |  Uno dei seguenti valori: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.ControlTable.html) Se l'attività in esecuzione è sia di caricamento completo che CDC, nell'intervallo temporale vengono scritti due record di cronologia.  | 
| TIMESLOT |  timestamp  |  Il timestamp finale dell'intervallo temporale.  | 
|  TIMESLOT\$1DURATION  |  int  |  La durata dell'intervallo temporale, in minuti.  | 
|  TIMESLOT\$1LATENCY  |  int  |  La latenza di destinazione al termine dell'intervallo temporale, in secondi Questo valore si applica solo agli intervalli temporali CDC.  | 
| RECORDS |  int  |  Il numero di record elaborati durante l'intervallo temporale.  | 
|  TIMESLOT\$1VOLUME  |  int  |  Il volume e i dati elaborati in MB.  | 

La tabella Errore di convalida (`awsdms_validation_failures_v1`) contiene tutti gli errori di convalida dei dati per un'attività. Per ulteriori informazioni, consulta [Risoluzione dei problemi relativi alla convalida dei dati](CHAP_Validating.md#CHAP_Validating.Troubleshooting).

Le impostazioni delle tabelle di controllo aggiuntive includono le seguenti:
+ `HistoryTimeslotInMinutes`: utilizza questa opzione per indicare la lunghezza di ogni intervallo temporale nella tabella Cronologia repliche. Il valore predefinito è 5 minuti.
+ `ControlSchema`— Utilizzare questa opzione per indicare il nome dello schema del database per le tabelle di controllo della AWS DMS destinazione. Se non immetti alcuna informazione per questa opzione, le tabelle vengono copiate nella posizione predefinita del database, come indicato di seguito: 
  + PostgreSQL, Pubblico
  + Oracle, lo schema di destinazione
  + Microsoft SQL Server, dbo nel database di destinazione
  + MySQL, awsdms\$1control
  + MariaDB, awsdms\$1control
  + Amazon Redshift, pubblico
  + DynamoDB, creato come singole tabelle nel database
  + IBM Db2 LUW, awsdms\$1control

# Impostazioni delle attività di buffer del flusso
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.StreamBuffer"></a>

È possibile configurare le impostazioni dello stream buffer utilizzando AWS CLI, incluso quanto segue. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example). 
+ `StreamBufferCount`: utilizza questa opzione per specificare il numero di buffer del flusso di dati per l'attività di migrazione. Il numero di buffer del flusso predefinito è 3. Se si aumenta il valore di questa impostazione, la velocità di estrazione dei dati potrebbe aumentare. Tuttavia, queste prestazioni dipendono notevolmente dall'ambiente di migrazione, incluso il sistema di origine e la classe dell'istanza del server di replica. Il valore predefinito è sufficiente per la maggior parte dei casi.
+ `StreamBufferSizeInMB`: utilizza questa opzione per indicare le dimensioni massime di ogni buffer del flusso di dati. Le dimensioni predefinite sono di 8 MB. Potrebbe essere necessario aumentare il valore di questa opzione quando si utilizzano applicazioni molto grandi LOBs. Potresti inoltre dover aumentare il valore se ricevi un messaggio nei file di log in cui viene indicato che le dimensioni di buffer del flusso sono insufficienti. Per il calcolo delle dimensioni di questa opzione, puoi utilizzare la seguente equazione:` [Max LOB size (or LOB chunk size)]*[number of LOB columns]*[number of stream buffers]*[number of tables loading in parallel per task(MaxFullLoadSubTasks)]*3`
+ `CtrlStreamBufferSizeInMB`: utilizza questa opzione per impostare le dimensioni massime di buffer del flusso di controllo. Il valore è in megabyte e può essere compreso tra 1 e 8. Il valore predefinito è 5. Potresti dover aumentare questo valore se utilizzi un numero molto elevato di tabelle, ad esempio decine di migliaia di tabelle.

# Impostazioni di ottimizzazione dell'elaborazione delle modifiche
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning"></a>

Le seguenti impostazioni determinano il modo in cui AWS DMS gestisce le modifiche per le tabelle di destinazione durante l'acquisizione dei dati delle modifiche (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](CHAP_Tasks.CustomizingTasks.TaskSettings.TargetMetadata.md). Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).

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 la quantità minima di tempo di AWS DMS attesa, in secondi, tra ogni applicazione di modifiche in batch. Il valore predefinito è 1.
+ `BatchApplyTimeoutMax`— Imposta il tempo massimo di AWS DMS attesa, in secondi, 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](CHAP_Task.CDC.md#CHAP_Task.CDC.Bidirectional).

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 e il valore massimo è 200.
+ `RecoveryTimeout`— Quando si riprende un'attività in modalità CDC, RecoveryTimeout controlla per quanto tempo (in minuti) l'attività dovrà attendere prima che superi il checkpoint di ripresa. Se il checkpoint non viene raggiunto entro il periodo di tempo configurato, l'operazione avrà esito negativo. Il comportamento predefinito consiste nell'attendere indefinitamente l'evento del checkpoint.

Esempio di come le impostazioni delle attività che gestiscono l'ottimizzazione dell'elaborazione delle modifiche vengono visualizzate in un file JSON di impostazione delle attività:

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

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](CHAP_Target.S3.md#CHAP_Target.S3.Configuring).

# Impostazioni delle attività di convalida dei dati
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.DataValidation"></a>

Puoi assicurarti che i dati vengano migrati in modo accurato dall'origine alla destinazione. Se abiliti la convalida per un'attività, AWS DMS inizia a confrontare i dati di origine e di destinazione immediatamente dopo il caricamento completo di una tabella. Per ulteriori informazioni sulle attività di convalida dei dati, i requisiti, l'ambito del supporto dei database, nonché le metriche indicate, consulta [AWS Convalida dei dati DMS](CHAP_Validating.md). Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).

 Le impostazioni di convalida dei dati e i relativi valori sono i seguenti:
+ `EnableValidation`: abilita la convalida dei dati quando è impostato su true. In caso contrario, la convalida è disattivata per l'attività. Il valore predefinito è false.
+ `ValidationMode`— controlla il modo in cui AWS DMS convalida i dati nella tabella di destinazione rispetto alla tabella di origine. A partire dalla versione 3.5.4 del motore di replica, DMS lo imposta automaticamente sui percorsi di migrazione supportati, offrendo prestazioni di convalida migliorate e un'elaborazione notevolmente più rapida `GROUP_LEVEL` per set di dati di grandi dimensioni. [Questo miglioramento si applica alle migrazioni per i percorsi di migrazione elencati nella risincronizzazione dei dati.AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Validating.DataResync.html#CHAP_DataResync.limitations) Per tutti gli altri percorsi di migrazione, la modalità di convalida è predefinita su. `ROW_LEVEL` 
**Nota**  
Indipendentemente dall'impostazione, AWS DMS convalida tutte le righe configurate tramite la convalida della tabella.
+ `FailureMaxCount`: specifica il numero massimo di record per i quali la convalida non riesce prima che questa venga sospesa per l'attività. Il valore predefinito è 10,000. Se si desidera che la convalida continui indipendentemente dal numero di record per i quali la convalida non riesce, impostare un valore superiore al numero di record nell'origine.
+ `HandleCollationDiff`— Quando questa opzione è impostata su`true`, la convalida tiene conto delle differenze di confronto delle colonne tra i database di origine e di destinazione. Altrimenti, per la convalida tali differenze di collazione per le colonne vengono ignorate. Le regole di confronto per le colonne possono determinare l'ordine delle righe, che è importante per la convalida dei dati. L'impostazione di `HandleCollationDiff` su true risolve automaticamente tali differenze di collazione e impedisce falsi positivi nella convalida dei dati. Il valore predefinito è `false`.
+ `RecordFailureDelayInMinutes`: specifica il ritardo in minuti prima della segnalazione dei dettagli relativi a qualsiasi errore di convalida.

  Se la latenza complessiva di DMS Task CDC è maggiore del valore di `RecordFailureDelayInMinutesthen` cui ha la precedenza, ad esempio se `RecordFailureDelayInMinutes` è 5 e la latenza CDC è 7 minuti, DMS attende 7 minuti per riportare i dettagli dell'errore di convalida.
+ `RecordFailureDelayLimitInMinutes`— Speciifica il ritardo prima di riportare i dettagli di eventuali errori di convalida. AWS DMS utilizza la latenza dell'attività per riconoscere il ritardo effettivo delle modifiche da apportare alla destinazione al fine di prevenire falsi positivi. Questa impostazione ha la precedenza sul ritardo effettivo e sul valore di latenza CDC dell'attività DMS e consente di impostare un ritardo maggiore prima di riportare qualsiasi metrica di convalida. Il valore predefinito è 0.
+ `RecordSuspendDelayInMinutes`: specifica il ritardo in minuti prima che le tabelle vengano sospese dalla convalida a causa della soglia di errore impostata in `FailureMaxCount`.
+ `SkipLobColumns`— Quando questa opzione è impostata su`true`, AWS DMS salta la convalida dei dati per tutte le colonne LOB nella parte della tabella relativa alla convalida dell'attività. Il valore predefinito è `false`.
+ `TableFailureMaxCount`: specifica il numero massimo di righe in una tabella per le quali la convalida non riesce prima che questa venga sospesa per la tabella. Il valore predefinito è 1,000. 
+ `ThreadCount`— specifica il numero di thread di esecuzione utilizzati durante la convalida. AWS DMS Ogni thread seleziona not-yet-validated i dati dall'origine e dalla destinazione per confrontarli e convalidarli. Il valore predefinito è 5. Se `ThreadCount` imposti un numero più alto, AWS DMS puoi completare la convalida più velocemente. Tuttavia, in tal caso AWS DMS esegue più query simultanee, utilizzando più risorse sull'origine e sulla destinazione.
+ `ValidationOnly`: quando questa opzione è impostata su `true`, l'attività esegue la convalida dei dati senza alcuna migrazione o replica dei dati. Il valore predefinito è `false`. Non è possibile modificare l'impostazione `ValidationOnly` dopo la creazione dell'attività.

  È necessario **TargetTablePrepMode**impostare su `DO_NOTHING` (impostazione predefinita per un'attività di sola convalida) e impostare il **tipo di migrazione** su uno dei seguenti:
  + Caricamento completo: imposta il **tipo di migrazione** dell'attività su **Migrare i dati esistenti** nella AWS DMS console. Oppure, nell' AWS DMS API, imposta il tipo di migrazione su FULL-LOAD.
  + CDC: imposta **Tipo di migrazione** dell'attività su **Replica delle sole modifiche dei dati** nella console AWS DMS . Oppure, nell' AWS DMS API, imposta il tipo di migrazione su CDC.

  Indipendentemente dal tipo di migrazione scelto, i dati non vengono migrati o replicati durante un'attività di sola convalida.

  Per ulteriori informazioni, consulta [Attività di sola convalida](CHAP_Validating.md#CHAP_Validating.ValidationOnly).
**Importante**  
L'impostazione `ValidationOnly` è immutabile. Non può essere modificata per un'attività già creata.
+ `ValidationPartialLobSize`: indica se si desidera eseguire una convalida parziale per le colonne LOB anziché convalidare tutti i dati memorizzati nella colonna. Questo potrebbe essere utile per migrare solo una parte dei dati LOB e non l'intero set di dati LOB. Il valore è espresso in unità KB. Il valore predefinito è 0, che significa che AWS DMS convalida tutti i dati della colonna LOB. Ad esempio, `"ValidationPartialLobSize": 32` significa che convalida AWS DMS solo i primi 32 KB dei dati della colonna sia nell'origine che nella destinazione.
+ `PartitionSize`: specifica la dimensione del batch dei record da leggere per il confronto sia dall'origine che dalla destinazione. Il valore predefinito è 10.000.
+ `ValidationQueryCdcDelaySeconds`: il periodo di tempo in cui viene ritardata la prima query di convalida sia sull'origine che sulla destinazione per ogni aggiornamento CDC. Può aiutare a ridurre il conflitto di risorse quando la latenza di migrazione è elevata. Un'attività di sola convalida imposta automaticamente questa opzione su 180 secondi. Il valore predefinito è 0.

Ad esempio, il seguente file JSON consente la convalida dei dati con un numero di thread doppio rispetto all'impostazione predefinita. Inoltre, calcola anche le differenze nell'ordine dei record a causa delle differenze di collazione per le colonne negli endpoint PostgreSQL. Fornisce inoltre un ritardo di notifica della convalida per calcolare il tempo aggiuntivo di elaborazione degli errori di convalida.

```
"ValidationSettings": {
     "EnableValidation": true,
     "ThreadCount": 10,
     "HandleCollationDiff": true,
     "RecordFailureDelayLimitInMinutes": 30
  }
```

**Nota**  
Per un endpoint Oracle, AWS DMS utilizza DBMS\$1CRYPTO per la convalida. BLOBs Se l'endpoint Oracle lo utilizza BLOBs, concedi l'`execute`autorizzazione per DBMS\$1CRYPTO all'account utente che accede all'endpoint Oracle. Per farlo, esegui l'istruzione riportata di seguito.  

```
grant execute on sys.dbms_crypto to dms_endpoint_user;
```

# Impostazioni di risincronizzazione dei dati
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.DataResyncSettings"></a>

La funzione di risincronizzazione dei dati consente di risincronizzare il database di destinazione con il database di origine in base al rapporto di convalida dei dati. [Per ulteriori informazioni, consulta la sezione Convalida dei dati.AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Validating.html)

È possibile aggiungere parametri aggiuntivi per `ResyncSettings` l'`ReplicationTaskSettings`endpoint che configura il processo di risincronizzazione. Per ulteriori informazioni, vedere [Esempio di impostazioni delle attività nella sezione [Specificazione](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.html) delle impostazioni](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.html#CHAP_Tasks.CustomizingTasks.TaskSettings.Example) delle attività per le attività. AWS Database Migration Service 

**Nota**  
`ResyncSchedule`e `MaxResyncTime` i parametri sono obbligatori se il processo di risincronizzazione è abilitato e l'attività ha un componente CDC. Non sono validi solo per le attività a pieno carico.

Le impostazioni e i valori del parametro Data resync sono i seguenti:

`EnableResync`  
Abilita la funzionalità di risincronizzazione dei dati quando è impostata su. `true` Per impostazione predefinita, la risincronizzazione dei dati è disabilitata.  
**Tipo di dati: booleano**  
**Obbligatorio:** no  
**Default**: `false`  
**Convalida**: non dovrebbe essere nulla se il parametro è presente in. `ResyncSettings` `TaskSettings`

`ResyncSchedule`  
Finestra temporale di entrata in vigore della funzione di risincronizzazione dei dati. Deve essere presente in formato Cron. Per ulteriori informazioni, consulta [Regole di espressione Cron](CHAP_Validating.DataResync.md#CHAP_DataResync.cron).  
**Tipo di dati: String**  
**Obbligatorio:** no  
**Convalida**:   
+ Deve essere presente nel formato di espressione Cron.
+ Non dovrebbe essere nullo per le attività con CDC impostato su. `EnableResync` `true`
+ Non può essere impostato per attività senza componente CDC.

`MaxResyncTime`  
Limite di tempo massimo in minuti per l'entrata in vigore della funzionalità di risincronizzazione dei dati.  
**Tipo di dati: numero intero**  
**Obbligatorio:** no  
**Convalida**:   
+ Non dovrebbe essere nullo per le attività con CDC.
+ Non richiesto per le attività senza CDC.
+ Valore minimo:`5 minutes`, Valore massimo: `14400 minutes` (10 giorni).

`Validation onlyTaskID`  
ID univoco dell'attività di convalida. L'ID dell'attività di sola convalida viene aggiunto alla fine di un ARN. Esempio:  
+ ARN dell'attività di sola convalida: `arn:aws:dms:us-west-2:123456789012:task:6DG4CLGJ5JSJR67CFD7UDXFY7KV6CYGRICL6KWI`
+ ID dell'attività di sola convalida: `6DG4CLGJ5JSJR67CFD7UDXFY7KV6CYGRICL6KWI`
**Tipo di dati: stringa**  
**Obbligatorio:** no  
**Convalida**: non dovrebbe essere nulla per le attività con la funzionalità di risincronizzazione dei dati abilitata e la convalida disabilitata.  
Esempio:  

```
"ResyncSettings": {
    "EnableResync": true,
    "ResyncSchedule": "30 9 ? * MON-FRI", 
    "MaxResyncTime": 400,  
    "ValidationTaskId": "JXPP94804DJOEWIJD9348R3049"
},
```

# Impostazioni delle attività per la gestione di DDL durante l'elaborazione delle modifiche
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.DDLHandling"></a>



Le seguenti impostazioni determinano la modalità di AWS DMS gestione delle modifiche DDL (Data Definition Language) per le tabelle di destinazione durante l'acquisizione dei dati delle modifiche (CDC). Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example). 

Le impostazioni delle attività per gestire l'elaborazione delle modifiche DDL includono quanto segue:
+ `HandleSourceTableDropped –` Imposta questa opzione su `true` per eliminare la tabella di destinazione quando la tabella di origine viene eliminata.
+ `HandleSourceTableTruncated`: imposta questa opzione su `true` per troncare la tabella di destinazione quando la tabella di origine viene troncata.
+ `HandleSourceTableAltered`: imposta questa opzione su `true` per modificare la tabella di destinazione quando la tabella di origine viene modificata.

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

```
                "ChangeProcessingDdlHandlingPolicy": {
                   "HandleSourceTableDropped": true,
                   "HandleSourceTableTruncated": true,
                   "HandleSourceTableAltered": true
                },
```

**Nota**  
Per informazioni sulle istruzioni DDL supportate per un endpoint specifico, consulta l'argomento che descrive l'endpoint.

# Impostazioni dell'attività di sostituzione dei caratteri
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.CharacterSubstitution"></a>

È possibile specificare che l'attività di replica esegua sostituzioni di caratteri nel database di destinazione per tutte le colonne del database di origine con il tipo di dati or. AWS DMS `STRING` `WSTRING` Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example). 

Puoi configurare la sostituzione dei caratteri per qualsiasi attività con endpoint dai seguenti database di origine e di destinazione:
+ Database di origine:
  + Oracle
  + Microsoft SQL Server
  + MySQL
  + MariaDB
  + PostgreSQL
  + SAP Adaptive Server Enterprise (ASE)
  + IBM Db2 LUW
+ Database di destinazione:
  + Oracle
  + Microsoft SQL Server
  + MySQL
  + MariaDB
  + PostgreSQL
  + SAP Adaptive Server Enterprise (ASE)
  + Amazon Redshift

Puoi specificare le sostituzioni dei caratteri utilizzando il parametro `CharacterSetSettings` nelle impostazioni delle attività. Queste sostituzioni dei caratteri si verificano per i caratteri specificati utilizzando il valore del punto di codice Unicode in notazione esadecimale. Puoi implementare le sostituzioni in due fasi, nel seguente ordine se sono specificate entrambe:

1. **Sostituzione di caratteri individuali**: AWS DMS può sostituire i valori dei caratteri selezionati sull'origine con valori sostitutivi specificati dei caratteri corrispondenti sulla destinazione. Utilizza la matrice `CharacterReplacements` in `CharacterSetSettings` per selezionare tutti i caratteri di origine con i punti di codice Unicode specificati. Utilizza questa matrice anche per specificare i punti di codice di sostituzione per i caratteri corrispondenti sulla destinazione. 

   Per selezionare tutti i caratteri sull'origine che hanno un determinato punto di codice, imposta un'istanza di `SourceCharacterCodePoint` nella matrice `CharacterReplacements` su tale punto di codice. Successivamente, specifica il punto di codice di sostituzione per tutti i caratteri destinazione equivalenti impostando l'istanza corrispondente di `TargetCharacterCodePoint` in questa matrice. Per eliminare i caratteri di destinazione anziché sostituirli, imposta le istanze appropriate di `TargetCharacterCodePoint` su zero (0). Puoi sostituire o eliminare tutti i valori diversi di caratteri di destinazione desiderati specificando coppie aggiuntive di impostazioni `SourceCharacterCodePoint` e `TargetCharacterCodePoint` nella matrice `CharacterReplacements`. Se specifichi lo stesso valore per più istanze di `SourceCharacterCodePoint`, il valore dell'ultima impostazione corrispondente di `TargetCharacterCodePoint` si applica alla destinazione.

   Ad esempio, supponiamo di specificare i seguenti valori per `CharacterReplacements`.

   ```
   "CharacterSetSettings": {
       "CharacterReplacements": [ {
           "SourceCharacterCodePoint": 62,
           "TargetCharacterCodePoint": 61
           }, {
           "SourceCharacterCodePoint": 42,
           "TargetCharacterCodePoint": 41
           }
       ]
   }
   ```

   In questo esempio, AWS DMS sostituisce tutti i caratteri con il valore esadecimale 62 del punto di codice sorgente sulla destinazione con caratteri con il valore del punto di codice 61. Inoltre, AWS DMS sostituisce tutti i caratteri con il codice sorgente punto 42 sulla destinazione con caratteri con il valore del punto di codice 41. In altre parole, AWS DMS sostituisce tutte le istanze della lettera `'b'` sulla destinazione con la lettera `'a'`. Analogamente, AWS DMS sostituisce tutte le istanze della lettera `'B'` sulla destinazione con la lettera. `'A'`

1. **Convalida e sostituzione del set di caratteri**: una volta completata la sostituzione dei singoli caratteri, è AWS DMS possibile verificare che tutti i caratteri di destinazione abbiano punti di codice Unicode validi nel singolo set di caratteri specificato. Puoi utilizzare `CharacterSetSupport` in `CharacterSetSettings` per configurare la verifica e la modifica di questo carattere di destinazione. Per specificare il set di caratteri di verifica, imposta `CharacterSet` in `CharacterSetSupport` sul valore di stringa del set di caratteri. Di seguito, i possibili valori per `CharacterSet`. È possibile AWS DMS modificare i caratteri di destinazione non validi in uno dei seguenti modi:
   + Specifica un singolo punto di codice Unicode sostitutivo per tutti i caratteri di destinazione non validi, indipendentemente dal punto di codice corrente. Per configurare questo punto di codice sostitutivo, imposta `ReplaceWithCharacterCodePoint` in `CharacterSetSupport` sul valore specificato. 
   + Configura l'eliminazione di tutti i caratteri di destinazione non validi impostando `ReplaceWithCharacterCodePoint` su zero (0).

   Ad esempio, supponiamo di specificare i seguenti valori per `CharacterSetSupport`.

   ```
   "CharacterSetSettings": {
       "CharacterSetSupport": {
           "CharacterSet": "UTF16_PlatformEndian",
           "ReplaceWithCharacterCodePoint": 0
       }
   }
   ```

   In questo esempio, AWS DMS elimina tutti i caratteri trovati sulla destinazione che non sono validi nel set di caratteri. `"UTF16_PlatformEndian"` Pertanto, vengono eliminati tutti i caratteri specificati con il valore esadecimale `2FB6`. Questo valore non è valido perché si tratta di un punto di codice Unicode a 4 byte e i set di caratteri accettano solo UTF16 caratteri con punti di codice a 2 byte.

**Nota**  
L'attività di replica completa tutte le sostituzioni dei caratteri specificate prima di avviare qualsiasi trasformazione globale o a livello di tabella specificata tramite la mappatura delle tabelle. Per ulteriori informazioni sulla mappatura delle tabelle, consulta [Utilizzo della mappatura delle tabelle per specificare le impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TableMapping.md).  
La sostituzione dei caratteri non supporta i tipi di dati LOB. È incluso qualsiasi tipo di dati che DMS considera LOB. Ad esempio, il tipo di dati `Extended` in Oracle è considerato LOB. Per ulteriori informazioni sui tipi di dati di origine, consulta [Tipi di dati di origine per Oracle](CHAP_Source.Oracle.md#CHAP_Source.Oracle.DataTypes). 

I valori che AWS DMS supporta for `CharacterSet` vengono visualizzati nella tabella seguente.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TaskSettings.CharacterSubstitution.html)

# Impostazioni dell'attività immagine precedente
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.BeforeImage"></a>

Quando si scrivono aggiornamenti CDC a una destinazione di flusso di dati come Kinesis o Apache Kafka, è possibile visualizzare i valori originali di una riga del database di origine prima della modifica da un aggiornamento. Per rendere possibile ciò, AWS DMS compila un'*immagine precedente* degli eventi di aggiornamento in base ai dati forniti dal motore di database di origine. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).

Per farlo, usa il parametro `BeforeImageSettings` che aggiunge un nuovo attributo JSON a ogni operazione di aggiornamento con valori raccolti dal sistema di database di origine. 

Assicurati di applicare `BeforeImageSettings` solo alle attività di pieno carico e CDC o alle attività di sola CDC. Le attività di pieno carico e CDC migrano i dati esistenti e replicano le modifiche in corso. Le attività di sola CDC replicano solo le modifiche ai dati. 

Non applicare `BeforeImageSettings` alle attività a pieno carico.

Le possibili opzioni per `BeforeImageSettings` sono le seguenti:
+ `EnableBeforeImage`: si attiva prima dell'acquisizione dell'immagine quando è impostata su `true`. Il valore predefinito è `false`. 
+ `FieldName`: assegna un nome al nuovo attributo JSON. Quando `EnableBeforeImage` è `true`, `FieldName` è richiesto e non può essere vuoto.
+ `ColumnFilter`: specifica una colonna da aggiungere utilizzando l'acquisizione dell'immagine precedente. Per aggiungere solo colonne che fanno parte delle chiavi primarie della tabella, utilizzare il valore predefinito, `pk-only`. Per aggiungere qualsiasi colonna con un valore immagine prima, utilizzare `all`. L'immagine precedente non supporta tipi di dati LOB (oggetti binari di grandi dimensioni) come CLOB e BLOB.

L'esempio seguente mostra l'utilizzo di `BeforeImageSettings`. 

```
"BeforeImageSettings": {
    "EnableBeforeImage": true,
    "FieldName": "before-image",
    "ColumnFilter": "pk-only"
  }
```

Per informazioni sulle impostazioni dell'immagine precedente per Kinesis, incluse le impostazioni di mappatura delle tabelle aggiuntive, consulta [Utilizzo di un'immagine precedente per visualizzare i valori originali delle righe CDC per un flusso di dati Kinesis come destinazione](CHAP_Target.Kinesis.md#CHAP_Target.Kinesis.BeforeImage).

Per informazioni sulle impostazioni dell'immagine precedente per Kafka, incluse le impostazioni di mappatura delle tabelle aggiuntive, consulta [Utilizzo di un'immagine precedente per visualizzare i valori originali delle righe CDC per Apache Kafka come destinazione](CHAP_Target.Kafka.md#CHAP_Target.Kafka.BeforeImage).

# Impostazioni delle attività per la gestione degli errori
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.ErrorHandling"></a>

Puoi impostare il comportamento di gestione degli errori dell'attività di replica utilizzando le impostazioni seguenti. Per informazioni su come utilizzare un file di configurazione dell'attività per impostare le impostazioni dell'attività, consulta [Esempio di impostazioni delle attività](CHAP_Tasks.CustomizingTasks.TaskSettings.md#CHAP_Tasks.CustomizingTasks.TaskSettings.Example).
+ `DataErrorPolicy`— Determina l'azione intrapresa da AWS DMS in caso di errore relativo all'elaborazione dei dati a livello di record. Alcuni esempi di errori di elaborazione dei dati includono gli errori di conversione, gli errori di trasformazione e i dati non validi. Il valore predefinito è `LOG_ERROR`.
  + `IGNORE_RECORD`: l'attività continua e i dati per tale record vengono ignorati. Il conteggio degli errori per la proprietà `DataErrorEscalationCount` viene incrementato. Pertanto, se imposti un limite agli errori per una tabella, questo errore viene conteggiato fino al raggiungimento del limite. 
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `DataTruncationErrorPolicy`: determina l'azione effettuata da AWS DMS quando i dati sono troncati. Il valore predefinito è `LOG_ERROR`.
  + `IGNORE_RECORD`: l'attività continua e i dati per tale record vengono ignorati. Il conteggio degli errori per la proprietà `DataErrorEscalationCount` viene incrementato. Pertanto, se imposti un limite agli errori per una tabella, questo errore viene conteggiato fino al raggiungimento del limite. 
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `DataErrorEscalationPolicy`: determina l'azione effettuata da AWS DMS quando il numero massimo di errori (impostato nel parametro `DataErrorEscalationCount`) viene raggiunto. Il valore predefinito è `SUSPEND_TABLE`.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `DataErrorEscalationCount`: imposta il numero massimo di errori che possono verificarsi per i dati per un record specifico. Quando questo numero viene raggiunto, i dati per la tabella che contiene il record di errore vengono gestiti in base al set di policy in `DataErrorEscalationPolicy`. Il valore predefinito è 0. 
+ `EventErrorPolicy`— Determina l'azione intrapresa da AWS DMS quando si verifica un errore durante l'invio di un evento relativo all'attività. I valori possibili sono:
  + `IGNORE`: l'attività continua e tutti i dati associati all'evento vengono ignorati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `TableErrorPolicy`: determina l'azione effettuata da AWS DMS quando si verifica un errore durante l'elaborazione dei dati o dei metadati per una tabella specifica. Questo errore si applica solo ai dati di tabella generali e non è correlato a un record specifico. Il valore predefinito è `SUSPEND_TABLE`.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `TableErrorEscalationPolicy`: determina l'azione effettuata da AWS DMS quando il numero massimo di errori (impostato mediante il parametro `TableErrorEscalationCount`) viene raggiunto. L'impostazione predefinita e l'unica disponibile per l'utente è `STOP_TASK`, in base alla quale l'attività viene arrestata ed è necessario l'intervento manuale.
+ `TableErrorEscalationCount`: il numero massimo di errori che possono verificarsi per i dati o i metadati generali per una tabella specifica. Quando questo numero viene raggiunto, i dati per la tabella vengono gestiti in base al set di policy in `TableErrorEscalationPolicy`. Il valore predefinito è 0. 
+ `RecoverableErrorCount`: il numero massimo di tentativi effettuati per riavviare un'attività quando si verifica un errore ambientale. Dopo che il sistema ha tentato di riavviare l'attività il numero specificato di volte, l'attività viene arrestata ed è necessario l'intervento manuale. Il valore predefinito è -1.

  Quando si imposta questo valore su -1, il numero di tentativi effettuati da DMS varia in base al tipo di errore restituito nel modo seguente:
  + **Stato di esecuzione, errore ripristinabile: se si verifica un errore** recuperabile, ad esempio una connessione persa o un errore nell'applicazione di un obiettivo, DMS riprova l'operazione nove volte.
  + **Stato iniziale, errore recuperabile: DMS riprova** l'operazione sei volte.
  + **Stato di esecuzione, errore irreversibile gestito da DMS: DMS** riprova l'operazione sei volte.
  + **Stato in esecuzione, errore irreversibile non gestito da DMS: DMS non** riprova l'operazione.
  + **Oltre a quanto sopra**: AWS DMS riprova l'operazione a tempo indeterminato.

  Per fare in modo che non venga mai tentato di riavviare un'attività, imposta il valore su 0. 

  Si consiglia di impostare `RecoverableErrorCount` e impostare valori tali `RecoverableErrorInterval` da consentire un numero sufficiente di tentativi a intervalli sufficienti per consentire il corretto ripristino dell'attività DMS. Se si verifica un errore irreversibile, nella maggior parte degli scenari DMS interrompe i tentativi di riavvio.
+ `RecoverableErrorInterval`— Il numero di secondi che AWS DMS attende tra un tentativo e l'altro per riavviare un'attività. Il predefinito è 5. 
+ `RecoverableErrorThrottling`: se abilitato, l'intervallo tra i tentativi di riavvio di un'attività viene aumentato in una serie in base al valore di `RecoverableErrorInterval`. Ad esempio, se `RecoverableErrorInterval` è impostato su 5 secondi, il tentativo successivo verrà eseguito dopo 10 secondi, quindi 20, 40 secondi e così via. Il valore predefinito è `true`. 
+ `RecoverableErrorThrottlingMax`— Il numero massimo di secondi che AWS DMS attende tra i tentativi di riavvio di un'attività, se abilitata. `RecoverableErrorThrottling` Il valore predefinito è 1800. 
+ `RecoverableErrorStopRetryAfterThrottlingMax`— Il valore predefinito è impostato su e DMS interrompe la ripresa dell'attività dopo aver raggiunto il numero massimo di secondi di AWS DMS attesa tra i tentativi di ripristino, per. `true` `RecoverableErrorStopRetryAfterThrottlingMax` Se impostato su`false`, DMS continua a riprendere l'attività dopo aver raggiunto il numero massimo di secondi di AWS DMS attesa tra i tentativi di ripristino, per fino al raggiungimento. `RecoverableErrorStopRetryAfterThrottlingMax` `RecoverableErrorCount`
+ `ApplyErrorDeletePolicy`: determina quale azione viene effettuata da AWS DMS se si verifica un conflitto con un'operazione DELETE. Il valore predefinito è `IGNORE_RECORD`. I valori possibili sono i seguenti:
  + `IGNORE_RECORD`: l'attività continua e i dati per tale record vengono ignorati. Il conteggio degli errori per la proprietà `ApplyErrorEscalationCount` viene incrementato. Pertanto, se imposti un limite agli errori per una tabella, questo errore viene conteggiato fino al raggiungimento del limite. 
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `ApplyErrorInsertPolicy`: determina quale azione viene effettuata da AWS DMS se si verifica un conflitto con un'operazione INSERT. Il valore predefinito è `LOG_ERROR`. I valori possibili sono i seguenti:
  + `IGNORE_RECORD`: l'attività continua e i dati per tale record vengono ignorati. Il conteggio degli errori per la proprietà `ApplyErrorEscalationCount` viene incrementato. Pertanto, se imposti un limite agli errori per una tabella, questo errore viene conteggiato fino al raggiungimento del limite. 
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
  + `INSERT_RECORD`: se è presente un record di destinazione esistente con la stessa chiave primaria del record di origine inserito, il record di destinazione viene aggiornato.
**Nota**  
**In modalità Transactional Apply**: in questo processo, il sistema tenta innanzitutto di inserire il record. Se l'inserimento non riesce a causa di un conflitto di chiave primaria, elimina il record esistente e quindi inserisce quello nuovo. 
**In modalità Batch Apply**: il processo rimuove tutti i record esistenti nel batch di destinazione prima di inserire il set completo di nuovi record, garantendo una sostituzione pulita dei dati.
Questo processo impedisce la duplicazione dei dati, ma comporta un certo costo in termini di prestazioni rispetto alla politica predefinita. L'impatto esatto sulle prestazioni dipende dalle caratteristiche specifiche del carico di lavoro.
+ `ApplyErrorUpdatePolicy`: determina quale azione viene effettuata da AWS DMS se si verifica un conflitto con un'operazione UPDATE. Il valore predefinito è `LOG_ERROR`. I valori possibili sono i seguenti:
  + `IGNORE_RECORD`: l'attività continua e i dati per tale record vengono ignorati. Il conteggio degli errori per la proprietà `ApplyErrorEscalationCount` viene incrementato. Pertanto, se imposti un limite agli errori per una tabella, questo errore viene conteggiato fino al raggiungimento del limite. 
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
  + `UPDATE_RECORD`— Se manca il record di destinazione, il record di destinazione mancante viene inserito nella tabella di destinazione. AWS DMS disabilita completamente il supporto delle colonne LOB per l'attività. La selezione di questa opzione richiede l'abilitazione del log supplementare completo per tutte le colonne della tabella di origine se Oracle è il database di origine.
**Nota**  
**In modalità Transactional Apply**: in questo processo, il sistema tenta innanzitutto di aggiornare il record. Se l'aggiornamento non riesce a causa di un record mancante sulla destinazione, esegue un'eliminazione per il record non riuscito e quindi ne inserisce uno nuovo. Questo processo richiede una registrazione supplementare completa per i database di origine Oracle e DMS disabilita il supporto delle colonne LOB per questa attività.
**In modalità Batch Apply**: il processo rimuove tutti i record esistenti nel batch di destinazione prima di inserire il set completo di nuovi record, garantendo una sostituzione pulita dei dati.
+ `ApplyErrorEscalationPolicy`— Determina l'azione intrapresa da AWS DMS quando viene raggiunto il numero massimo di errori (impostato utilizzando il `ApplyErrorEscalationCount` parametro). Il valore predefinito è LOG\$1ERROR:
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.
  + `STOP_TASK`: l'attività viene interrotta ed è necessario l'intervento manuale.
+ `ApplyErrorEscalationCount`: questa opzione imposta il numero massimo di conflitti APPLY che possono verificarsi per una tabella specifica durante un'operazione di elaborazione delle modifiche. Quando questo numero viene raggiunto, i dati della tabella vengono gestiti in base alla policy impostata nel parametro `ApplyErrorEscalationPolicy`. Il valore predefinito è 0. 
+ `ApplyErrorFailOnTruncationDdl`: imposta questa opzione su `true` per causare l'errore dell'attività quando un troncamento viene eseguito su una qualsiasi delle tabelle tracciate durante l'operazione CDC. Il valore predefinito è `false`. 

  Questo approccio non funziona con PostgreSQL 11.x o versioni precedenti oppure qualsiasi altro endpoint di origine che non replica il troncamento della tabella DDL.
+ `FailOnNoTablesCaptured`: imposta questa opzione su `true` per causare l'errore dell'attività quando le mappature della tabella definite per un'attività non trovano alcuna tabella all'avvio dell'attività. Il valore predefinito è `true`.
+ `FailOnTransactionConsistencyBreached`: questa opzione si applica alle attività mediante Oracle come origine con l'operazione CDC. Il valore predefinito è false. Impostala su `true` per causare l'errore dell'attività quando una transazione viene aperta per un periodo di tempo maggiore rispetto al timeout specificato e può essere eliminata. 

  Quando un'attività CDC inizia con Oracle, AWS DMS attende per un periodo di tempo limitato la chiusura della transazione aperta più vecchia prima di avviare CDC. Se la transazione aperta più vecchia non si chiude fino al raggiungimento del timeout, nella maggior parte dei casi AWS DMS avvia CDC, ignorando quella transazione. Se questa opzione è impostata su `true`, l'attività ha esito negativo.
+ `FullLoadIgnoreConflicts`— Imposta questa opzione in modo da `true` AWS DMS ignorare gli errori «zero righe interessate» e «duplicati» quando si applicano gli eventi memorizzati nella cache. Se impostato su`false`, AWS DMS riporta tutti gli errori invece di ignorarli. Il valore predefinito è `true`. 
+ `DataMaskingErrorPolicy`— Determina l'azione da AWS DMS intraprendere quando il mascheramento dei dati non è riuscito a causa di un tipo di dati incompatibile o per qualsiasi altro motivo. Sono disponibili le seguenti opzioni:
  + `STOP_TASK`(Impostazione predefinita): l'attività si interrompe ed è richiesto l'intervento manuale.
  + `IGNORE_RECORD`: l'attività continua e i dati per tale record vengono ignorati.
  + `LOG_ERROR`: l'attività continua e l'errore viene scritto nel log delle attività. I dati non mascherati verranno caricati nella tabella di destinazione.
  + `SUSPEND_TABLE`: l'attività continua, ma i dati provenienti dalla tabella con il record di errore vengono spostati in uno stato di errore e i dati non vengono replicati.

**Nota**  
 Gli errori di caricamento delle tabelle in Redshift come target sono riportati in. `STL_LOAD_ERRORS` Per ulteriori informazioni, consulta [STL\$1LOAD\$1ERRORS](https://docs.aws.amazon.com/redshift/latest/dg/r_STL_LOAD_ERRORS.html) nella *Guida per gli sviluppatori di database di Amazon Redshift*.

**Nota**  
Le modifiche ai parametri relative agli errori recuperabili hanno effetto solo dopo l'interruzione e la ripresa dell'attività DMS. Le modifiche non si applicano all'esecuzione corrente.

# Salvataggio delle impostazioni delle attività
<a name="CHAP_Tasks.CustomizingTasks.TaskSettings.Saving"></a>

Puoi salvare le impostazioni per un'attività come file JSON, se desideri riutilizzare le impostazioni per un'altra attività. Le impostazioni delle attività da copiare in un file JSON sono disponibili nella sezione **Dettagli della panoramica** di un'attività.

**Nota**  
Quando riutilizzi le impostazioni delle attività per altre attività, rimuovi `CloudWatchLogGroup` gli eventuali attributi `CloudWatchLogStream`. In caso contrario, viene visualizzato il seguente errore: MESSAGGIO DI ERRORE DI SISTEMA: Impostazioni attività CloudWatchLogGroup o CloudWatchLogStream impossibile impostarlo al momento della creazione.

Ad esempio, il seguente file JSON contiene le impostazioni salvate per un'attività.

```
{
    "TargetMetadata": {
        "TargetSchema": "",
        "SupportLobs": true,
        "FullLobMode": false,
        "LobChunkSize": 0,
        "LimitedSizeLobMode": true,
        "LobMaxSize": 32,
        "InlineLobMaxSize": 0,
        "LoadMaxFileSize": 0,
        "ParallelLoadThreads": 0,
        "ParallelLoadBufferSize": 0,
        "BatchApplyEnabled": false,
        "TaskRecoveryTableEnabled": false,
        "ParallelLoadQueuesPerThread": 0,
        "ParallelApplyThreads": 0,
        "ParallelApplyBufferSize": 0,
        "ParallelApplyQueuesPerThread": 0
    },
    "FullLoadSettings": {
        "TargetTablePrepMode": "DO_NOTHING",
        "CreatePkAfterFullLoad": false,
        "StopTaskCachedChangesApplied": false,
        "StopTaskCachedChangesNotApplied": false,
        "MaxFullLoadSubTasks": 8,
        "TransactionConsistencyTimeout": 600,
        "CommitRate": 10000
    },
    "Logging": {
        "EnableLogging": true,
        "LogComponents": [
            {
                "Id": "TRANSFORMATION",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "SOURCE_UNLOAD",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "IO",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "TARGET_LOAD",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "PERFORMANCE",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "SOURCE_CAPTURE",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "SORTER",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "REST_SERVER",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "VALIDATOR_EXT",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "TARGET_APPLY",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "TASK_MANAGER",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "TABLES_MANAGER",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "METADATA_MANAGER",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "FILE_FACTORY",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "COMMON",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "ADDONS",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "DATA_STRUCTURE",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "COMMUNICATION",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            },
            {
                "Id": "FILE_TRANSFER",
                "Severity": "LOGGER_SEVERITY_DEFAULT"
            }
        ]
    },
    "ControlTablesSettings": {
        "ControlSchema": "",
        "HistoryTimeslotInMinutes": 5,
        "HistoryTableEnabled": false,
        "SuspendedTablesTableEnabled": false,
        "StatusTableEnabled": false,
        "FullLoadExceptionTableEnabled": false
    },
    "StreamBufferSettings": {
        "StreamBufferCount": 3,
        "StreamBufferSizeInMB": 8,
        "CtrlStreamBufferSizeInMB": 5
    },
    "ChangeProcessingDdlHandlingPolicy": {
        "HandleSourceTableDropped": true,
        "HandleSourceTableTruncated": true,
        "HandleSourceTableAltered": true
    },
    "ErrorBehavior": {
        "DataErrorPolicy": "LOG_ERROR",
        "DataTruncationErrorPolicy": "LOG_ERROR",
        "DataErrorEscalationPolicy": "SUSPEND_TABLE",
        "DataErrorEscalationCount": 0,
        "TableErrorPolicy": "SUSPEND_TABLE",
        "TableErrorEscalationPolicy": "STOP_TASK",
        "TableErrorEscalationCount": 0,
        "RecoverableErrorCount": -1,
        "RecoverableErrorInterval": 5,
        "RecoverableErrorThrottling": true,
        "RecoverableErrorThrottlingMax": 1800,
        "RecoverableErrorStopRetryAfterThrottlingMax": true,
        "ApplyErrorDeletePolicy": "IGNORE_RECORD",
        "ApplyErrorInsertPolicy": "LOG_ERROR",
        "ApplyErrorUpdatePolicy": "LOG_ERROR",
        "ApplyErrorEscalationPolicy": "LOG_ERROR",
        "ApplyErrorEscalationCount": 0,
        "ApplyErrorFailOnTruncationDdl": false,
        "FullLoadIgnoreConflicts": true,
        "FailOnTransactionConsistencyBreached": false,
        "FailOnNoTablesCaptured": true
    },
    "ChangeProcessingTuning": {
        "BatchApplyPreserveTransaction": true,
        "BatchApplyTimeoutMin": 1,
        "BatchApplyTimeoutMax": 30,
        "BatchApplyMemoryLimit": 500,
        "BatchSplitSize": 0,
        "MinTransactionSize": 1000,
        "CommitTimeout": 1,
        "MemoryLimitTotal": 1024,
        "MemoryKeepTime": 60,
        "StatementCacheSize": 50
    },
    "PostProcessingRules": null,
    "CharacterSetSettings": null,
    "LoopbackPreventionSettings": null,
    "BeforeImageSettings": null,
    "FailTaskWhenCleanTaskResourceFailed": false
}
```