RDB-Pysyvyys
Vaikka Redis tunnetaan muistissa toimivana tietovarastona, persistenssi mahdollistaa datan tallentamisen levylle suojaten sitä menetykseltä esimerkiksi palvelimen kaatumisen yhteydessä. Tässä käsitellään Redisin tärkeimmät persistenssimenetelmät, niiden asetukset ja käytännön sovellukset.
RDB-persistenssi
RDB (Redis Database) luo täydellisen tilannevedoksen Redis-datasta tietyin aikavälein. Tämä menetelmä soveltuu tilanteisiin, joissa nopeus on tärkeää ja satunnainen datan menetys on hyväksyttävää.
Kuten kaaviossa esitetään, Redis luo säännöllisesti tilannevedoksia datasta ja tallentaa ne levylle. Tämä auttaa minimoimaan datan menetyksen ja yksinkertaistaa tietokannan tilan palauttamista uudelleenkäynnistyksen yhteydessä.
Snapshot-luonnin tiheys voidaan määrittää redis.conf-tiedostossa.
macOS-järjestelmässä redis.conf-tiedoston tarkastelu ja muokkaus:
cat /opt/homebrew/etc/redis.conf
Windows-järjestelmässä redis.conf-tiedoston tarkastelu onnistuu avaamalla hakemisto, johon Redis on asennettu, ja käyttämällä redis.windows.conf -tiedostoa.
Tiedoston avaamisen jälkeen näet oletusarvoiset snapshot-asetukset kuten:
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.
Yllä olevassa esimerkissä Redis tallentaa datan seuraavien kriteerien perusteella:
- Joka 900 sekunti (15 minuuttia), jos vähintään yksi avain on muokattu;
- Joka 300 sekunti (5 minuuttia), jos vähintään 10 avainta on muokattu;
- Joka 60 sekunti, jos vähintään 10 000 avainta on muokattu.
Tietojen tallennuksen tiheys levylle määrittää kestävyyden tason. Esimerkiksi, jos tiedot tallennetaan joka 5. minuutti, ja virhe tapahtuu muutama minuutti viimeisen tallennuksen jälkeen, kyseisen ajanjakson aikana tehdyt muutokset menetetään. Siksi on tärkeää valita tallennusväli huolellisesti.
Miten se toimii
Redis tallentaa tietokannan tilan .rdb-tiedostoon määritellyin välein. Kun palvelin käynnistetään uudelleen, tiedot palautetaan viimeksi tallennetusta tiedostosta.
Hyödyt ja haitat
RDB vaikuttaa vain vähän suorituskykyyn ja käyttää tiivistä tallennusmuotoa. On kuitenkin olemassa riski, että tiedot snapshot-välien välillä menetetään.
Manuaalinen snapshotin luonti
Käyttäjät voivat myös käynnistää RDB-snapshotin SAVE-komennolla. Tämä komento estää Redis-palvelimen, joten sen käyttöä tulisi välttää. Sen sijaan tulisi käyttää BGSAVE-komentoa, joka luo lapsiprosessin ottamaan snapshotin taustalla.
1. Mitä RDB-menetelmä tekee Redisissä?
2. Mikä on RDB-menetelmän etu?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 3.33
RDB-Pysyvyys
Pyyhkäise näyttääksesi valikon
Vaikka Redis tunnetaan muistissa toimivana tietovarastona, persistenssi mahdollistaa datan tallentamisen levylle suojaten sitä menetykseltä esimerkiksi palvelimen kaatumisen yhteydessä. Tässä käsitellään Redisin tärkeimmät persistenssimenetelmät, niiden asetukset ja käytännön sovellukset.
RDB-persistenssi
RDB (Redis Database) luo täydellisen tilannevedoksen Redis-datasta tietyin aikavälein. Tämä menetelmä soveltuu tilanteisiin, joissa nopeus on tärkeää ja satunnainen datan menetys on hyväksyttävää.
Kuten kaaviossa esitetään, Redis luo säännöllisesti tilannevedoksia datasta ja tallentaa ne levylle. Tämä auttaa minimoimaan datan menetyksen ja yksinkertaistaa tietokannan tilan palauttamista uudelleenkäynnistyksen yhteydessä.
Snapshot-luonnin tiheys voidaan määrittää redis.conf-tiedostossa.
macOS-järjestelmässä redis.conf-tiedoston tarkastelu ja muokkaus:
cat /opt/homebrew/etc/redis.conf
Windows-järjestelmässä redis.conf-tiedoston tarkastelu onnistuu avaamalla hakemisto, johon Redis on asennettu, ja käyttämällä redis.windows.conf -tiedostoa.
Tiedoston avaamisen jälkeen näet oletusarvoiset snapshot-asetukset kuten:
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.
Yllä olevassa esimerkissä Redis tallentaa datan seuraavien kriteerien perusteella:
- Joka 900 sekunti (15 minuuttia), jos vähintään yksi avain on muokattu;
- Joka 300 sekunti (5 minuuttia), jos vähintään 10 avainta on muokattu;
- Joka 60 sekunti, jos vähintään 10 000 avainta on muokattu.
Tietojen tallennuksen tiheys levylle määrittää kestävyyden tason. Esimerkiksi, jos tiedot tallennetaan joka 5. minuutti, ja virhe tapahtuu muutama minuutti viimeisen tallennuksen jälkeen, kyseisen ajanjakson aikana tehdyt muutokset menetetään. Siksi on tärkeää valita tallennusväli huolellisesti.
Miten se toimii
Redis tallentaa tietokannan tilan .rdb-tiedostoon määritellyin välein. Kun palvelin käynnistetään uudelleen, tiedot palautetaan viimeksi tallennetusta tiedostosta.
Hyödyt ja haitat
RDB vaikuttaa vain vähän suorituskykyyn ja käyttää tiivistä tallennusmuotoa. On kuitenkin olemassa riski, että tiedot snapshot-välien välillä menetetään.
Manuaalinen snapshotin luonti
Käyttäjät voivat myös käynnistää RDB-snapshotin SAVE-komennolla. Tämä komento estää Redis-palvelimen, joten sen käyttöä tulisi välttää. Sen sijaan tulisi käyttää BGSAVE-komentoa, joka luo lapsiprosessin ottamaan snapshotin taustalla.
1. Mitä RDB-menetelmä tekee Redisissä?
2. Mikä on RDB-menetelmän etu?
Kiitos palautteestasi!