Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Persistencia AOF | Características Avanzadas y Seguridad
Introducción a Redis

bookPersistencia AOF

La ilustración muestra cómo Redis opera utilizando AOF. Un comando del cliente se ejecuta primero en memoria para un acceso rápido a los datos, y luego el comando se escribe en un archivo en disco para garantizar una recuperación confiable de los datos en caso de una falla.

Cómo funciona AOF

Cuando el modo AOF está habilitado, cada comando de escritura enviado al servidor se guarda en un archivo. Al reiniciar Redis, los comandos del archivo AOF se leen y se utilizan para restaurar el conjunto de datos.

Con el tiempo, este archivo puede crecer significativamente en tamaño ya que contiene todo el historial de cambios de claves. Para abordar esto, Redis periódicamente reescribe el archivo, eliminando comandos innecesarios y conservando solo el estado actual de cada clave. Por ejemplo, si usamos una clave llamada total y modificamos su valor varias veces, el archivo AOF original podría verse así:

set total 5
set total 20
set total 45
set total 100

Después de la reescritura, Redis conservará solo el valor más reciente para la clave:

set total 100

Cuando Redis agrega un nuevo comando al archivo AOF, el sistema operativo inicialmente lo guarda en un búfer antes de escribirlo en el disco en intervalos específicos. Si ocurre un corte de energía, los datos que aún estén en el búfer pueden perderse. Para minimizar este riesgo, Redis vacía el búfer cada segundo de forma predeterminada. Se puede configurar para escribir los datos en el disco inmediatamente después de cada comando, pero esto ralentiza significativamente las operaciones.

Cómo habilitar AOF

Para habilitar AOF, actualice el archivo redis.conf con las siguientes configuraciones:

appendonly yes                  # enable AOF mode
appendfilename "appendonly.aof" # specify the log file name

Al configurar AOF en Redis, es posible elegir la frecuencia con la que los datos se sincronizan en el disco. Esto afecta tanto al rendimiento del sistema como a la fiabilidad:

  • appendfsync alwayssincronización después de cada operación (más lento pero más fiable);
  • appendfsync everysecsincronización una vez por segundo (equilibrio óptimo entre rendimiento y durabilidad);
  • appendfsync no – los datos permanecen en memoria hasta que el sistema los vuelca (rápido pero arriesgado).

Diferencia entre AOF y RDB

Configuración de persistencia combinada

Es posible habilitar tanto RDB como AOF simultáneamente para combinar sus ventajas. Este enfoque proporciona una copia de seguridad confiable (RDB) mientras minimiza la pérdida de datos (AOF).

save 300 10       # RDB: save every 5 minutes if there are 10 changes
appendonly yes     # enable AOF
appendfsync everysec  # sync to disk every second

Resumen

La persistencia en Redis logra un equilibrio entre el rendimiento y la fiabilidad de los datos, permitiendo elegir el enfoque que mejor se adapte a sus necesidades. Si la prioridad es un alto rendimiento, RDB es la opción ideal. Por otro lado, si es esencial minimizar la pérdida de datos, AOF es más adecuado. Para quienes requieren la máxima fiabilidad, utilizar ambos métodos juntos proporciona los mejores resultados.

1. ¿Qué método de persistencia de Redis minimiza la pérdida de datos?

2. ¿Cuándo se deben usar tanto la persistencia RDB como AOF en Redis?

question mark

¿Qué método de persistencia de Redis minimiza la pérdida de datos?

Select the correct answer

question mark

¿Cuándo se deben usar tanto la persistencia RDB como AOF en Redis?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 6

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

What are the main differences between AOF and RDB in Redis?

How do I configure Redis to use both AOF and RDB for persistence?

Can you explain the pros and cons of each persistence method in more detail?

Awesome!

Completion rate improved to 3.33

bookPersistencia AOF

Desliza para mostrar el menú

La ilustración muestra cómo Redis opera utilizando AOF. Un comando del cliente se ejecuta primero en memoria para un acceso rápido a los datos, y luego el comando se escribe en un archivo en disco para garantizar una recuperación confiable de los datos en caso de una falla.

Cómo funciona AOF

Cuando el modo AOF está habilitado, cada comando de escritura enviado al servidor se guarda en un archivo. Al reiniciar Redis, los comandos del archivo AOF se leen y se utilizan para restaurar el conjunto de datos.

Con el tiempo, este archivo puede crecer significativamente en tamaño ya que contiene todo el historial de cambios de claves. Para abordar esto, Redis periódicamente reescribe el archivo, eliminando comandos innecesarios y conservando solo el estado actual de cada clave. Por ejemplo, si usamos una clave llamada total y modificamos su valor varias veces, el archivo AOF original podría verse así:

set total 5
set total 20
set total 45
set total 100

Después de la reescritura, Redis conservará solo el valor más reciente para la clave:

set total 100

Cuando Redis agrega un nuevo comando al archivo AOF, el sistema operativo inicialmente lo guarda en un búfer antes de escribirlo en el disco en intervalos específicos. Si ocurre un corte de energía, los datos que aún estén en el búfer pueden perderse. Para minimizar este riesgo, Redis vacía el búfer cada segundo de forma predeterminada. Se puede configurar para escribir los datos en el disco inmediatamente después de cada comando, pero esto ralentiza significativamente las operaciones.

Cómo habilitar AOF

Para habilitar AOF, actualice el archivo redis.conf con las siguientes configuraciones:

appendonly yes                  # enable AOF mode
appendfilename "appendonly.aof" # specify the log file name

Al configurar AOF en Redis, es posible elegir la frecuencia con la que los datos se sincronizan en el disco. Esto afecta tanto al rendimiento del sistema como a la fiabilidad:

  • appendfsync alwayssincronización después de cada operación (más lento pero más fiable);
  • appendfsync everysecsincronización una vez por segundo (equilibrio óptimo entre rendimiento y durabilidad);
  • appendfsync no – los datos permanecen en memoria hasta que el sistema los vuelca (rápido pero arriesgado).

Diferencia entre AOF y RDB

Configuración de persistencia combinada

Es posible habilitar tanto RDB como AOF simultáneamente para combinar sus ventajas. Este enfoque proporciona una copia de seguridad confiable (RDB) mientras minimiza la pérdida de datos (AOF).

save 300 10       # RDB: save every 5 minutes if there are 10 changes
appendonly yes     # enable AOF
appendfsync everysec  # sync to disk every second

Resumen

La persistencia en Redis logra un equilibrio entre el rendimiento y la fiabilidad de los datos, permitiendo elegir el enfoque que mejor se adapte a sus necesidades. Si la prioridad es un alto rendimiento, RDB es la opción ideal. Por otro lado, si es esencial minimizar la pérdida de datos, AOF es más adecuado. Para quienes requieren la máxima fiabilidad, utilizar ambos métodos juntos proporciona los mejores resultados.

1. ¿Qué método de persistencia de Redis minimiza la pérdida de datos?

2. ¿Cuándo se deben usar tanto la persistencia RDB como AOF en Redis?

question mark

¿Qué método de persistencia de Redis minimiza la pérdida de datos?

Select the correct answer

question mark

¿Cuándo se deben usar tanto la persistencia RDB como AOF en Redis?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 6
some-alt