Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 24125|Respuesta: 2

[Redis] Diferencia de persistencia de Redis entre RDB y AOF

[Copiar enlace]
Publicado en 4/2/2021 13:47:27 | | | |
Redis Windows 64-bit download, dirección oficial de descarga
https://www.itsvse.com/thread-2576-1-1.html

Redis tiene tres formas de empezar
https://www.itsvse.com/thread-4008-1-1.html

La diferencia entre guardar y guardar en redis
https://www.itsvse.com/thread-4010-1-1.html

Instalación de CentOS 7 Tutorial de Redis 5.0.3
https://www.itsvse.com/thread-7201-1-1.html


1. Prefacio

Recientemente, Redis se ha utilizado como caché en el proyecto para facilitar el intercambio de datos entre múltiples procesos empresariales. Como los datos de Redis se almacenan en memoria, si no se configura la persistencia, todos los datos se perderán tras el reinicio de Redis, por lo que necesitas activar la función de persistencia de Redis para guardar los datos en el disco, y cuando se reinicia Redis puedes recuperar datos del disco. Redis ofrece dos formas de persistir: persistencia RDB (el principio es volcar los registros de la base de datos de Reids en memoria para que la persistencia RDB se mantenga en disco) y la otra es persistencia AOF (el principio es escribir los registros de operaciones de Reids en un archivo en forma de apéndice). Entonces, ¿cuál es la diferencia entre estos dos métodos de persistencia y cómo elegir cambiarlo? La mayoría de lo que leo en Internet explica cómo configurar y usar estos dos métodos, pero no hay una introducción a la diferencia entre ambos ni a qué escenarios de aplicación utilizar.


2. La diferencia entre ambos

La persistencia en RDB se refiere a escribir una instantánea del conjunto de datos en memoria en disco dentro de un intervalo de tiempo especificado, y el proceso operativo real consiste en bifurcar un subproceso, primero escribir el conjunto de datos en un archivo temporal, luego reemplazar el archivo anterior tras la escritura exitosa y almacenarlo con compresión binaria.



La persistencia AOF registra cada operación de escritura y eliminación procesada por el servidor en forma de log, y la operación de consulta no se grabará, sino en texto, y puedes abrir el archivo para ver el registro detallado de la operación.



3. Ventajas y desventajas de ambos

¿Cuáles son las ventajas del RDB?

1). Una vez que se use esto, toda tu base de datos Redis contendrá un solo archivo, lo cual es perfecto para copias de seguridad. Por ejemplo, puede que quieras archivar las últimas 24 horas cada hora, y también archivar los últimos 30 días cada día. Con esta estrategia de respaldo, podemos recuperarnos fácilmente en caso de un fallo catastrófico del sistema.

2). RDB es una muy buena opción para la recuperación ante desastres. Porque podemos comprimir fácilmente un solo archivo y transferirlo a otro medio de almacenamiento.

3). Maximizar el rendimiento. Para el proceso de servicio Reddis, lo único que necesita hacer al iniciar la persistencia es generar bifurcaciones a los procesos hijos, y entonces los procesos hijos completarán estas tareas de persistencia, lo que puede evitar en gran medida que el proceso de servicio realice operaciones de E/S.

4). En comparación con el mecanismo de la AOF, si el conjunto de datos es grande, la eficiencia inicial de RDB será mayor.

¿Cuáles son las desventajas de RDB?

1). Si quieres asegurar una alta disponibilidad de datos, es decir, evitar la pérdida de datos al máximo, entonces RDB no será una buena opción. Porque una vez que el sistema se cae antes de la persistencia programada, se perderán los datos que se escribieron previamente en el disco.

2). Dado que RDB ayuda en la persistencia de datos a través de subprocesos fork, si el conjunto de datos es grande, puede hacer que todo el servidor detenga el servicio durante cientos de milisegundos, o incluso 1 segundo.

¿Cuáles son las ventajas de AOF?

1). Este mecanismo puede aportar una mayor seguridad de los datos, es decir, persistencia de datos. En Redis se proporcionan 3 estrategias de sincronización: sincronización por segundo, sincronización por modificación y desincronización. De hecho, la sincronización por segundo también se realiza de forma asíncrona, y su eficiencia es muy alta; la diferencia es que una vez que el sistema cae, los datos modificados se perderán en ese segundo. Y cada vez que una modificación se sincroniza, podemos pensar en ello como persistencia de sincronización, es decir, que cada cambio de datos que ocurre se registra inmediatamente en el disco. Es previsible que este método sea el menos eficiente. En cuanto a la falta de sincronización, no hace falta decir más, creo que todo el mundo puede entenderlo correctamente.

2). Dado que el mecanismo adopta el modo de anexo para escribir archivos de registro, incluso si hay un tiempo de inactividad durante el proceso de escritura, el contenido ya existente en el archivo de registro no será destruido. Sin embargo, si solo escribimos la mitad de los datos y el sistema se bloquea esta vez, no te preocupes, podemos usar la herramienta redis-check-aof para ayudarnos a resolver el problema de consistencia de datos antes del siguiente inicio de Redis.

3). Si el registro es demasiado grande, Redis puede activar automáticamente el mecanismo de reescritura. Es decir, Redis escribe continuamente los datos de modificación en el archivo de disco antiguo en modo de adición, y Redis también creará un nuevo archivo para registrar qué comandos de modificación se ejecutan durante este periodo. Por lo tanto, la seguridad de los datos puede estar mejor garantizada al cambiar entre reescrituras.

4). AOF contiene un archivo de registro claro y fácil de entender que registra todas las modificaciones. De hecho, también podemos completar la reconstrucción de los datos a través de este archivo.

¿Cuáles son las desventajas de la OV?

1). Para el mismo número de conjuntos de datos, los archivos OF suelen ser más grandes que los archivos RDB. RDB recupera grandes conjuntos de datos más rápido que AOF.

2). Dependiendo de la estrategia de sincronización, AOF tiende a ser más lento que RDB en términos de eficiencia de ejecución. En resumen, la eficiencia de la política de sincronización por segundo es relativamente alta, y la eficiencia de la política de desactivación síncrona es tan eficiente como la de RDB.

Los criterios para elegir ambos son si el sistema está dispuesto a sacrificar parte del rendimiento a cambio de una mayor consistencia de caché (AOF), o si está dispuesto a no habilitar copias de seguridad a cambio de un mayor rendimiento cuando las operaciones de escritura son frecuentes, y luego realizar copias de seguridad (RDB) al ejecutar Save manualmente. RDB tiene un significado final más consistente. Sin embargo, el entorno de producción es en realidad más una combinación de ambos.


4. Configuraciones comunes

Configuración de persistencia RDB

Redis vierte una instantánea del conjunto de datos en el archivo dump.rdb. Además, también podemos modificar la frecuencia de las instantáneas de volcado del servidor Redis a través del archivo de configuración; tras abrir el archivo 6379.conf, buscamos guardar y podemos ver la siguiente información de configuración:



Configuración persistente de AOF

Hay tres formas de sincronizar en el perfil de Redis, que son:



Configuración completa:



Se creará un nuevo archivo "appendonly.aof" bajo el directorio de prueba, de la siguiente manera:





Anterior:DataTables implementa exportación de tablas en Excel, CSV e impresión
Próximo:SQL Server establece el nivel de aislamiento de transacciones
 Propietario| Publicado en 8/2/2021 11:45:25 |
Redis modifica el número de puerto por defecto y establece la contraseña de acceso
https://www.itsvse.com/thread-2577-1-1.html
Publicado en 22/9/2021 20:26:16 |
Aprende a aprender...
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com