Mis on Redis RDB täisnimi? Redis RDB mälu andmete püsivuse töörežiim

RDB täisnimi onRedis database.

  • Nagu nimigi ütleb, on RDB Redise andmebaas, mida kasutatakse andmete salvestamiseks.
  • Seetõttu kirjutatakse RDB püsivuse kaudu Redise mällu salvestatud andmed RDB-faili ja salvestatakse püsivuse saavutamiseks kettale.
  • Redise omadus on see, et see suudab andmeid säilitada, st kirjutada mällu olevaid andmeid kettale, et tagada andmete kadumine, ja laadida andmeid kettalt mällu.

Mis on Redis RDB täisnimi? Redis RDB mälu andmete püsivuse töörežiim

Redise toimingud põhinevad alguses kõik mälul, nii et jõudlus on väga kõrge, kuid kui programm suletakse, lähevad andmed kaotsi.

Seetõttu peame mälus olevaid andmeid kettale kirjutama määratud ajavahemike järel, mis on kõnepruugis Snapshot.

Taastamisel kirjutatakse hetktõmmise fail otse mällu.

See on ka üks peamisi erinevusi Redise ja Memcachedi vahel, kuna Memcachedil puudub püsivusvõime.

Redise mäluandmete püsivuse tagamiseks pakub Redis meile järgmisi meetodeid.

  • Snapshot meetod (RDB, Redis DataBase): kirjutada mäluandmed kettale binaarsel kujul teatud hetkel;
  • Lisa ainult fail (AOF, Append Only File), salvesta kõik toimingukäsud ja lisa failile teksti kujul;
  • Hübriidpüsivus, uus meetod pärast Redis 4.0, hübriidpüsivus ühendab RDB ja AOF eelised.Kirjutamisel kirjutage esmalt praegused andmed faili algusesse RDB kujul ja seejärel salvestage järgnevad toimingukäsud faili AOF-vormingus, mis ei taga mitte ainult Redise taaskäivitamise kiirust, vaid ka vähendab andmete kadumise oht.

Kuna igal püsivusskeemil on konkreetsed kasutusstsenaariumid.

Redis RDB mälu andmete püsivuse töörežiim

  • RDB (Redis DataBase) on protsess, mille käigus kirjutatakse mälupilt (Snapshot) teatud hetkel kettale binaarsel kujul.
  • Mälu hetktõmmised on see, mida me eespool ütlesime.See viitab andmete olekule mälus teatud hetkel.
  • See sarnaneb foto tegemisega. Kui pildistate sõbrast, saab foto koheselt salvestada kõik sõbra pildid.
  • RDB käivitamiseks on kaks võimalust: üks on käsitsi ja teine ​​automaatne käivitamine.

Käivitage RDB käsitsi

Püsivuse käsitsi käivitamiseks on kaks toimingut:savebgsave.

Peamine erinevus nende vahel seisneb selles, kas Redise põhilõime täitmine blokeerida või mitte.

1. salvesta käsk

Salvestamiskäsu täitmine kliendi poolel käivitab Redise püsimise, kuid muudab Redise ka blokeerimisolekusse. See ei reageeri teiste klientide saadetud käskudele enne, kui RDB on püsinud, seega tuleb seda kasutada ettevaatusega tootmiskeskkond.

127.0.0.1:6379> save
OK
127.0.0.1:6379>

Käsu täitmise protsess on näidatud joonisel 

2. bgsave käsk

  • bgsave (tausta salvestamine) on tausta salvestamine.
  • Suurim erinevus selle ja salvestuskäsu vahel on see, et bgsave loob püsivuse teostamiseks alamprotsessi.
  • Kogu protsess on ainult siis, kui lapsprotsess on kahvel.On vaid lühike ummistus.
  • Pärast alamprotsessi loomist saab Redise põhiprotsess vastata teiste klientide päringutele.

kogu protsessi blokeerimisegasavevõrreldes käsugabgsaveKäsk on meile ilmselt sobivam.

127.0.0.1:6379> bgsave
Background Saving started # 提示开始后台保存 
127.0.0.1:6379>

Käivitage RDB automaatselt

Pärast käsitsi käivitamisest rääkimist vaatame automaatset käivitamist.Konfiguratsioonifailis saame konfigureerida automaatse käivitamise tingimused.

1. säästa mn

  • save mn tähendab, et m sekundi jooksul, kui n klahvi muutuvad, käivitub püsivus automaatselt.Parameetrid m ja n leiate Redise konfiguratsioonifailist.
  • Näiteks 60 1 salvestamine tähendab, et 60 sekundi jooksul, kui üks võti muutub, käivitub RDB püsivus.
  • Automaatselt käivitava püsivuse olemus seisneb selles, et kui seatud päästikutingimused on täidetud, täidab Redis automaatselt käsu bgsave üks kord.

Märkus. Kui on määratud mitu salvestamise mn-käsku, käivitab püsivuse mis tahes tingimus.

Näiteks määrame järgmised kaks save mn käsku:

save 60 10
save 600 20
  • Kui Redis võtme väärtus muutub 60 korda 10 sekundi jooksul, käivitub püsivus;
  • Kui Redise võti muutub 60 sekundi jooksul ja kui väärtus muutub vähem kui 10 korda, teeb Redis kindlaks, kas Redise võtit on 600 sekundi jooksul muudetud vähemalt 20 korda, ja kui jah, siis käivitab püsivuse.

2. Flushall

  • Redise andmebaasi tühjendamiseks kasutatakse käsku flushall.
  • Seda tuleb tootmiskeskkonnas kasutada ettevaatusega.
  • Kui Redis käivitab flushalli käsu, käivitab see automaatse püsivuse ja kustutab RDB-faili.

3. Ülem-alluv sünkroniseerimise päästik

Kui alamsõlm teostab Redise ülem-alluv-replikatsiooni korral täieliku replikatsioonitoimingu, täidab põhisõlm RDB-faili alamsõlme saatmiseks käsu bgsave. See protsess käivitab automaatselt Redise püsivuse.

Redis saab käskude kaudu küsida praeguseid konfiguratsiooniparameetreid.

Päringukäsu vorming on järgmine:config get xxx

Näiteks kui soovite saada RDB-faili salvestusnime sätteid, saate seda kasutada config get dbfilename .

Täitmise efekt on järgmine:

127.0.0.1:6379> config get dbfilename
1) "dbfilename"
2) "dump.rdb"

Kuna Redise server blokeerib RDB-faili laadimise kuni laadimise lõpuni, võib see põhjustada pikka aega ja veebisaidile juurdepääsu ei saa.

Kui soovite Redise RDB vahemälufaili dump.rdb käsitsi kustutada, saate faili dump.rdb salvestustee leidmiseks kasutada järgmist käsku.

find / -name dump.rdb
  • Seejärel kustutage SSH kaudu käsitsi vahemälufail dump.rdb.

Redis määrab RDB konfiguratsiooni

RDB konfiguratsiooni seadistamiseks võite kasutada kahte järgmist võimalust:

  1. Redise konfiguratsioonifaili käsitsi muutmine
  2. Kasutage käsurea sätteid, config set dir "/usr/data" on salvestuskäsk RDB-faili muutmiseks

Märkus. Redis.confi konfiguratsiooni saab hankida käsuga config get xxx ja muuta väärtusega config set xxx ning Redise konfiguratsioonifaili käsitsi muutmise meetod on globaalselt tõhus, see tähendab, et Redise serveri taaskäivitamisel määratud parameetrid ei toimi kaduma, kuid seda on muudetud käsuga , kaob see pärast Redise taaskäivitamist.

Kui aga soovite Redise konfiguratsioonifaili käsitsi muuta, et see jõustuks kohe, peate Redise serveri taaskäivitama ja käsumeetod ei nõua Redise serveri taaskäivitamist.

RDB-failide taastamine

Kui Redise serveri käivitamisel on Redise juurkataloogis RDB-fail dump.rdb, laadib Redis püsivate andmete taastamiseks automaatselt RDB-faili.

Kui juurkataloogis pole faili dump.rdb, teisaldage fail dump.rdb esmalt Redise juurkataloogi.

Muidugi on Redise käivitumisel logiteave, mis näitab, kas RDB-fail on laaditud.

Redise server blokeerib RDB-faili laadimise ajal, kuni laadimine on lõppenud.

Nüüd teame, et RDB püsivus jaguneb kaheks: käsitsi käivitamine ja automaatne käivitamine:

  1. Selle eeliseks on see, et salvestusfail on väike ja andmete taastamine Redise käivitamisel kiirem.
  2. Negatiivne külg on andmete kadumise oht.

RDB-failide taastamine on samuti väga lihtne. Lihtsalt pange RDB-failid Redise juurkataloogi ja Redis laadib ja taastab käivitumisel andmed automaatselt.

RDB plussid ja miinused

1) RDB eelised

RDB sisu on binaarandmed, mis võtab vähem mälu, on kompaktsem ja sobib paremini varukoopiafailiks;

RDB on avariitaastes väga kasulik, see on tihendatud fail, mida saab Redise teenuse taastamiseks kiiremini kaugserverisse üle kanda;

RDB võib Redise kiirust oluliselt parandada, kuna Redise põhiprotsess sunnib alamprotsessi andmeid kettale säilitama.

Redise põhiprotsess ei teosta selliseid toiminguid nagu ketta I/O;

Võrreldes AOF-vormingus failidega taaskäivituvad RDB-failid kiiremini.

2) RDB puudused

Kuna RDB saab andmeid salvestada ainult teatud ajaintervalli järel, siis kui Redise teenus kogemata katkestatakse keskel, lähevad Redise andmed teatud perioodiks kaotsi;

Protsess, mille käigus RDB nõuab sagedasi kahvleid, et see alamsõna abil kettale salvestada.

Kui andmestik on suur, võib kahvel olla aeganõudev ja kui andmekogum on suur, on protsessori jõudlus halb, mis võib põhjustada selle, et Redis ei saa kliente mõne millisekundi või isegi sekundi jooksul teenindada.

Muidugi saame ka püsivuse keelata, et Redise täitmistõhusust parandada.

Kui te pole andmete kadumise suhtes tundlik, saate seda teha kliendi ühenduse loomisel config set save "" Redise püsivuse keelamiseks käsk.

redis.conf, kui sissesaveKommenteerige alguses kõik konfiguratsioonid ja ka püsivus keelatakse, kuid üldiselt seda ei tehta.

Hope Chen Weiliangi ajaveeb ( https://www.chenweiliang.com/ ) jagatud "Mis on Redis RDB täisnimi? Redis RDB mälusiseste andmete püsivuse töörežiim", aitab teid.

Tere tulemast selle artikli linki jagama:https://www.chenweiliang.com/cwl-26677.html

Tere tulemast Chen Weiliangi ajaveebi Telegrami kanalile, et saada uusimaid värskendusi!

🔔 Olge esimene, kes saab kanali ülemises kataloogis väärtusliku "ChatGPT sisuturunduse AI tööriista kasutamise juhendi"! 🌟
📚 See juhend sisaldab tohutut väärtust, 🌟See on harukordne võimalus, ärge jätke seda kasutamata! ⏰⌛💨
Jaga ja like kui meeldib!
Teie jagamine ja meeldimised on meie pidev motivatsioon!

 

发表 评论

Teie e-posti aadressi ei avaldata. Kasutatakse kohustuslikke välju * Silt

kerige üles