Redis
 sql >> Database >  >> NoSQL >> Redis

Redis è un datastore durevole?

Redis non è solitamente distribuito come un datastore "durevole" (nel senso della "D" in ACID.), anche con journaling. La maggior parte dei casi d'uso sacrifica intenzionalmente un po' di durata in cambio della velocità.

Tuttavia, la modalità di archiviazione "aggiungi solo file" può essere opzionalmente configurata per funzionare in modo duraturo, a scapito delle prestazioni. Dovrà pagare per un fsync() su ogni modifica. Per configurarlo, imposta queste due opzioni nel tuo file .conf:

 appendonly yes
 appendfsync always

Dai documenti:quanto è durevole il file append only?

Controlla redis.conf, puoi configurare quante volte Redis eseguirà la fsync() dei dati sul disco. Ci sono tre opzioni:

  • Fsync() ogni volta che viene aggiunto un nuovo comando al file di registro append. Molto, molto lento, molto sicuro.
  • Fsync() una volta ogni secondo. Abbastanza veloce e puoi perdere 1 secondo di dati in caso di disastro.
  • Mai fsync(), metti i tuoi dati nelle mani del Sistema Operativo. Il metodo più veloce e non sicuro.

(Nota che l'impostazione predefinita per appendfsync nel file di configurazione fornito con Redis dopo la 2.0.0 è everysec , e non always .)