Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configuración de tareas de validación de datos
Puede garantizar que los datos se han migrado de forma precisa del origen al destino. Si habilita la validación de una tarea, AWS DMS comienza a comparar los datos de origen y destino inmediatamente después de completar la carga de una tabla. Para obtener más información acerca de la validación de datos de tareas, sus requisitos, el ámbito de soporte de su base de datos y las métricas que notifica, consulte AWS Validación de datos DMS. Para obtener información sobre cómo utilizar un archivo de configuración de tareas para establecer la configuración de las tareas, consulte Ejemplo de configuración de tarea.
La configuración de la validación de datos y sus valores incluye lo siguiente:
-
EnableValidation
: habilita la validación de datos cuando se establece en verdadero. De lo contrario, la validación se deshabilita para la tarea. El valor predeterminado es false. -
ValidationMode
— controla cómo se AWS DMS validan los datos de la tabla de destino con los de la tabla de origen. A partir de la versión 3.5.4 del motor de replicación, el DMS lo establece automáticamente en las rutas de migración compatibles, lo queGROUP_LEVEL
ofrece un rendimiento de validación mejorado y un procesamiento considerablemente más rápido para conjuntos de datos de gran tamaño. Esta mejora se aplica a las migraciones de las rutas de migración enumeradas en la resincronización de datos.AWS DMS Para todas las demás rutas de migración, el modo de validación está predeterminado en.ROW_LEVEL
nota
Independientemente de la configuración, AWS DMS valida todas las filas configuradas mediante la validación de tablas.
-
FailureMaxCount
: especifica el número máximo de registros que pueden generar un error de validación antes de que se suspenda la validación de la tarea. El valor predeterminado es 10,000. Si desea que la validación continúe con independencia del número de registros que generen un error de validación, defina un valor superior al número de registros que hay en el origen. -
HandleCollationDiff
— Si esta opción está establecida entrue
, la validación tiene en cuenta las diferencias de intercalación de columnas entre las bases de datos de origen y de destino. De lo contrario, dichas diferencias en la intercalación de columna se pasan por alto para la validación. Las intercalaciones de columna pueden determinar el orden de las filas, lo cual es importante para la validación de datos. Al definirHandleCollationDiff
en true se resuelven automáticamente estas diferencias de intercalación y se evitan falsos positivos en la validación de datos. El valor predeterminado esfalse
. -
RecordFailureDelayInMinutes
: especifica el tiempo de retraso en minutos antes de notificar los detalles de error de validación.Si la latencia total de la tarea de DMS es superior al valor de la
RecordFailureDelayInMinutesthen
que tiene prioridad (por ejemplo, siRecordFailureDelayInMinutes
es 5) y la latencia de CDC es de 7 minutos, DMS espera 7 minutos para informar de los detalles del error de validación. -
RecordFailureDelayLimitInMinutes
— Especifica el tiempo transcurrido antes de informar de los detalles de cualquier fallo de validación. AWS DMS utiliza la latencia de la tarea para reconocer el retraso real de los cambios y llegar al objetivo a fin de evitar falsos positivos. Esta configuración anula el retraso real y el valor de latencia CDC de la tarea de DMS y le permite establecer un retraso mayor antes de informar cualquier métrica de validación. El valor predeterminado es 0. -
RecordSuspendDelayInMinutes
: especifica el tiempo de espera en minutos antes de que se suspenda la validación de las tablas debido a que se ha establecido un umbral de error enFailureMaxCount
. -
SkipLobColumns
— Si esta opción está establecida entrue
, AWS DMS omite la validación de datos de todas las columnas LOB de la parte de la tabla que forma parte de la validación de la tarea. El valor predeterminado esfalse
. -
TableFailureMaxCount
: especifica el número máximo de filas en una tabla que pueden generar un error de validación antes de que se suspenda la validación de la tabla. El valor predeterminado es 1,000. -
ThreadCount
— Especifica el número de subprocesos de ejecución que se AWS DMS utilizan durante la validación. Cada hilo selecciona not-yet-validated datos del origen y el destino para compararlos y validarlos. El valor predeterminado es 5. Si se estableceThreadCount
en un número mayor, AWS DMS se puede completar la validación más rápido. Sin embargo, AWS DMS a continuación ejecuta más consultas simultáneas, consumiendo más recursos en el origen y el destino. -
ValidationOnly
: cuando esta opción se establece entrue
, la tarea realiza la validación de datos sin realizar ninguna migración ni replicación de datos. El valor predeterminado esfalse
. No puede modificar la configuración deValidationOnly
una vez creada la tarea.Debe establecer TargetTablePrepModeen
DO_NOTHING
(el valor predeterminado para una tarea únicamente de validación) y establecer el tipo de migración en una de las siguientes opciones:-
Carga completa: defina el tipo de migración de la tarea en Migrar los datos existentes en la AWS DMS consola. O bien, en la AWS DMS API, defina el tipo de migración en CARGA COMPLETA.
-
CDC: establezca la tarea Tipo de migración en Replicar solo cambios de datos en la consola de AWS DMS . O bien, en la AWS DMS API, defina el tipo de migración en CDC.
Independientemente del tipo de migración elegido, los datos en realidad no se migran ni se replican durante una tarea exclusiva de validación.
Para obtener más información, consulte Tareas exclusivas de validación.
importante
La configuración de
ValidationOnly
es inmutable. No se puede modificar para una tarea después de crearla. -
-
ValidationPartialLobSize
: especifica si desea realizar una validación parcial de las columnas de LOB en lugar de validar todos los datos almacenados en la columna. Esto puede resultarle útil al migrar solo una parte de los datos de LOB y no todo el conjunto de datos de LOB. El valor está en unidades de KB. El valor predeterminado es 0, lo que significa que AWS DMS valida todos los datos de la columna de LOB. Por ejemplo,"ValidationPartialLobSize": 32
significa que AWS DMS solo valida los primeros 32 KB de los datos de la columna, tanto en el origen como en el destino. -
PartitionSize
: especifica el tamaño del lote de registros que se van a leer para compararlos entre el origen y el destino. El valor predeterminado es 10 000. -
ValidationQueryCdcDelaySeconds
: el tiempo que se retrasa la primera consulta de validación tanto en el origen como en el destino de cada actualización de CDC. Esto podría ayudar a reducir la contención de recursos cuando la latencia de migración es alta. Una tarea exclusiva de validación establece automáticamente esta opción en 180 segundos. El valor predeterminado es 0.
Por ejemplo, el siguiente JSON permite la validación de datos con dos veces el número predeterminado de procesos. También contabiliza las diferencias en el orden de registros provocadas por diferencias de intercalación de columnas en puntos de enlace de PostgreSQL. Asimismo, proporciona un retraso de informes de validación para incluir tiempo adicional para procesar los errores de validación.
"ValidationSettings": { "EnableValidation": true, "ThreadCount": 10, "HandleCollationDiff": true, "RecordFailureDelayLimitInMinutes": 30 }
nota
En el caso de un punto final de Oracle, AWS DMS utiliza DBMS_CRYPTO para la validación. BLOBs Si su terminal de Oracle lo utiliza BLOBs, conceda el execute
permiso de DBMS_CRYPTO a la cuenta de usuario que accede al punto de conexión de Oracle. Para hacer esto, ejecute la siguiente instrucción.
grant execute on sys.dbms_crypto to
dms_endpoint_user
;