sql >> Base de Datos >  >> NoSQL >> Redis

¿Es redis un almacén de datos duradero?

Redis no es generalmente implementado como un almacén de datos "duradero" (en el sentido de la "D" en ACID), incluso con registro en diario. La mayoría de los casos de uso sacrifican intencionalmente un poco de durabilidad a cambio de velocidad.

Sin embargo, el modo de almacenamiento "agregar solo archivo" se puede configurar opcionalmente para operar de manera duradera, a costa del rendimiento. Tendrá que pagar por un fsync() en cada modificación. Para configurar esto, configure estas dos opciones en su archivo .conf:

 appendonly yes
 appendfsync always

De los documentos:¿Qué tan duradero es el archivo de solo agregar?

Verifique redis.conf, puede configurar cuántas veces Redis sincronizará () los datos en el disco. Hay tres opciones:

  • Fsync() cada vez que se añade un nuevo comando al archivo de registro de anexos. Muy, muy lento, muy seguro.
  • Fsync() una vez cada segundo. Lo suficientemente rápido, y puede perder 1 segundo de datos si hay un desastre.
  • Nunca fsync(), simplemente ponga sus datos en manos del sistema operativo. El método más rápido e inseguro.

(Tenga en cuenta que el valor predeterminado para appendfsync en el archivo de configuración que se envía con Redis posterior a 2.0.0 es everysec , y no always .)