RDB-Vedvarende Lagring
Selv om Redis er kjent som en minnebasert datalagring, gjør persistens det mulig å lagre data på disk for å beskytte mot tap ved serverkrasj. Vi skal utforske de viktigste persistensmetodene i Redis, deres konfigurasjoner og praktiske bruksområder.
RDB-persistens
RDB (Redis Database) oppretter et fullstendig øyeblikksbilde av Redis-data på bestemte tidspunkter. Denne metoden er egnet for scenarier der hastighet er viktig og noe datatap er akseptabelt.
Som vist i diagrammet oppretter Redis periodisk øyeblikksbilder av data og lagrer dem på disk. Dette bidrar til å minimere datatap og forenkler gjenoppretting av databasetilstand ved en omstart.
Frekvensen for opprettelse av øyeblikksbilder kan konfigureres i filen redis.conf.
For å vise og endre filen redis.conf på macOS:
cat /opt/homebrew/etc/redis.conf
For å vise filen redis.conf på Windows, kan du åpne mappen der Redis er installert og få tilgang til filen redis.windows.conf.
Etter at du har åpnet filen, vil du se standardinnstillinger for snapshot som:
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.
I eksempelet over vil Redis lagre data basert på følgende kriterier:
- Hver 900. sekund (15 minutter) hvis minst én nøkkel ble endret;
- Hver 300. sekund (5 minutter) hvis minst 10 nøkler ble endret;
- Hver 60. sekund hvis minst 10 000 nøkler ble endret.
Frekvensen for lagring av data til disk avgjør nivået av holdbarhet. For eksempel, hvis data lagres hvert 5. minutt, og det oppstår en feil noen minutter etter siste lagring, vil endringer gjort i denne perioden gå tapt. Det er derfor viktig å nøye velge lagringsintervall.
Hvordan det fungerer
Redis lagrer databasetilstanden til en .rdb-fil med angitte intervaller. Når serveren startes på nytt, gjenopprettes data fra siste lagrede fil.
Fordeler og ulemper
RDB gir minimal påvirkning på ytelse og bruker et kompakt lagringsformat. Det er imidlertid en risiko for tap av data som er lagt til mellom snapshot-intervaller.
Manuell opprettelse av snapshot
Brukere kan også utløse et RDB-snapshot med SAVE-kommandoen. Denne kommandoen blokkerer Redis-serveren, og bør derfor unngås. I stedet bør BGSAVE-kommandoen brukes, da den oppretter en underprosess for å ta et snapshot i bakgrunnen.
1. Hva gjør RDB-metoden i Redis?
2. Hva er en fordel med RDB-metoden?
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 3.33
RDB-Vedvarende Lagring
Sveip for å vise menyen
Selv om Redis er kjent som en minnebasert datalagring, gjør persistens det mulig å lagre data på disk for å beskytte mot tap ved serverkrasj. Vi skal utforske de viktigste persistensmetodene i Redis, deres konfigurasjoner og praktiske bruksområder.
RDB-persistens
RDB (Redis Database) oppretter et fullstendig øyeblikksbilde av Redis-data på bestemte tidspunkter. Denne metoden er egnet for scenarier der hastighet er viktig og noe datatap er akseptabelt.
Som vist i diagrammet oppretter Redis periodisk øyeblikksbilder av data og lagrer dem på disk. Dette bidrar til å minimere datatap og forenkler gjenoppretting av databasetilstand ved en omstart.
Frekvensen for opprettelse av øyeblikksbilder kan konfigureres i filen redis.conf.
For å vise og endre filen redis.conf på macOS:
cat /opt/homebrew/etc/redis.conf
For å vise filen redis.conf på Windows, kan du åpne mappen der Redis er installert og få tilgang til filen redis.windows.conf.
Etter at du har åpnet filen, vil du se standardinnstillinger for snapshot som:
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.
I eksempelet over vil Redis lagre data basert på følgende kriterier:
- Hver 900. sekund (15 minutter) hvis minst én nøkkel ble endret;
- Hver 300. sekund (5 minutter) hvis minst 10 nøkler ble endret;
- Hver 60. sekund hvis minst 10 000 nøkler ble endret.
Frekvensen for lagring av data til disk avgjør nivået av holdbarhet. For eksempel, hvis data lagres hvert 5. minutt, og det oppstår en feil noen minutter etter siste lagring, vil endringer gjort i denne perioden gå tapt. Det er derfor viktig å nøye velge lagringsintervall.
Hvordan det fungerer
Redis lagrer databasetilstanden til en .rdb-fil med angitte intervaller. Når serveren startes på nytt, gjenopprettes data fra siste lagrede fil.
Fordeler og ulemper
RDB gir minimal påvirkning på ytelse og bruker et kompakt lagringsformat. Det er imidlertid en risiko for tap av data som er lagt til mellom snapshot-intervaller.
Manuell opprettelse av snapshot
Brukere kan også utløse et RDB-snapshot med SAVE-kommandoen. Denne kommandoen blokkerer Redis-serveren, og bør derfor unngås. I stedet bør BGSAVE-kommandoen brukes, da den oppretter en underprosess for å ta et snapshot i bakgrunnen.
1. Hva gjør RDB-metoden i Redis?
2. Hva er en fordel med RDB-metoden?
Takk for tilbakemeldingene dine!