Selección del mejor tamaño para una instancia de replicación - AWS Database Migration Service

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.

Selección del mejor tamaño para una instancia de replicación

La selección de la instancia de replicación adecuada depende de varios factores del caso de uso. Para ayudar a entender cómo se utilizan los recursos de instancias de replicación, consulte la siguiente explicación. Trata la situación habitual de una tarea de carga completa + CDC.

Durante una tarea de carga completa, AWS DMS carga las tablas de forma individual. De forma predeterminada, se cargan ocho tablas a la vez. AWS DMS captura los cambios continuos en la fuente durante una tarea de carga completa para que los cambios se puedan aplicar más adelante en el punto final de destino. Los cambios se almacenan en caché en la memoria y, en caso de agotarse la memoria disponible, se almacenan en la memoria caché del disco. Cuando se completa una tarea de carga completa para una tabla, aplica AWS DMS inmediatamente los cambios en caché a la tabla de destino.

Después de que se hayan aplicado todos los cambios en la memoria caché pendientes para una tabla, el punto de enlace de destino se encuentra en un estado coherente desde el punto de vista transaccional. En este punto, el destino está sincronizado con el punto final de origen con respecto a los últimos cambios en caché. AWS DMS a continuación, comienza la replicación continua entre el origen y el destino. Para ello, AWS DMS toma las operaciones de cambio de los registros de transacciones de origen y las aplica al destino de manera coherente desde el punto de vista de las transacciones. (Este proceso supone que la aplicación optimizada por lotes no está seleccionada). AWS DMS transmite los cambios en curso a través de la memoria de la instancia de replicación, si es posible. De lo contrario, AWS DMS escribe los cambios en el disco de la instancia de replicación hasta que se puedan aplicar en el destino.

El usuario tiene cierto control sobre la forma en que la instancia de replicación gestiona el procesamiento de los cambios y sobre cómo se utiliza la memoria en dicho proceso. Para obtener más información acerca de cómo ajustar el procesamiento de cambios, consulte Configuración de ajuste del procesamiento de cambios.

Factores que se deben tener en cuenta

La memoria y el espacio en disco son factores clave a la hora de seleccionar una instancia de replicación adecuada para el caso de uso. A continuación, puede encontrar un análisis de las características de los casos de uso que se deben analizar para elegir una instancia de replicación.

  • Base de datos y tamaño de tabla

    El volumen de datos ayuda a determinar la configuración de la tarea para optimizar el rendimiento de la carga completa. Por ejemplo, para dos esquemas de 1 TB, puede particionar las tablas en cuatro tareas de 500 GB y ejecutarlas en paralelo. El posible paralelismo depende del recurso de CPU disponible en la instancia de replicación. Por eso es una buena idea entender el tamaño de la base de datos y las tablas para optimizar el rendimiento de carga completa. Ayuda a determinar la cantidad de tareas que puede realizar.

  • Objetos grandes

    Los tipos de datos que están presentes en el ámbito de la migración pueden afectar al rendimiento. En particular, los objetos grandes (LOB) afectan al rendimiento y al consumo de memoria. Para migrar un valor LOB, AWS DMS realiza un proceso de dos pasos. En primer lugar, AWS DMS inserta la fila en el objetivo sin el valor LOB. En segundo lugar, AWS DMS actualiza la fila con el valor LOB. Esto afecta a la memoria, por lo que es importante identificar las columnas de LOB en el origen y analizar su tamaño.

  • Frecuencia de carga y tamaño de las transacciones

    La frecuencia de carga y las transacciones por segundo (TPS) influyen en el uso de memoria. Un número elevado de actividades relacionadas con TPS o el lenguaje de manipulación de datos (DML) se traduce en un uso elevado de la memoria. Esto sucede porque DMS almacena en caché los cambios hasta que se aplican al destino. Durante la CDC, esto provoca un intercambio (escritura en el disco físico debido a un desbordamiento de memoria), lo que provoca latencia.

  • Claves de tabla e integridad referencial

    La información sobre las claves de la tabla determina el modo CDC (aplicación por lotes o aplicación transaccional) que se utiliza para migrar los datos. En general, la aplicación transaccional es más lenta que la aplicación por lotes. En el caso de las transacciones de larga duración, es posible que haya que migrar muchos cambios. Cuando se utiliza la aplicación transaccional, AWS DMS es posible que se necesite más memoria para almacenar los cambios en comparación con la aplicación por lotes. Si migra tablas sin claves principales, la aplicación por lotes producirá un error y la tarea de DMS pasará al modo de aplicación transaccional. Cuando la integridad referencial está activa entre tablas durante la CDC, se AWS DMS utiliza la aplicación transaccional de forma predeterminada. Para obtener más información sobre la aplicación por lotes en comparación con la aplicación transaccional, consulte ¿Cómo puedo utilizar la característica de aplicación por lotes de DMS para mejorar el rendimiento de la replicación de CDC?.

Utilice estas métricas para determinar si necesita que la instancia de replicación esté optimizada para la computación o para la memoria.

Problemas comunes

Es posible que se enfrente a los siguientes problemas comunes que provocan la contención de recursos en la instancia de replicación durante la migración. Para obtener información sobre las métricas de instancia de replicación, consulte Métricas de instancia de replicación.

  • Si la memoria de una instancia de replicación resulta insuficiente, los datos se escriben en el disco. La lectura desde el disco puede provocar latencia, que se puede evitar si se asigna suficiente memoria a la instancia de replicación.

  • El tamaño del disco asignado a la instancia de replicación puede ser inferior al necesario. El tamaño del disco se usa cuando los datos de la memoria se desbordan; también se usa para almacenar los registros de tareas. Las IOPS máximas también dependen de ello.

  • La ejecución de varias tareas o tareas con un alto paralelismo afecta al consumo de CPU de la instancia de replicación. Esto ralentiza el procesamiento de las tareas y provoca latencia.

Prácticas recomendadas

Tenga en cuenta estas dos prácticas recomendadas más comunes al determinar el tamaño de una instancia de replicación. Para obtener más información, consulte Prácticas recomendadas para AWS Database Migration Service.

  1. Calcule la carga de trabajo y comprenda si requiere un uso intensivo del equipo o de la memoria. En función de esto, puede determinar la clase y el tamaño de la instancia de replicación:

    • AWS DMS procesa los LOB en la memoria. Esta operación requiere una cantidad considerable de memoria.

    • El número de tareas y el número de subprocesos afectan al consumo de CPU. Evite utilizar más de ocho MaxFullLoadSubTasks durante la operación de carga completa.

  2. Aumente el espacio en disco asignado a la instancia de replicación cuando tenga una carga de trabajo elevada durante la carga completa. De este modo, la instancia de replicación utilizará el máximo de IOPS que se le haya asignado.

Las directrices anteriores no cubren todas las situaciones posibles. Es importante tener en cuenta los detalles específicos del caso de uso particular al determinar el tamaño de la instancia de replicación.

Las pruebas anteriores muestran que la CPU y la memoria varían con las diferentes cargas de trabajo. En particular, los LOB afectan a la memoria y el número de tareas o el paralelismo afectan a la CPU. Cuando la migración se esté ejecutando, monitoree la CPU, la memoria que se puede liberar, la cantidad de almacenamiento libre y las IOPS de la instancia de replicación. En función de los datos que recopile, puede ampliar o reducir las dimensiones de la instancia de replicación según sea necesario.