sql >> Database >  >> NoSQL >> Redis

Is redis een duurzame datastore?

Redis is niet meestal ingezet als een "duurzame" datastore (in de zin van de "D" in ACID.), zelfs met journaling. De meeste use-cases offeren opzettelijk een beetje duurzaamheid op in ruil voor snelheid.

De opslagmodus "alleen bestand toevoegen" kan echter optioneel worden geconfigureerd om op een duurzame manier te werken, ten koste van de prestaties. Het zal voor elke wijziging een fsync() moeten betalen. Om dit te configureren, stelt u deze twee opties in uw .conf-bestand in:

 appendonly yes
 appendfsync always

Uit de documenten:Hoe duurzaam is het bestand met alleen toevoegen?

Controleer redis.conf, u kunt configureren hoe vaak Redis gegevens op schijf fsynchroniseert. Er zijn drie opties:

  • Fsync() elke keer dat een nieuwe opdracht wordt toegevoegd aan het append-logbestand. Heel erg traag, heel veilig.
  • Fsync() één keer per seconde. Snel genoeg, en u kunt 1 seconde aan gegevens verliezen als er een ramp is.
  • Nooit fsync(), leg uw gegevens gewoon in de handen van het besturingssysteem. De snellere en onveiligere methode.

(Merk op dat de standaard voor appendfsync in het configuratiebestand dat met Redis post-2.0.0 wordt geleverd, everysec is , en niet always .)




  1. Laravel + predis + Redis cluster - VERPLAATST / geen verbinding naar 127.0.0.1:6379

  2. Mongo converteert ingesloten document naar array

  3. Nieuwe validator toevoegen aan bestaande collectie

  4. PyMongo upsert gooit upsert moet een instantie van bool-fout zijn