Especificando configurações de tarefas para tarefas do AWS Database Migration Service - AWS Database Migration Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Especificando configurações de tarefas para tarefas do AWS Database Migration Service

Cada tarefa tem configurações que podem ser definidas de acordo com as necessidades da migração do banco de dados. Você cria essas configurações em um arquivo JSON ou, com algumas configurações, pode especificar as configurações usando o AWS DMS console. Para obter informações sobre como utilizar um arquivo de configuração de tarefas para definir as configurações de tarefas, consulte Exemplo de configurações de tarefas.

Há vários tipos principais de configurações de tarefa, conforme listado a seguir.

Configurações de tarefa Documentação relevante

Criar um relatório de avaliação de tarefa

É possível criar um relatório de avaliação de tarefa que mostre os tipos de dados incompatíveis, que podem causar problemas durante a migração. É possível executar esse relatório na tarefa antes de executá-la, para descobrir possíveis problemas.

Ativar e trabalhar com avaliações de pré-migração de uma tarefa

Criar uma tarefa

Quando você cria uma tarefa, especifica a origem, o destino e a instância de replicação, juntamente com todas as configurações de migração.

Criar uma tarefa

Criar uma tarefa de replicação contínua

Você pode configurar uma tarefa para fornecer replicação contínua entre a origem e o destino.

Criar tarefas para replicação contínua utilizando o AWS DMS

Aplicar as configurações de tarefas

Cada tarefa tem configurações que podem ser definidas de acordo com as necessidades da migração do banco de dados. Você cria essas configurações em um arquivo JSON ou, com algumas configurações, pode especificar as configurações usando o AWS DMS console.

Especificando configurações de tarefas para tarefas do AWS Database Migration Service

Validação de dados

Use a validação de dados para AWS DMS comparar os dados do seu armazenamento de dados de destino com os dados do seu armazenamento de dados de origem.

Validação de dados do AWS DMS

Modificar uma tarefa

Quando uma tarefa é interrompida, é possível modificar as configurações dela.

Modificar uma tarefa

Recarregar tabelas durante uma tarefa

Você poderá recarregar uma tabela durante uma tarefa se ocorrer um erro durante sua execução.

Recarregar tabelas durante uma tarefa

Utilizar mapeamento de tabela

O mapeamento de tabela utiliza vários tipos de regras para especificar as configurações da fonte de dados, do esquema de origem, dos dados e de quaisquer transformações que devem ocorrer durante a tarefa.

Regras de seleção

Regras de seleção e ações

Regras de transformação

Regras de transformação e ações

Aplicar filtros

É possível usar filtros de origem para limitar o número e o tipo de registros transferidos da origem ao destino. Por exemplo, você pode especificar que somente os funcionários localizados na sede serão movidos para o banco de dados de destino. Os filtros são aplicados a uma coluna de dados.

Utilizar filtros de origem

Monitorar uma tarefa

Há várias maneiras de obter informações sobre o desempenho de uma tarefa e das tabelas usadas por ela.

Monitoramento de tarefas do AWS DMS

Gerenciar logs de tarefas

Você pode visualizar e excluir registros de tarefas usando a AWS DMS API ou AWS CLI.

Visualização e gerenciamento dos logs de tarefas do AWS

Exemplo de configurações de tarefas

Você pode usar o AWS Management Console ou o AWS CLI para criar uma tarefa de replicação. Se você usar o AWS CLI, defina as configurações da tarefa criando um arquivo JSON e especificando o URI file://do arquivo JSON como ReplicationTaskSettingsparâmetro da operação. CreateReplicationTask

O exemplo a seguir mostra como usar o AWS CLI para chamar a CreateReplicationTask operação:

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

O exemplo anterior utiliza um arquivo de mapeamento de tabela chamadotablemappings.json. Para ver exemplos de mapeamento de tabela, consulte Utilizar o mapeamento de tabela para especificar as configurações da tarefa.

Um arquivo JSON de configurações de tarefas pode ter a seguinte aparência:

{ "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", "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 } }