¿Cómo puedo controlar la cantidad de archivos de CDC que se generan para mi punto de conexión de S3 objetivo con AWS DMS?

4 minutos de lectura
0

Quiero controlar el número de archivos de captura de datos de cambios (CDC) generados cuando utilizo Amazon Simple Storage Service (Amazon S3) como punto de conexión de destino. ¿Cómo puedo usar AWS Database Migration Service (AWS DMS) para hacerlo?

Descripción breve

Cuando utilice Amazon S3 como punto de conexión de destino, puede utilizar varios parámetros para controlar el tamaño del archivo asociado en el punto de conexión de destino. Esto incluye el uso de Amazon S3 como punto de conexión de destino para una carga completa y CDC, o una tarea de AWS DMS exclusiva de los CDC.

En este artículo se describen los siguientes atributos de conexión adicionales (ECA). Además, explica cómo usarlos para controlar el volumen de archivos CDC generados en el punto de conexión Amazon S3:

  • cdcMaxBatchInterval: la condición de longitud máxima del intervalo, definida en segundos, para enviar un archivo a Amazon S3. El valor predeterminado es 60 segundos.
  • cdcMinFileSize: condición de tamaño mínimo de archivo, definida en KB, para enviar un archivo a Amazon S3. El valor predeterminado es 32 000 KB.
  • maxFileSize: el tamaño máximo, en KB, de cualquier archivo .csv que se cree al migrar a un destino de S3 durante la carga completa. El valor predeterminado es 1 GB.
  • WriteBufferSize: el tamaño, en KB, del búfer de escritura de archivos en memoria utilizado al generar archivos .csv en el disco local en la instancia de replicación de AWS DMS. El valor predeterminado es 1000 KB.

Resolución

El parámetro cdcMaxBatchInterval controla el intervalo de tiempo para escribir archivos en Amazon S3. Cuando utiliza el valor predeterminado de 60 segundos, AWS DMS escribe los archivos en Amazon S3 cada minuto. Otro parámetro importante es el parámetro cdcMinFileSize, que determina el tamaño máximo del archivo CDC. Al usar el valor predeterminado de 32 000 KB, AWS DMS escribe en Amazon S3 cada vez que tiene 32 000 KB de datos de cambios.

Los parámetros cdcMaxBatchInterval y cdcMinFileSize funcionan juntos. AWS DMS utiliza el valor de parámetro que se cumpla primero. Con la configuración predeterminada, AWS DMS escribe el archivo en Amazon S3 si tiene ya sea un minuto de cambios pendientes o 32 000 KB de datos. Según lo que ocurra primero, se completará una de estas acciones.
Nota: AWS DMS mantiene la transacción en el mismo archivo, por lo que el tamaño del archivo puede superar los valores cdcMinFileSize y cdcMaxBatchInterval si la transacción es grande.

maxFileSize determina el tamaño máximo de archivo de los archivos de salida de destino de S3 para los formatos CSV y Parquet. Sin embargo, al escribir en archivos .parquet, AWS DMS escribe los datos en lotes:

1.    AWS DMS asigna un segmento de memoria de 1024 KB, que es el tamaño predeterminado de writeBufferSize.

2.    Independientemente del valor de maxFileSize, AWS DMS asigna al menos un búfer de escritura con un tamaño predeterminado de 1 MB.

3.    Cuando AWS DMS termina de escribir el primer lote de datos, compara el tamaño actual de los datos con maxFileSize. Los datos se escriben en un archivo .parquet en el bucket de S3 de destino si el tamaño actual es mayor o igual que maxFileSize.

4.    Si establece maxFileSize en 1 MB, writeBufferSize, con un valor predeterminado de 1 MB, alcanza el valor de maxFileSize. Esto se debe a que la condición ya se cumple después de asignar un búfer de escritura. Si desea reducir el tamaño total del archivo.parquet generado, puede reducir el valor de writeBufferSize. Si se establece en menos de 1 MB, la comprobación condicional se produce cuando el tamaño de los datos escritos es inferior a 1 MB.

Nota: La configuración del parámetro WriteBufferSize solo se aplica a los archivos .parquet y no a los archivos .csv.


Información relacionada

Using Amazon S3 as a target for AWS Database Migration Service (Uso de Amazon S3 como destino para AWS Database Migration Service)

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año