El calentamiento de caché de InnoDB puede proporcionar ganancias de rendimiento para la instancia de base de datos de MariaDB al guardar el estado actual del grupo del búfer cuando se cierra la instancia de base de datos y volver a cargar el grupo del búfer desde la información guardada cuando se inicia la instancia de base de datos. Este método elimina la necesidad de que el grupo del búfer "se caliente" con respecto al uso normal de la base de datos y, en su lugar, precarga el grupo del búfer con las páginas de las consultas frecuentes conocidas. Para obtener más información acerca del calentamiento de caché consulte Volcado y restauración del grupo de búferes
El calentamiento de caché se habilita de forma predeterminada en MariaDB 10.3 y en instancias de base de datos superiores. Para habilitarlo, establezca los parámetros innodb_buffer_pool_dump_at_shutdown
e innodb_buffer_pool_load_at_startup
en 1 en el grupo de parámetros de la instancia de base de datos. Cambiar los valores de estos parámetros en un grupo de parámetros afecta a todas las instancias de base de datos de MariaDB que utilicen ese grupo de parámetros. Para habilitar el calentamiento de caché para instancias de base de datos de MariaDB concretas, es posible que deba crear un nuevo grupo de parámetros para esas instancias de base de datos. Para obtener información acerca de los grupos de parámetros, consulte Grupos de parámetros para Amazon RDS.
El calentamiento de caché proporciona principalmente un beneficio de desempeño para las instancias de bases de datos que utilizan almacenamiento estándar. Si utiliza almacenamiento PIOPS, normalmente no se observa un beneficio de desempeño significativo.
importante
Si la instancia de base de datos MariaDB no se cierra de forma normal como, por ejemplo, durante una conmutación por error, el estado del grupo del búfer no se guarda en el disco. En este caso, MariaDB carga cualquier archivo de grupo del búfer que esté disponible cuando se reinicia la instancia de base de datos. No es perjudicial, pero el grupo del búfer restaurado podría no reflejar el estado más reciente del grupo del búfer antes del reinicio. Para asegurarse de que tiene un estado reciente del grupo del búfer disponible para calentar la caché de al iniciar, recomendamos que vuelque periódicamente el grupo del búfer "bajo demanda". Puede volcar o cargar el grupo del búfer bajo demanda.
Puede crear un evento para volcar el grupo del búfer automáticamente a intervalos regulares. Por ejemplo, la siguiente instrucción crea un evento denominado periodic_buffer_pool_dump
que vuelca el grupo del búfer cada hora.
CREATE EVENT periodic_buffer_pool_dump
ON SCHEDULE EVERY 1 HOUR
DO CALL mysql.rds_innodb_buffer_pool_dump_now();
Para obtener más información, consulte Events
Volcado y carga del grupo del búfer bajo demanda
Puede guardar y cargar la caché de bajo demanda usando los siguientes procedimientos almacenados:
Para volcar el estado actual del grupo del búfer en el disco, llame al procedimiento almacenado mysql.rds_innodb_buffer_pool_dump_now.
Para cargar el estado guardado del grupo del búfer desde el disco, llame al procedimiento almacenado mysql.rds_innodb_buffer_pool_load_now.
Para cancelar una operación de carga en curso, llame al procedimiento almacenado mysql.rds_innodb_buffer_pool_load_abort.