Cili është emri i plotë i Redis RDB? Redis RDB modaliteti i funksionimit të qëndrueshmërisë së të dhënave të memories

Emri i plotë i RDB ështëRedis database.

  • Siç sugjeron emri, RDB është një bazë të dhënash Redis që përdoret për të ruajtur të dhënat.
  • Prandaj, përmes qëndrueshmërisë RDB, të dhënat e ruajtura në memorien Redis shkruhen në skedarin RDB dhe ruhen në disk për të arritur qëndrueshmëri.
  • Karakteristika e Redis është se ai mund të ruajë të dhënat, domethënë të shkruajë të dhëna në memorie në disk për të siguruar që të mos humbasin të dhëna, dhe gjithashtu mund të ngarkojë të dhëna nga disku në memorie.

Cili është emri i plotë i Redis RDB? Redis RDB modaliteti i funksionimit të qëndrueshmërisë së të dhënave të memories

Operacionet e Redis në fillim bazohen të gjitha në memorie, kështu që performanca është shumë e lartë, por pasi programi mbyllet, të dhënat humbasin.

Prandaj, ne duhet të shkruajmë të dhëna në memorie në disk në intervale të caktuara, që është Snapshot në zhargon.

Gjatë rivendosjes, skedari i fotografisë shkruhet drejtpërdrejt në memorie.

Ky është gjithashtu një nga ndryshimet kryesore midis Redis dhe Memcached, sepse Memcached nuk ka aftësi të qëndrueshme.

Për qëndrueshmërinë e të dhënave të kujtesës Redis, Redis na ofron metodat e mëposhtme:

  • Metoda Snapshot (RDB, Redis DataBase): shkruani të dhënat e kujtesës në disk në formë binare në një moment të caktuar;
  • Add Only File (AOF, Append Only File), regjistroni të gjitha komandat e funksionimit dhe shtojini skedarit në formë teksti;
  • Persistenca hibride, një metodë e re pas Redis 4.0, qëndrueshmëria hibride kombinon avantazhet e RDB dhe AOF.Kur shkruani, së pari shkruani të dhënat aktuale në fillim të skedarit në formën e RDB, dhe më pas ruani komandat e mëvonshme të funksionimit në skedar në formën e AOF, i cili jo vetëm që mund të sigurojë shpejtësinë e rifillimit të Redis, por edhe të zvogëlojë. rreziku i humbjes së të dhënave.

Sepse çdo skemë e qëndrueshme ka skenarë specifikë përdorimi.

Redis RDB modaliteti i funksionimit të qëndrueshmërisë së të dhënave të memories

  • RDB (Redis DataBase) është procesi i shkrimit të një fotografie të memories (Snapshot) në një moment të caktuar në disk në formë binare.
  • Fotot e memories janë ato që thamë më sipër.Ai i referohet regjistrimit të gjendjes së të dhënave në memorie në një moment të caktuar.
  • Kjo është e ngjashme me nxjerrjen e një fotoje. Kur bëni një foto të një shoku, një foto mund të regjistrojë menjëherë të gjitha imazhet e mikut.
  • Ka dy mënyra për të aktivizuar RDB: njëra është ndezja manuale dhe tjetra është ndezja automatike.

Aktivizoni manualisht RDB

Ekzistojnë dy operacione për të aktivizuar manualisht qëndrueshmërinë:savebgsave.

Dallimi kryesor midis tyre është nëse duhet të bllokohet ose jo ekzekutimi i fillit kryesor Redis.

1. komanda ruaj

Ekzekutimi i komandës save në anën e klientit do të shkaktojë qëndrueshmërinë e Redis, por gjithashtu do ta bëjë Redis në një gjendje bllokimi. Ai nuk do t'u përgjigjet komandave të dërguara nga klientët e tjerë derisa RDB të vazhdojë, kështu që duhet përdorur me kujdes në mjedisin e prodhimit.

127.0.0.1:6379> save
OK
127.0.0.1:6379>

Procesi i ekzekutimit të komandës është paraqitur në figurë 

2. komanda bgsave

  • bgsave (ruajtja në sfond) është një kursim në sfond.
  • Dallimi më i madh midis tij dhe komandës save është se bgsave do të forcojë një proces fëmijësh për të kryer qëndrueshmërinë.
  • I gjithë procesi ndodh vetëm kur procesi i fëmijës është pirun.Ka vetëm një bllokim të shkurtër.
  • Pasi të krijohet procesi i fëmijës, procesi kryesor i Redis mund t'u përgjigjet kërkesave të klientëve të tjerë.

me bllokimin e të gjithë procesitsavekrahasuar me komandënbgsaveKomanda është padyshim më e përshtatshme për ne për t'u përdorur.

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

Aktivizoni automatikisht RDB

Pasi të flasim për ndezjen manuale, le të shohim ndezjen automatike.Ne mund të konfigurojmë kushtet për aktivizimin automatik në skedarin e konfigurimit.

1. ruaj mn

  • ruaj mn do të thotë që brenda m sekondave, nëse n çelësat ndryshojnë, këmbëngulja aktivizohet automatikisht.Parametrat m dhe n mund të gjenden në skedarin e konfigurimit Redis.
  • Për shembull, ruaj 60 1 do të thotë që brenda 60 sekondave, për sa kohë që një çelës ndryshon, do të aktivizohet qëndrueshmëria RDB.
  • Thelbi i aktivizimit automatik të qëndrueshmërisë është se nëse plotësohen kushtet e vendosura të aktivizimit, Redis do të ekzekutojë automatikisht komandën bgsave një herë.

Shënim: Kur vendosen komandat e shumta të ruajtjes mn, çdo kusht do të shkaktojë qëndrueshmëri.

Për shembull, ne vendosëm dy komandat e mëposhtme save mn:

save 60 10
save 600 20
  • Kur vlera e çelësit Redis ndryshon 60 herë brenda 10-ve, do të aktivizohet qëndrueshmëria;
  • Nëse çelësi Redis ndryshon brenda 60 sekondave dhe nëse vlera ndryshon më pak se 10 herë, Redis do të përcaktojë nëse çelësi Redis është modifikuar të paktën 600 herë brenda 20 sekondave dhe nëse po, do të aktivizojë qëndrueshmërinë.

2. Flushall

  • Komanda flushall përdoret për të pastruar bazën e të dhënave Redis.
  • Duhet të përdoret me kujdes në një mjedis prodhimi.
  • Kur Redis ekzekuton komandën flushall, ai aktivizon qëndrueshmërinë automatike dhe pastron skedarët RDB.

3. Aktivizimi i sinkronizimit master-skllav

Në replikimin master-slave Redis, kur nyja skllave kryen një operacion të riprodhimit të plotë, nyja kryesore do të ekzekutojë komandën bgsave për të dërguar skedarin RDB në nyjen skllav.Ky proces aktivizon automatikisht qëndrueshmërinë Redis.

Redis mund të kërkojë parametrat aktualë të konfigurimit përmes komandave.

Formati i komandës së pyetjes është:config get xxx

Për shembull, nëse dëshironi të merrni cilësimin e emrit të ruajtjes së një skedari RDB, mund të përdorni config get dbfilename .

Efekti i ekzekutimit është si më poshtë:

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

Meqenëse serveri Redis do të bllokojë kur ngarkon skedarin RDB derisa ngarkimi të përfundojë, mund të shkaktojë një kohë të gjatë dhe faqja e internetit nuk mund të aksesohet.

Nëse dëshironi të fshini manualisht skedarin e memories RDB dump.rdb të Redis, mund të përdorni komandën e mëposhtme për të gjetur shtegun e ruajtjes së skedarit dump.rdb▼

find / -name dump.rdb
  • Më pas, fshini manualisht skedarin e memories dump.rdb nëpërmjet SSH.

Redis vendos konfigurimin e RDB

Për sa i përket vendosjes së konfigurimit të RDB, mund të përdorni dy mënyrat e mëposhtme:

  1. Ndryshoni manualisht skedarin e konfigurimit Redis
  2. Përdorni cilësimet e linjës së komandës, set konfigurimi dir "/usr/data" është komanda e ruajtjes për të modifikuar skedarin RDB

Shënim: Konfigurimi në redis.conf mund të merret përmes konfigurimit get xxx dhe të modifikohet përmes vlerës së setit të konfigurimit xxx, dhe metoda e modifikimit manual të skedarit të konfigurimit Redis është globalisht efektive, domethënë, parametrat e vendosur nga rinisja e serverit Redis nuk do të të humbet, por të modifikohet duke përdorur komandën , do të humbet pasi të riniset Redis.

Megjithatë, nëse dëshironi të modifikoni manualisht skedarin e konfigurimit Redis që të hyjë në fuqi menjëherë, duhet të rinisni serverin Redis dhe metoda e komandës nuk kërkon rinisjen e serverit Redis.

Rikuperimi i skedarit RDB

Kur fillon serveri Redis, nëse skedari RDB dump.rdb ekziston në direktorinë rrënjë Redis, Redis do të ngarkojë automatikisht skedarin RDB për të rivendosur të dhënat e vazhdueshme.

Nëse nuk ka skedar dump.rdb në direktorinë rrënjë, ju lutemi zhvendoseni skedarin dump.rdb në direktorinë rrënjë të Redis.

Sigurisht, ka informacion log kur fillon Redis, i cili do të tregojë nëse skedari RDB është i ngarkuar.

Serveri Redis bllokon gjatë ngarkimit të skedarit RDB derisa ngarkimi të përfundojë.

Tani e dimë se qëndrueshmëria RDB ndahet në dy mënyra: ndezja manuale dhe ndezja automatike:

  1. Avantazhi i tij është se skedari i ruajtjes është i vogël dhe rikuperimi i të dhënave është më i shpejtë kur fillon Redis.
  2. Ana negative është se ekziston rreziku i humbjes së të dhënave.

Rikuperimi i skedarëve RDB është gjithashtu shumë i thjeshtë. Thjesht vendosni skedarët RDB në direktorinë rrënjësore të Redis dhe Redis do të ngarkojë dhe rivendosë automatikisht të dhënat kur të fillojë.

Të mirat dhe të këqijat e RDB

1) Përparësitë e RDB

Përmbajtja RDB është e dhëna binare, zë më pak memorie, është më kompakte dhe është më e përshtatshme si skedar rezervë;

RDB është shumë i dobishëm për rikuperimin nga fatkeqësitë, është një skedar i ngjeshur që mund të transferohet në një server në distancë më shpejt për rikuperimin e shërbimit Redis;

RDB mund të përmirësojë në masë të madhe shpejtësinë e Redis, sepse procesi kryesor Redis do të detyrojë një proces fëmijësh për të vazhduar të dhënat në disk.

Procesi kryesor Redis nuk kryen operacione të tilla si I/O e diskut;

Krahasuar me skedarët e formatit AOF, skedarët RDB rinisin më shpejt.

2) Disavantazhet e RDB

Për shkak se RDB mund të ruajë të dhëna vetëm në një interval të caktuar kohor, nëse shërbimi Redis përfundon aksidentalisht në mes, të dhënat Redis do të humbasin për një periudhë kohore;

Një proces në të cilin RDB kërkon forks të shpeshtë për ta ruajtur atë në disk duke përdorur nënhyrje.

Nëse grupi i të dhënave është i madh, fork mund të marrë kohë, dhe nëse grupi i të dhënave është i madh, performanca e CPU-së është e dobët, gjë që mund të bëjë që Redis të mos jetë në gjendje t'u shërbejë klientëve për disa milisekonda apo edhe një sekondë.

Sigurisht, ne gjithashtu mund të çaktivizojmë këmbënguljen për të përmirësuar efikasitetin e ekzekutimit të Redis.

Nëse nuk jeni të ndjeshëm ndaj humbjes së të dhënave, mund ta bëni këtë kur klienti të lidhet config set save "" Komanda për të çaktivizuar qëndrueshmërinë për Redis.

redis.conf, nëse nësaveKomentoni të gjitha konfigurimet në fillim dhe këmbëngulja gjithashtu do të çaktivizohet, por kjo në përgjithësi nuk bëhet.

Blogu Hope Chen Weiliang ( https://www.chenweiliang.com/ ) shared "Cili është emri i plotë i Redis RDB? Redis RDB In-Memory Operation Persistence Mode", do t'ju ndihmojë.

Mirë se vini të shpërndani lidhjen e këtij artikulli:https://www.chenweiliang.com/cwl-26677.html

Mirësevini në kanalin Telegram të blogut të Chen Weiliang për të marrë përditësimet më të fundit!

🔔 Bëhu i pari që merr "Udhëzuesin e përdorimit të mjeteve të marketingut të përmbajtjes AI" me vlerë "ChatGPT Content Marketing AI" në drejtorinë kryesore të kanalit! 🌟
📚 Ky udhëzues përmban vlera të mëdha, 🌟Ky është një mundësi e rrallë, mos e humbisni! ⏰⌛💨
Shpërndaje dhe like nëse të pëlqen!
Ndarjet dhe pëlqimet tuaja janë motivimi ynë i vazhdueshëm!

 

发表 评论

Adresa juaj e emailit nuk do të publikohet. Përdoren fushat e kërkuara * Etiketa

lëvizni në krye