Configurações da tarefa de validação de dados
É possível verificar se os dados foram migrados com precisão da origem para o destino. Se você habilitar a validação de uma tarefa, o AWS DMS começará a comparar os dados de origem e de destino imediatamente após a realização de uma carga máxima de uma tabela. Para obter mais informações sobre a validação de dados de tarefa, seus requisitos, o escopo do suporte a seu banco de dados e as métricas relatadas por ela, consulte Validação de dados do AWS DMS. 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.
As configurações de validação dos dados e seus valores incluem o seguinte:
-
EnableValidation: ativa a validação de dados quando definida como verdadeira. Caso contrário, a validação será desabilitada para a tarefa. O valor padrão é falso. -
ValidationMode: controla como o AWS DMS valida os dados na tabela de destino em relação à tabela de origem. A partir da versão 3.5.4 do mecanismo de replicação, o DMS define isso automaticamente comoGROUP_LEVELpara os caminhos de migração compatíveis, oferecendo desempenho de validação aprimorado e processamento significativamente mais rápido para grandes conjuntos de dados. Esse aprimoramento se aplica aos caminhos de migração listados na ressincronização de dados doAWS DMS. Para todos os outros caminhos de migração, o modo de validação usaROW_LEVELcomo padrão.nota
Independentemente da configuração, o AWS DMS valida todas as linhas configuradas por meio da validação de tabela.
-
FailureMaxCount: especifica o número máximo de registros que podem falhar na validação antes que a validação seja suspensa para a tarefa. O valor padrão é 10.000. Para que a validação continue, independentemente do número de registros que fizeram com que a validação falhasse, defina essa configuração como um valor superior ao número de registros na origem. -
HandleCollationDiff: quando esta opção está definida comotrue, a validação considera as diferenças de agrupamento de colunas entre os bancos de dados de origem e de destino. Caso contrário, qualquer diferença no agrupamento de colunas será ignorada para validação. Os agrupamentos de colunas podem ditar a ordem das linhas, o que é importante para a validação dos dados. ConfigurarHandleCollationDiffcomo true resolve essas diferenças de agrupamento automaticamente e impede falsos positivos na validação dos dados. O valor padrão éfalse. -
RecordFailureDelayInMinutes: especifica o atraso, em minutos, antes de relatar qualquer detalhe da falha da validação.Se a latência geral de CDC da tarefa do DMS for maior do que o valor
RecordFailureDelayInMinutesthen, ela terá precedência; por exemplo, seRecordFailureDelayInMinutesfor 5 e a latência de CDC for 7 minutos, o DMS aguardará 7 minutos para relatar os detalhes da falha de validação. -
RecordFailureDelayLimitInMinutes: especifica o atraso antes de relatar qualquer detalhe da falha da validação. Para evitar falso-positivos, o AWS DMS usa a latência da tarefa para reconhecer o atraso real antes de as alterações terem efeito no destino. Essa configuração substitui o valor de atraso real e o valor de latência de CDC da tarefa do DMS e permite que você defina um atraso maior antes de relatar qualquer métrica de validação. O valor padrão é 0. -
RecordSuspendDelayInMinutes: especifica o tempo de atraso, em minutos, antes que as tabelas sejam suspensas da validação devido ao limite de erro definido emFailureMaxCount. -
SkipLobColumns: quando essa opção é definida comotrue, o AWS DMS ignora a validação de dados de todas as colunas LOB na parte da tabela da validação da tarefa. O valor padrão éfalse. -
TableFailureMaxCount: especifica o número máximo de linhas em uma tabela em que uma validação pode falhar antes que a validação seja suspensa para a tabela. O valor padrão é 1,000. -
ThreadCount: especifica o número de threads de execução que o AWS DMS utiliza durante a validação. Cada thread seleciona dados que ainda não foram validados na origem e no destino para comparar e validar. O valor padrão é 5. Se você definirThreadCountpara um número mais alto, o AWS DMS poderá concluir a validação mais rápido. No entanto, o AWS DMS executa mais consultas simultâneas que consomem mais recursos na origem e no destino. -
ValidationOnly: quando esta opção está definida comotrue, a tarefa executa a validação dos dados sem executar nenhuma migração ou replicação de dados. O valor padrão éfalse. Não é possível modificar a configuração deValidationOnlyapós a tarefa ser criada.Defina TargetTablePrepMode como
DO_NOTHING(o padrão para uma tarefa somente de validação) e defina o Tipo de migração como um dos seguintes:-
Carga máxima: defina o Tipo de migração da tarefa para Migrar dados existentes no console do AWS DMS. Ou, na API do AWS DMS, defina o tipo de migração como FULL-LOAD.
-
CDC: defina o Tipo de migração da tarefa para Replicar somente alterações de dados no console do AWS DMS. Ou, na API do AWS DMS, defina o tipo de migração como CDC.
Independentemente do tipo de migração escolhido, os dados não são realmente migrados ou replicados durante uma tarefa somente de validação.
Para obter mais informações, consulte Tarefas somente de validação.
Importante
A configuração de
ValidationOnlyé imutável. Ela não pode ser modificada para uma tarefa após a criação dessa tarefa. -
-
ValidationPartialLobSize: especifica se você deseja fazer uma validação parcial das colunas LOB em vez de validar todos os dados armazenados na coluna. Isso é algo que pode ser útil ao migrar apenas parte dos dados de LOB e não todo o conjunto de dados de LOB. O valor está em unidades de KB. O valor padrão é 0, o que significa que o AWS DMS valida todos os dados da coluna LOB. Por exemplo,"ValidationPartialLobSize": 32significa que o AWS DMS valida somente os primeiros 32 KB dos dados da coluna na origem e no destino. -
PartitionSize: especifica o tamanho do lote de registros a serem lidos para comparação da origem e do destino. O padrão é 10.000. -
ValidationQueryCdcDelaySeconds: a quantidade de tempo em que a primeira consulta de validação é atrasada na origem e no destino de cada atualização da CDC. Isso pode ajudar a reduzir a contenção de recursos quando a latência da migração é alta. Uma tarefa somente de validação define automaticamente essa opção como 180 segundos. O padrão é 0.
Por exemplo, o JSON a seguir permite a validação de dados com duas vezes o número padrão de threads. Ele também considera as diferenças na ordem dos registros provocadas pelas diferenças no agrupamento de colunas nos endpoints do PostgreSQL. Além disso, ele fornece um atraso nos relatórios de validação para considerar tempo adicional para processar todas as falhas de validação.
"ValidationSettings": { "EnableValidation": true, "ThreadCount": 10, "HandleCollationDiff": true, "RecordFailureDelayLimitInMinutes": 30 }
nota
Para um endpoint do Oracle, o AWS DMS utiliza DBMS_CRYPTO para validar BLOBs. Se o endpoint do Oracle utilizar BLOBs, conceda a permissão execute para DBMS_CRYPTO para a conta de usuário que acessa o endpoint do Oracle. Faça isso executando a seguinte instrução.
grant execute on sys.dbms_crypto todms_endpoint_user;