Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer AOF-Persistentie | Geavanceerde Functies en Beveiliging
Introductie tot Redis

bookAOF-Persistentie

De illustratie toont hoe Redis werkt met behulp van AOF. Een clientopdracht wordt eerst uitgevoerd in het geheugen voor snelle gegevensbenadering, en vervolgens wordt de opdracht naar een bestand op schijf geschreven om betrouwbaar gegevensherstel te waarborgen in geval van een storing.

Hoe AOF werkt

Wanneer de AOF-modus is ingeschakeld, wordt elke schrijfopdracht die naar de server wordt gestuurd, opgeslagen in een bestand. Bij het herstarten van Redis worden de opdrachten uit het AOF-bestand gelezen en gebruikt om de dataset te herstellen.

Na verloop van tijd kan dit bestand aanzienlijk in omvang toenemen, omdat het de volledige geschiedenis van sleutelwijzigingen bevat. Om dit aan te pakken, herschrijft Redis periodiek het bestand, waarbij onnodige opdrachten worden verwijderd en alleen de huidige status van elke sleutel behouden blijft. Bijvoorbeeld, als we een sleutel met de naam total gebruiken en de waarde meerdere keren wijzigen, kan het oorspronkelijke AOF-bestand er als volgt uitzien:

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

Na het herschrijven bewaart Redis alleen de laatste waarde voor de sleutel:

set total 100

Wanneer Redis een nieuw commando toevoegt aan het AOF-bestand, slaat het besturingssysteem dit eerst op in een buffer voordat het op specifieke intervallen naar de schijf wordt geschreven. Bij een stroomuitval kan data die nog in de buffer staat, verloren gaan. Om dit risico te minimaliseren, leegt Redis de buffer standaard elke seconde. Het is mogelijk om te configureren dat data direct na elk commando naar de schijf wordt geschreven, maar dit vertraagt de operaties aanzienlijk.

AOF inschakelen

Om AOF in te schakelen, werk het bestand redis.conf bij met de volgende instellingen:

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

Bij het configureren van AOF in Redis kan worden gekozen hoe vaak gegevens naar de schijf worden gesynchroniseerd. Dit beïnvloedt zowel de systeemprestaties als de betrouwbaarheid:

  • appendfsync alwayssynchronisatie na elke bewerking (trager maar het meest betrouwbaar);
  • appendfsync everysecsynchronisatie eenmaal per seconde (optimale balans tussen prestaties en duurzaamheid);
  • appendfsync nogegevens blijven in het geheugen totdat ze door het systeem worden weggeschreven (snel maar risicovol).

Verschil tussen AOF en RDB

Gecombineerde persistentie configureren

Het is mogelijk om zowel RDB als AOF gelijktijdig te activeren om hun sterktes te combineren. Deze methode biedt een betrouwbare back-up (RDB) en minimaliseert gegevensverlies (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

Samenvatting

Persistentie in Redis biedt een balans tussen prestaties en gegevensbetrouwbaarheid, waardoor je de benadering kunt kiezen die het beste bij je behoeften past. Als hoge prestaties de prioriteit zijn, is RDB de ideale keuze. Als het minimaliseren van gegevensverlies echter essentieel is, is AOF meer geschikt. Voor wie maximale betrouwbaarheid vereist, levert het combineren van beide methoden de beste resultaten op.

1. Welke Redis-persistentiemethode minimaliseert gegevensverlies?

2. Wanneer moet je zowel RDB als AOF persistentie in Redis gebruiken?

question mark

Welke Redis-persistentiemethode minimaliseert gegevensverlies?

Select the correct answer

question mark

Wanneer moet je zowel RDB als AOF persistentie in Redis gebruiken?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 6

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 3.33

bookAOF-Persistentie

Veeg om het menu te tonen

De illustratie toont hoe Redis werkt met behulp van AOF. Een clientopdracht wordt eerst uitgevoerd in het geheugen voor snelle gegevensbenadering, en vervolgens wordt de opdracht naar een bestand op schijf geschreven om betrouwbaar gegevensherstel te waarborgen in geval van een storing.

Hoe AOF werkt

Wanneer de AOF-modus is ingeschakeld, wordt elke schrijfopdracht die naar de server wordt gestuurd, opgeslagen in een bestand. Bij het herstarten van Redis worden de opdrachten uit het AOF-bestand gelezen en gebruikt om de dataset te herstellen.

Na verloop van tijd kan dit bestand aanzienlijk in omvang toenemen, omdat het de volledige geschiedenis van sleutelwijzigingen bevat. Om dit aan te pakken, herschrijft Redis periodiek het bestand, waarbij onnodige opdrachten worden verwijderd en alleen de huidige status van elke sleutel behouden blijft. Bijvoorbeeld, als we een sleutel met de naam total gebruiken en de waarde meerdere keren wijzigen, kan het oorspronkelijke AOF-bestand er als volgt uitzien:

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

Na het herschrijven bewaart Redis alleen de laatste waarde voor de sleutel:

set total 100

Wanneer Redis een nieuw commando toevoegt aan het AOF-bestand, slaat het besturingssysteem dit eerst op in een buffer voordat het op specifieke intervallen naar de schijf wordt geschreven. Bij een stroomuitval kan data die nog in de buffer staat, verloren gaan. Om dit risico te minimaliseren, leegt Redis de buffer standaard elke seconde. Het is mogelijk om te configureren dat data direct na elk commando naar de schijf wordt geschreven, maar dit vertraagt de operaties aanzienlijk.

AOF inschakelen

Om AOF in te schakelen, werk het bestand redis.conf bij met de volgende instellingen:

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

Bij het configureren van AOF in Redis kan worden gekozen hoe vaak gegevens naar de schijf worden gesynchroniseerd. Dit beïnvloedt zowel de systeemprestaties als de betrouwbaarheid:

  • appendfsync alwayssynchronisatie na elke bewerking (trager maar het meest betrouwbaar);
  • appendfsync everysecsynchronisatie eenmaal per seconde (optimale balans tussen prestaties en duurzaamheid);
  • appendfsync nogegevens blijven in het geheugen totdat ze door het systeem worden weggeschreven (snel maar risicovol).

Verschil tussen AOF en RDB

Gecombineerde persistentie configureren

Het is mogelijk om zowel RDB als AOF gelijktijdig te activeren om hun sterktes te combineren. Deze methode biedt een betrouwbare back-up (RDB) en minimaliseert gegevensverlies (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

Samenvatting

Persistentie in Redis biedt een balans tussen prestaties en gegevensbetrouwbaarheid, waardoor je de benadering kunt kiezen die het beste bij je behoeften past. Als hoge prestaties de prioriteit zijn, is RDB de ideale keuze. Als het minimaliseren van gegevensverlies echter essentieel is, is AOF meer geschikt. Voor wie maximale betrouwbaarheid vereist, levert het combineren van beide methoden de beste resultaten op.

1. Welke Redis-persistentiemethode minimaliseert gegevensverlies?

2. Wanneer moet je zowel RDB als AOF persistentie in Redis gebruiken?

question mark

Welke Redis-persistentiemethode minimaliseert gegevensverlies?

Select the correct answer

question mark

Wanneer moet je zowel RDB als AOF persistentie in Redis gebruiken?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 6
some-alt