sql >> Base de Datos >  >> RDS >> MariaDB

ClusterControl - Gestión avanzada de copias de seguridad - mariabackup Parte I

ClusterControl puede, entre otras cosas, actuar como una gran herramienta para ayudarlo a diseñar y ejecutar el programa de copia de seguridad. Numerosas funciones están disponibles, incluida la verificación de copias de seguridad, el cifrado de copias de seguridad transparente y muchas otras. Lo que comúnmente falta es la capacidad de ClusterControl para ajustar las herramientas de copia de seguridad que usamos para crear la copia de seguridad. En este blog nos gustaría repasar algunas de las configuraciones que se pueden aplicar a MariaBackup. Comencemos.

Configuración inicial

La configuración inicial es un clúster de MariaDB con un maestro y una réplica que es retrasado en este momento debido a la importación de los datos que se ejecutan en segundo plano.

Tenemos dos nodos ProxySQL y dos nodos Keepalived, que proporcionan IP virtual y se aseguran de que ProxySQL sea accesible. Estamos poblando el clúster (por lo tanto, el retraso) con datos generados por sysbench. Hemos utilizado el siguiente comando para activar este proceso:

sysbench /root/sysbench/src/lua/oltp_read_write.lua --threads=4 --mysql-host=10.0.0.111 --mysql-user=sbtest --mysql-password=sbtest --mysql-port=6033 --tables=32 --table-size=1000000 prepare

Esto generará alrededor de 7,6 GB de datos en los que vamos a probar diferentes configuraciones de copia de seguridad.

Configuración de compresión

Como mencionamos, hay bastantes configuraciones que puede usar para modificar MariaBackup y otras herramientas involucradas en el proceso de copia de seguridad.

En esta entrada de blog nos gustaría centrarnos en el nivel de compresión y ver si tiene algún tipo de impacto real en nuestro proceso de copia de seguridad. ¿Cambia la duración de la ejecución de la copia de seguridad? ¿Cambia el tamaño de la copia de seguridad? ¿Cómo? ¿Tiene algún sentido usar algo más que la configuración predeterminada? Echémosle un vistazo en breve.

Vamos a ejecutar copias de seguridad utilizando todas las configuraciones del menú desplegable Nivel de compresión:

Las copias de seguridad se almacenarán en el nodo, localmente, para minimizar el impacto causado por la red Vamos a utilizar MariaBackup completo. Los datos en la base de datos no están encriptados ni comprimidos de ninguna manera.

Comenzaremos 9 trabajos de copia de seguridad, cada uno con una configuración diferente del nivel de compresión. Esta configuración se pasa a gzip que se usa, de forma predeterminada, para comprimir los datos. Lo que esperamos ver es un aumento del tiempo de ejecución de la copia de seguridad y una reducción del tamaño de la copia de seguridad cuando aumentemos esta configuración.

Como puede ver, con la excepción de la copia de seguridad 4, que podemos solo cuente como una fluctuación transitoria, el tiempo de ejecución de la copia de seguridad aumenta a partir de 3 minutos y 41 segundos hasta 17 minutos y 57 segundos. El tamaño de la copia de seguridad disminuye de 3,5 GB a 3,3 GB. También podemos comprobar el tamaño exacto de la copia de seguridad:

du -s /root/backups/*
3653288 /root/backups/BACKUP-1
3643088 /root/backups/BACKUP-2
3510420 /root/backups/BACKUP-3
3486304 /root/backups/BACKUP-4
3449392 /root/backups/BACKUP-5
3437504 /root/backups/BACKUP-6
3429152 /root/backups/BACKUP-7
3425492 /root/backups/BACKUP-8
3405348 /root/backups/BACKUP-9

Esto confirma que el tamaño de la copia de seguridad, de hecho, disminuye con cada nivel de compresión, pero las diferencias son bastante pequeñas entre el primer y el último nivel que probamos. La copia de seguridad más pequeña tiene el 93,2 % del tamaño de la más grande. Por otro lado, su tiempo de ejecución (1077 segundos) es casi 5 veces mayor que el tiempo de ejecución de la copia de seguridad más grande (221 segundos).

Por favor, tenga en cuenta que su millaje variará. Puede usar datos que se compriman mejor, lo que hace que el impacto del nivel de compresión sea más significativo. Según el resultado de esta prueba, para el conjunto de datos de sysbench no tiene sentido usar un nivel de compresión superior a 3.

Compresión Qpress

Otra opción que nos gustaría probar hoy es la compresión Qpress. Qpress es un método de compresión que se puede usar para reemplazar gzip.

Como puede ver, definitivamente es más rápido que gzip pero viene con un aumento significativo en el tamaño de los datos. Después de 100 segundos de compresión, obtuvimos 4,6 GB de datos.

Elegir el método de compresión más adecuado puede requerir una serie de pruebas pero, como esperamos que pueda ver, definitivamente tiene sentido hacerlo. Para grandes conjuntos de datos, poder cambiar un archivo un poco más grande por un proceso de copia de seguridad casi 5 veces más rápido puede ser muy útil. Si consideramos usar Qpress, podemos intercambiar espacio en disco incluso por un proceso de copia de seguridad 10 veces más rápido. Esto puede significar una diferencia entre una copia de seguridad de 20 horas y una copia de seguridad de 2 horas. Claro, el aumento del espacio en disco necesario para almacenar dichos datos será visible, pero luego, cuando lo piensa, es factible obtener un volumen de disco más grande. Agregar horas adicionales al día, cuando 24 horas no son suficientes para realizar la copia de seguridad, no lo es.

Esperamos que este breve blog le resulte útil y le anime a experimentar y modificar diferentes configuraciones que se pueden utilizar para MariaBackup. Si desea compartir su experiencia con ellos, nos encantaría ver sus comentarios.