RDB-Persistentie
Hoewel Redis bekend staat als een in-memory data store, maakt persistentie het mogelijk om gegevens op te slaan op schijf ter bescherming tegen verlies bij servercrashes. We behandelen de belangrijkste persistentiemethoden in Redis, hun configuraties en praktische toepassingen.
RDB-persistentie
RDB (Redis Database) maakt een volledige snapshot van Redis-gegevens op specifieke tijdstippen. Deze methode is geschikt voor situaties waarin snelheid belangrijk is en incidenteel gegevensverlies acceptabel is.
Zoals weergegeven in het diagram, maakt Redis periodiek snapshots van gegevens en slaat deze op schijf op. Dit helpt gegevensverlies te minimaliseren en vereenvoudigt het herstellen van de databasetoestand tijdens een herstart.
De frequentie van snapshot-creatie kan worden geconfigureerd in het bestand redis.conf.
Om het bestand redis.conf te bekijken en aan te passen op macOS:
cat /opt/homebrew/etc/redis.conf
Om het bestand redis.conf te bekijken op Windows, open de directory waar Redis is geïnstalleerd en open het bestand redis.windows.conf.
Na het openen van het bestand zie je de standaard snapshot-instellingen zoals:
save 900 1 # save if at least 1 write operation occurred in the last 15 minutes.
save 300 10 # save if at least 10 write operations occurred in the last 5 minutes.
save 60 10000 # save if at least 10,000 write operations occurred in the last 1 minute.
In het bovenstaande voorbeeld zal Redis gegevens opslaan op basis van de volgende criteria:
- Elke 900 seconden (15 minuten) als er ten minste één sleutel is gewijzigd;
- Elke 300 seconden (5 minuten) als er ten minste 10 sleutels zijn gewijzigd;
- Elke 60 seconden als er ten minste 10.000 sleutels zijn gewijzigd.
De frequentie waarmee gegevens op schijf worden opgeslagen, bepaalt het niveau van duurzaamheid. Bijvoorbeeld, als gegevens elke 5 minuten worden opgeslagen en er treedt een storing op enkele minuten na de laatste opslag, gaan de gegevenswijzigingen die in die periode zijn aangebracht verloren. Het is daarom essentieel om het opslaginterval zorgvuldig te kiezen.
Werking
Redis slaat de database-status op in een .rdb-bestand op de gespecificeerde intervallen. Wanneer de server opnieuw wordt gestart, worden de gegevens hersteld vanuit het laatst opgeslagen bestand.
Voor- en nadelen
RDB heeft minimale impact op de prestaties en gebruikt een compact opslagformaat. Er is echter een risico op verlies van gegevens die zijn toegevoegd tussen de snapshot-intervallen.
Handmatige snapshot-creatie
Gebruikers kunnen ook handmatig een RDB-snapshot starten met het SAVE-commando. Dit commando blokkeert de Redis-server en moet daarom worden vermeden. Gebruik in plaats daarvan het BGSAVE-commando, dat een child-proces aanmaakt om een snapshot op de achtergrond te maken.
1. Wat doet de RDB-methode in Redis?
2. Wat is een voordeel van de RDB-methode?
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
What are the main differences between RDB and other Redis persistence methods?
How do I configure the snapshot intervals for RDB in redis.conf?
Can you explain when to use the SAVE vs BGSAVE commands?
Awesome!
Completion rate improved to 3.33
RDB-Persistentie
Veeg om het menu te tonen
Hoewel Redis bekend staat als een in-memory data store, maakt persistentie het mogelijk om gegevens op te slaan op schijf ter bescherming tegen verlies bij servercrashes. We behandelen de belangrijkste persistentiemethoden in Redis, hun configuraties en praktische toepassingen.
RDB-persistentie
RDB (Redis Database) maakt een volledige snapshot van Redis-gegevens op specifieke tijdstippen. Deze methode is geschikt voor situaties waarin snelheid belangrijk is en incidenteel gegevensverlies acceptabel is.
Zoals weergegeven in het diagram, maakt Redis periodiek snapshots van gegevens en slaat deze op schijf op. Dit helpt gegevensverlies te minimaliseren en vereenvoudigt het herstellen van de databasetoestand tijdens een herstart.
De frequentie van snapshot-creatie kan worden geconfigureerd in het bestand redis.conf.
Om het bestand redis.conf te bekijken en aan te passen op macOS:
cat /opt/homebrew/etc/redis.conf
Om het bestand redis.conf te bekijken op Windows, open de directory waar Redis is geïnstalleerd en open het bestand redis.windows.conf.
Na het openen van het bestand zie je de standaard snapshot-instellingen zoals:
save 900 1 # save if at least 1 write operation occurred in the last 15 minutes.
save 300 10 # save if at least 10 write operations occurred in the last 5 minutes.
save 60 10000 # save if at least 10,000 write operations occurred in the last 1 minute.
In het bovenstaande voorbeeld zal Redis gegevens opslaan op basis van de volgende criteria:
- Elke 900 seconden (15 minuten) als er ten minste één sleutel is gewijzigd;
- Elke 300 seconden (5 minuten) als er ten minste 10 sleutels zijn gewijzigd;
- Elke 60 seconden als er ten minste 10.000 sleutels zijn gewijzigd.
De frequentie waarmee gegevens op schijf worden opgeslagen, bepaalt het niveau van duurzaamheid. Bijvoorbeeld, als gegevens elke 5 minuten worden opgeslagen en er treedt een storing op enkele minuten na de laatste opslag, gaan de gegevenswijzigingen die in die periode zijn aangebracht verloren. Het is daarom essentieel om het opslaginterval zorgvuldig te kiezen.
Werking
Redis slaat de database-status op in een .rdb-bestand op de gespecificeerde intervallen. Wanneer de server opnieuw wordt gestart, worden de gegevens hersteld vanuit het laatst opgeslagen bestand.
Voor- en nadelen
RDB heeft minimale impact op de prestaties en gebruikt een compact opslagformaat. Er is echter een risico op verlies van gegevens die zijn toegevoegd tussen de snapshot-intervallen.
Handmatige snapshot-creatie
Gebruikers kunnen ook handmatig een RDB-snapshot starten met het SAVE-commando. Dit commando blokkeert de Redis-server en moet daarom worden vermeden. Gebruik in plaats daarvan het BGSAVE-commando, dat een child-proces aanmaakt om een snapshot op de achtergrond te maken.
1. Wat doet de RDB-methode in Redis?
2. Wat is een voordeel van de RDB-methode?
Bedankt voor je feedback!