Configuración de las tareas de los metadatos de destino - AWS Database Migration Service

Configuración de las tareas de los metadatos de destino

Estos son algunos de los valores de configuración de los metadatos. 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.

  • TargetSchema: el nombre del esquema de la tabla de destino. Si esta opción de metadatos está en blanco, se utiliza el esquema de la tabla de origen. Si no hay un esquema de origen definido, AWS DMS agrega automáticamente el prefijo del propietario de la base de datos de destino a todas las tablas. Esta opción debe estar en blanco para los puntos de enlace de destino de tipo MySQL. El cambio de nombre de un esquema en la asignación de datos tiene prioridad sobre esta configuración.

  • Configuración de LOB: la configuración que determina cómo se administran los objetos grandes (LOB). Si establece SupportLobs=true, debe establecer una de las siguientes opciones en true:

    • FullLobMode: si establece esta opción en true, debe indicar un valor para la opción LobChunkSize. Indique el tamaño, en kilobytes, de los fragmentos del LOB que se van a utilizar cuando se repliquen los datos en el destino. La opción FullLobMode es más adecuada para los LOB de gran tamaño, pero suele ralentizar la carga. El valor recomendado para LobChunkSize es 64 kilobytes. Si se aumenta el valor para LobChunkSize a más de 64 kilobytes, se pueden producir errores en las tareas.

    • InlineLobMaxSize: este valor determina qué LOB transfiere AWS DMS en línea durante una carga completa. La transferencia de LOB pequeños es más eficaz que buscarlos de una tabla de origen. Durante una carga completa, AWS DMS comprueba todos los LOB y realiza una transferencia en línea para los LOB de tamaño inferior a InlineLobMaxSize. AWS DMS transfiere todos los LOB de tamaño superior a InlineLobMaxSize en FullLobMode. El valor predeterminado para InlineLobMaxSize es 0 y el rango es 1: 102 400 kilobytes (100 MB). Establezca un valor para InlineLobMaxSize solo si sabe que la mayor parte de los LOB tienen un tamaño inferior al valor especificado en InlineLobMaxSize.

    • LimitedSizeLobMode: si establece esta opción en true, debe indicar un valor para la opción LobMaxSize. Indique el tamaño máximo, en kilobytes, para un LOB específico. El valor máximo para LobMaxSize es 102 400 kilobytes (100 MB).

    Para obtener más información sobre los criterios para utilizar esta configuración de LOB de tarea, consulte Configuración de la compatibilidad de LOB con bases de datos de origen en una tarea de AWS DMS. También puede controlar la administración de LOB para tablas individuales. Para obtener más información, consulte Reglas y operaciones de configuración de tablas y recopilaciones.

  • BatchApplyEnabled: determina si cada transacción se aplica individualmente o si los cambios se confirman en lotes. El valor predeterminado es false.

    Cuando BatchApplyEnabled está configurado en true, DMS requiere una clave principal (PK) o una clave única (UK) en las tablas de origen. Si las tablas de origen no incluyen PK ni UK, solo se aplican las inserciones por lotes, pero no las actualizaciones ni eliminaciones por lotes.

    Cuando BatchApplyEnabled se establece en true, AWS DMS genera un mensaje de error si una tabla de destino tiene una restricción única y una clave principal. Las tablas de destino con una restricción única y una clave principal no se admiten cuando BatchApplyEnabled está configurado en true.

    Cuando BatchApplyEnabled se establece en verdadero y AWS DMS detecta un error en los datos de una tabla con la política de gestión de errores predeterminada, la tarea de AWS DMS pasa del modo por lotes al modo uno por uno para el resto de las tablas. Para modificar este comportamiento, puede configurar la acción "SUSPEND_TABLE" en las siguientes políticas en la propiedad del grupo "ErrorBehavior" del archivo JSON de configuración de tareas:

    • DataErrorPolicy

    • ApplyErrorDeletePolicy

    • ApplyErrorInsertPolicy

    • ApplyErrorUpdatePolicy

    Para obtener más información sobre esta propiedad del grupo "ErrorBehavior", consulte el ejemplo del archivo JSON de configuración de tareas en Especificación de la configuración de tareas para las tareas del AWS Database Migration Service. Tras establecer estas políticas en "SUSPEND_TABLE", la tarea de AWS DMS suspende los errores de datos en las tablas que los generen y continúa en modo por lotes para todas las tablas.

    Puede usar el parámetro BatchApplyEnabled con el parámetro BatchApplyPreserveTransaction. Si BatchApplyEnabled está establecido en true, el parámetro BatchApplyPreserveTransaction determina la integridad de las transacciones.

    Si BatchApplyPreserveTransaction está establecido en true, se mantiene la integridad de las transacciones y se garantiza que un lote contendrá todos los cambios en una transacción desde el origen.

    Si BatchApplyPreserveTransaction está establecido en false, pueden producirse interrupciones temporales en la integridad de las transacciones para mejorar el desempeño.

    El parámetro BatchApplyPreserveTransaction se aplica únicamente a los puntos de enlace de destino de Oracle y solo es pertinente cuando el parámetro BatchApplyEnabled está establecido en true.

    Cuando se incluyen columnas de LOB en la replicación, BatchApplyEnabled solo se puede utilizar en modo de LOB limitado.

    Para obtener más información sobre el uso de esta configuración para una carga de captura de datos de cambios (CDC), consulte Configuración de ajuste del procesamiento de cambios.

  • MaxFullLoadSubTasks: indica el número máximo de tablas que se pueden cargar en paralelo. El valor predeterminado es 8, el valor máximo es 49.

  • ParallelLoadThreads: especifica el número de subprocesos que AWS DMS utiliza para cargar cada tabla en la base de datos de destino. Este parámetro tiene valores máximos para los destinos que no son de RDBMS. El valor máximo para un destino de DynamoDB es 200. El valor máximo para un destino de Amazon Kinesis Data Streams, Apache Kafka o Amazon OpenSearch Service es 32. Puede solicitar que se aumente este límite máximo. ParallelLoadThreads se aplica a las tareas de carga completa. Para obtener información acerca de la configuración de la carga paralela de las tablas individuales, consulte Reglas y operaciones de configuración de tablas y recopilaciones.

    Este ajuste se aplica a los siguientes tipos de motor de punto de conexión:

    • DynamoDB

    • Amazon Kinesis Data Streams

    • Amazon MSK

    • Amazon OpenSearch Service

    • Amazon Redshift

    AWS DMS admite ParallelLoadThreads para MySQL como un atributo de conexión adicional. ParallelLoadThreads no se aplica a MySQL como configuración de tarea.

  • ParallelLoadBufferSize especifica el número máximo de registros para almacenar en el búfer que los subprocesos de carga en paralelo utilizan para cargar datos en el destino. El valor predeterminado es 50. El valor máximo es 1000. Actualmente, esta configuración solo es válida cuando DynamoDB, Kinesis, Apache Kafka u OpenSearch es el destino. Utilice este parámetro con ParallelLoadThreads. ParallelLoadBufferSize solo es válido cuando hay más de un subproceso. Para obtener información acerca de la configuración de la carga paralela de las tablas individuales, consulte Reglas y operaciones de configuración de tablas y recopilaciones.

  • ParallelLoadQueuesPerThread: especifica el número de colas que acceden a cada subproceso simultáneo para eliminar los registros de datos de las colas y generar una carga por lotes para el destino. El valor predeterminado es 1. Actualmente, esta configuración solo es válida cuando el destino es Kinesis o Apache Kafka.

  • ParallelApplyThreads: especifica el número de subprocesos simultáneos que AWS DMS utiliza durante una carga de CDC para enviar registros de datos a un punto de conexión de destino de Amazon DocumentDB, Kinesis, Amazon MSK, OpenSearch o Amazon Redshift. El valor predeterminado es cero (0).

    Este ajuste solo se aplica a CDC. Este ajuste no se aplica a carga completa.

    Este ajuste se aplica a los siguientes tipos de motor de punto de conexión:

    • Amazon DocumentDB (con compatibilidad con MongoDB)

    • Amazon Kinesis Data Streams

    • Transmisión administrada de Amazon para Apache Kafka

    • Amazon OpenSearch Service

    • Amazon Redshift

  • ParallelApplyBufferSize: especifica el número máximo de registros para almacenar en cada cola de búfer para subprocesos simultáneos para insertar en un punto de conexión de destino de Amazon DocumentDB, Kinesis, Amazon MSK, OpenSearch o Amazon Redshift durante una carga de CDC. El valor predeterminado es 100. El valor máximo es 1000. Utilice esta opción cuando ParallelApplyThreads especifique más de un subproceso.

  • ParallelApplyQueuesPerThread: especifica el número de colas a las que accede cada subproceso para sacar registros de datos de las colas y generar una carga por lotes para un punto de conexión de Amazon DocumentDB, Kinesis, Amazon MSK u OpenSearch durante la CDC. El valor predeterminado es 1.