Uso de un volumen de registro específico (DLV)
Puede utilizar un volumen de registro específico (DLV) para una instancia de base de datos que utilice el almacenamiento de IOPS aprovisionadas (PIOPS). Un DLV transporta los registros de transacciones de la base de datos de PostgreSQL y los registros redo y registros binarios de MySQL/MariaDB a un volumen de almacenamiento independiente del volumen que contiene las tablas de la base de datos. Un DLV hace que el registro de escritura de transacciones sea más eficiente y uniforme. Los DLV son ideales para bases de datos con gran capacidad de almacenamiento asignado, requisitos elevados de E/S por segundo (IOPS) o cargas de trabajo donde la latencia es muy importante.
Los DLV son compatibles con el almacenamiento PIOPS (io1 y io2 Block Express) y se crean con un tamaño fijo de 1024 GiB y 3000 IOPS aprovisionadas.
Amazon RDS es compatible con los DLV en todas las Regiones de AWS para las siguientes versiones:
MariaDB 10.6.7 y versiones 10 superiores
MySQL versión 8.0.28 y posteriores a la 8.0, MySQL versión 8.4.3 y posteriores a la 8.4
PostgreSQL 13.10 y versiones 13 superiores, 14.7 y versiones 14 superiores y 15.2 y versiones 15 superiores
RDS es compatible con DLV con implementaciones Multi-AZ Al modificar o crear una instancia multi-AZ, se crea un DLV tanto para la instancia principal como para la secundaria.
RDS admite DLV con réplicas de lectura. Si la instancia de base de datos principal tiene un DLV habilitado, todas las réplicas de lectura creadas después de habilitar el DLV también tendrán un DLV. Las réplicas de lectura creadas antes del cambio a DLV no la tendrán habilitada, a menos que se modifiquen explícitamente para ello. Es recomendable que todas las réplicas de lectura conectadas a una instancia principal antes de activar el DLV también se modifiquen manualmente para que tengan un DLV.
nota
Es recomendable emplear volúmenes de registro específicos para configuraciones de bases de datos de 5 TiB o más.
Para obtener más información sobre las ventajas de los DLV, consulte las siguientes entradas del blog:
Para obtener información sobre los rangos de almacenamiento asignado, las IOPS aprovisionadas y el rendimiento de almacenamiento disponibles para cada motor de base de datos, consulte Almacenamiento de SSD de IOPS aprovisionadas.
Temas
Observaciones sobre la activación o desactivación del DLV
La activación y desactivación del DLV puede llevar mucho tiempo y provocar tiempos de inactividad. El proceso consiste en copiar todos los registros de transacciones, o los registros binarios y REDO (en función del motor de base de datos), en el nuevo volumen al activarlo, o bien en devolverlo al almacenamiento original al desactivarlo. La duración de esta operación depende de varios factores:
-
Número de registros de transacciones:
-
Las bases de datos más grandes y con más transacciones generan más registros, lo que aumenta el tiempo necesario para copiarlos.
-
Los registros de transacciones se pueden acumular en la instancia de base de datos principal si las ranuras de replicación están inactivas o si la replicación está retrasada, lo que aumenta el tiempo necesario para realizar la copia. Asegúrese de que la replicación esté actualizada y elimine las ranuras innecesarias.
-
-
Configuración de almacenamiento:
-
Ancho de banda de EBS de la instancia de base de datos: un mayor ancho de banda permite una transferencia de datos más rápida.
-
Número de IOPS aprovisionadas: un mayor número de operaciones de entrada/salida por segundo (IOPS) puede acelerar el proceso de copia.
-
-
Actividad de la base de datos: los niveles altos de actividad de la base de datos durante la configuración pueden ralentizar el proceso.
Para minimizar el tiempo de inactividad, le recomendamos que planifique y programe los periodos de baja actividad o de mantenimiento.
Habilitación de DLV al crear una instancia de base de datos
Puede usar la AWS Management Console, la AWS CLI o la API de RDS para crear una instancia de base de datos con DLV habilitado.
Habilitación de DLV en una nueva instancia de base de datos
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
Elija Create database (Crear base de datos).
-
En la página Crear instancia de base de datos, elija un motor de base de datos compatible con DLV.
-
En Almacenamiento:
-
Elija entre SSD de IOPS aprovisionadas (io1) o SSD de IOPS aprovisionadas (io2).
-
Introduzca el Almacenamiento asignado y las IOPS aprovisionadas que desee.
-
Expanda Volumen de registro dedicado y seleccione Activar el volumen de registro dedicado.
-
-
Seleccione el resto de ajustes según sea necesario.
-
Elija Creación de base de datos.
Una vez creada la base de datos, el valor del volumen de registro dedicado aparece en la pestaña Configuración de la página de detalles de la base de datos.
Para habilitar DLV cuando cree una instancia de base de datos mediante el almacenamiento de IOPS aprovisionadas, use el comando de la AWS CLI create-db-instance. Establezca los siguientes parámetros:
-
--dedicated-log-volume
: habilita un volumen de registro específico. -
--storage-type
: establézcalo enio1
oio2
para IOPS aprovisionadas. -
--allocated-storage
: cantidad de almacenamiento que se debe asignar a la instancia de base de datos, en gibibytes. -
--iops
: nueva cantidad de IOPS aprovisionadas para la instancia de base de datos, expresada en operaciones de E/S por segundo.
Para habilitar DLV al crear una instancia de base de datos utilizando el almacenamiento de IOPS aprovisionadas, utilice la operación CreateDBInstance de la API de Amazon RDS. Establezca los siguientes parámetros:
-
DedicatedLogVolume
: se configura entrue
para habilitar un volumen de registro dedicado. -
StorageType
: establézcalo enio1
oio2
para IOPS aprovisionadas. -
AllocatedStorage
: cantidad de almacenamiento que se debe asignar a la instancia de base de datos, en gibibytes. -
Iops
: tasa de IOPS para la instancia de base de datos, expresada en operaciones de E/S por segundo.
Habilitación de DLV en una instancia de base de datos existente
Puede utilizar la AWS Management Console, la AWS CLI o la API de RDS para modificar una instancia de base de datos y habilitar DLV.
Una vez que haya modificado la configuración de DLV de una instancia de base de datos, debe reiniciar la instancia de base de datos.
Habilitación de DLV en una instancia de base de datos existente
Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/
. -
En el panel de navegación, seleccione Databases (Bases de datos).
Para filtrar la lista de instancias de base de datos, en Filter databases (Filtrar bases de datos), escriba una cadena de texto para que Amazon RDS la utilice para filtrar los resultados. Solo aparecen instancias de base de datos cuyos nombres contengan la cadena.
-
Elija la instancia de base de datos con almacenamiento de IOPS aprovisionadas que desea modificar.
-
Elija Modificar.
-
En la página Modificar instancia de base de datos:
-
En Almacenamiento, expanda Volumen de registro dedicado y seleccione Activar el volumen de registro dedicado.
-
-
Elija Continuar.
-
Para aplicar los cambios inmediatamente a la instancia de base de datos, elija Aplicar inmediatamente. También puede elegir Apply during the next scheduled maintenance window (Aplicar durante la próxima ventana de mantenimiento programada) para aplicar los cambios durante el próximo período de mantenimiento.
-
Revise los parámetros que se cambiarán y elija Modify DB Instance (Modificar instancia de base de datos) para completar la modificación.
El nuevo valor del volumen de registro dedicado aparece en la pestaña Configuración de la página de detalles de la base de datos.
Para habilitar o deshabilitar el DLV en una instancia de base de datos existente mediante el almacenamiento de IOPS aprovisionadas, use el comando modify-db-instance
de la AWS CLI. Establezca los siguientes parámetros:
-
--dedicated-log-volume
: habilita un volumen de registro dedicado.Utilice
--no-dedicated-log-volume
(predeterminado) para deshabilitar un volumen de registro dedicado. -
--apply-immediately
: utilice--apply-immediately
para aplicar los cambios inmediatamente.Utilice
--no-apply-immediately
(el valor predeterminado) para aplicar los cambios en el siguiente período de mantenimiento.
Para habilitar o deshabilitar el DLV en una instancia de base de datos existente mediante el almacenamiento de IOPS aprovisionadas, use la operación ModifyDBInstance
de la API de Amazon RDS. Establezca los siguientes parámetros:
-
DedicatedLogVolume
: configure esta opción entrue
para habilitar un volumen de registro dedicado.Configure esta opción en
false
para deshabilitar un volumen de registro dedicado. Este es el valor predeterminado. -
ApplyImmediately
: establezca esta opción enTrue
para aplicar los cambios inmediatamente.Establezca esta opción en
False
(el valor predeterminado) para aplicar los cambios durante el siguiente período de mantenimiento.
Supervisión del almacenamiento del DLV
Puede supervisar el uso del almacenamiento del DLV con la métrica FreeStorageSpaceLogVolume
en CloudWatch.
Puede utilizar la siguiente consulta de RDS para PostgreSQL a fin de encontrar el tamaño ocupado por los registros de transacciones:
SELECT pg_size_pretty(COALESCE(sum(size), 0)) AS total_wal_generated_size FROM pg_catalog.pg_ls_waldir();
Si el DLV se queda sin espacio de almacenamiento, la instancia de base de datos entrará en el estado storage-full
, lo que provocará un tiempo de inactividad.
Le recomendamos que elimine los archivos de registro antiguos antes de quedarse sin espacio de almacenamiento en DLV.