Beth yw enw llawn Redis RDB? Modd gweithredu dyfalbarhad data cof Redis RDB

Enw llawn RDB ywRedis database.

  • Fel y mae'r enw'n awgrymu, cronfa ddata Redis yw RDB a ddefnyddir i storio data.
  • Felly, trwy ddyfalbarhad RDB, mae'r data a storir yn y cof Redis yn cael ei ysgrifennu i'r ffeil RDB a'i gadw ar y ddisg i sicrhau dyfalbarhad.
  • Nodwedd Redis yw y gall barhau â data, hynny yw, ysgrifennu data yn y cof i ddisg i sicrhau nad oes unrhyw ddata yn cael ei golli, a gall hefyd lwytho data o ddisg i'r cof.

Beth yw enw llawn Redis RDB? Modd gweithredu dyfalbarhad data cof Redis RDB

Mae gweithrediadau Redis ar y dechrau i gyd yn seiliedig ar gof, felly mae'r perfformiad yn uchel iawn, ond unwaith y bydd y rhaglen ar gau, mae'r data'n cael ei golli.

Felly, mae angen i ni ysgrifennu data cof ar ddisg ar adegau penodol, sef Ciplun mewn jargon.

Wrth adfer, ysgrifennir y ffeil ciplun yn uniongyrchol i'r cof.

Mae hwn hefyd yn un o'r prif wahaniaethau rhwng Redis a Memcached, oherwydd nid oes gan Memcached allu dyfalbarhad.

Ar gyfer dyfalbarhad data cof Redis, mae Redis yn darparu'r dulliau canlynol i ni:

  • Dull Ciplun (RDB, Cronfa Ddata Redis): ysgrifennu data cof i ddisg ar ffurf ddeuaidd ar adeg benodol;
  • Atodi Ffeil yn Unig (AOF, Atodi Ffeil yn Unig), cofnodwch yr holl orchmynion gweithredu, ac atodi i'r ffeil ar ffurf testun;
  • Mae dyfalbarhad hybrid, dull newydd ar ôl Redis 4.0, dyfalbarhad hybrid yn cyfuno manteision RDB ac AOF.Wrth ysgrifennu, ysgrifennwch y data cyfredol yn gyntaf i ddechrau'r ffeil ar ffurf RDB, ac yna arbedwch y gorchmynion gweithredu dilynol i'r ffeil ar ffurf AOF, a all nid yn unig sicrhau cyflymder ailgychwyn Redis, ond hefyd yn lleihau y risg o golli data.

Oherwydd bod gan bob cynllun dyfalbarhad senarios defnydd penodol.

Modd gweithredu dyfalbarhad data cof Redis RDB

  • RDB (Cronfa Ddata Redis) yw'r broses o ysgrifennu ciplun cof (Ciplun) ar adeg benodol i ddisg ar ffurf ddeuaidd.
  • Cipluniau cof yw'r hyn a ddywedasom uchod.Mae'n cyfeirio at gofnod cyflwr data yn y cof ar adeg benodol.
  • Mae hyn yn debyg i dynnu llun.Pan fyddwch chi'n tynnu llun o ffrind, gall llun gofnodi'r holl ddelweddau o'r ffrind ar unwaith.
  • Mae dwy ffordd i sbarduno RDB: mae un yn sbarduno â llaw, a'r llall yn sbarduno awtomatig.

Sbardunwch yr RDB â llaw

Mae dwy lawdriniaeth i sbarduno dyfalbarhad â llaw:savebgsave.

Y prif wahaniaeth rhyngddynt yw a ddylid rhwystro gweithrediad prif edefyn Redis ai peidio.

1. arbed Gorchymyn

Bydd gweithredu'r gorchymyn arbed ar ochr y cleient yn sbarduno dyfalbarhad Redis, ond bydd hefyd yn gwneud Redis mewn cyflwr blocio. Ni fydd yn ymateb i orchmynion a anfonir gan gleientiaid eraill nes bod yr RDB yn parhau, felly rhaid ei ddefnyddio'n ofalus yn yr amgylchedd cynhyrchu.

127.0.0.1:6379> save
OK
127.0.0.1:6379>

Dangosir y broses o weithredu'r gorchymyn yn y ffigur 

2. gorchymyn bgsave

  • Arbed cefndir yw bgsave (arbed cefndir).
  • Y gwahaniaeth mwyaf rhyngddo a'r gorchymyn arbed yw y bydd bgsave yn fforchio proses plentyn i berfformio dyfalbarhad.
  • Mae'r broses gyfan dim ond pan fydd y broses plentyn yn fforc.Dim ond rhwystr byr sydd.
  • Ar ôl i'r broses plentyn gael ei chreu, gall prif broses Redis ymateb i geisiadau gan gleientiaid eraill.

gyda rhwystro'r broses gyfansaveo'i gymharu â'r gorchymynbgsaveMae gorchymyn yn amlwg yn fwy addas i ni ei ddefnyddio.

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

Sbardun RDB yn awtomatig

Ar ôl siarad am sbarduno â llaw, gadewch i ni edrych ar sbarduno awtomatig.Gallwn ffurfweddu'r amodau ar gyfer sbarduno awtomatig yn y ffeil ffurfweddu.

1. achub mn

  • mae arbed mn yn golygu, o fewn m eiliad, os bydd bysellau n yn newid, mae dyfalbarhad yn cael ei sbarduno'n awtomatig.Gellir dod o hyd i baramedrau m ac n yn y ffeil ffurfweddu Redis.
  • Er enghraifft, arbed 60 1 yn golygu bod o fewn 60 eiliad, cyn belled â bod un newidiadau allweddol, bydd dyfalbarhad RDB yn cael ei sbarduno.
  • Hanfod dyfalbarhad sbarduno'n awtomatig yw, os bodlonir yr amodau sbarduno gosodedig, bydd Redis yn gweithredu'r gorchymyn bgsave unwaith yn awtomatig.

Nodyn: Pan osodir gorchmynion mn arbed lluosog, bydd unrhyw un amod yn sbarduno dyfalbarhad.

Er enghraifft, rydym yn gosod y ddau orchymyn arbed mn canlynol:

save 60 10
save 600 20
  • Pan fydd gwerth allweddol Redis yn newid 60 gwaith o fewn 10au, bydd dyfalbarhad yn cael ei sbarduno;
  • Os yw'r allwedd Redis yn newid o fewn 60au, ac os yw'r gwerth yn newid llai na 10 gwaith, bydd Redis yn penderfynu a yw'r allwedd Redis wedi'i haddasu o leiaf 600 gwaith o fewn 20au, ac os felly, ysgogi dyfalbarhad.

2. Flushall

  • Defnyddir y gorchymyn flushall i fflysio cronfa ddata Redis.
  • Rhaid ei ddefnyddio'n ofalus mewn amgylchedd cynhyrchu.
  • Pan fydd Redis yn gweithredu'r gorchymyn flushall, mae'n sbarduno dyfalbarhad awtomatig ac yn clirio'r ffeil RDB.

3. Meistr-gaethweision synchronization sbardun

Mewn dyblygu Redis meistr-gaethwas, pan fydd y nod caethweision yn cyflawni gweithrediad atgynhyrchu llawn, bydd y prif nod yn gweithredu'r gorchymyn bgsave i anfon y ffeil RDB i'r nod caethweision.Mae'r broses hon yn sbarduno dyfalbarhad Redis yn awtomatig.

Gall Redis gwestiynu'r paramedrau cyfluniad cyfredol trwy orchmynion.

Fformat y gorchymyn ymholiad yw:config get xxx

Er enghraifft, os ydych chi am gael gosodiad enw storio ffeil RDB, gallwch chi ei ddefnyddio config get dbfilename .

Mae'r effaith gweithredu fel a ganlyn:

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

Gan y bydd y gweinydd Redis yn rhwystro wrth lwytho'r ffeil RDB nes bod y llwytho wedi'i gwblhau, gall achosi amser hir ac ni ellir cyrchu'r wefan.

Os ydych chi am ddileu ffeil storfa RDB dump.rdb o Redis â llaw, gallwch ddefnyddio'r gorchymyn canlynol i ddod o hyd i lwybr storio'r ffeil dump.rdb▼

find / -name dump.rdb
  • Yna, dileu'r ffeil storfa dump.rdb â llaw trwy SSH.

Mae Redis yn gosod cyfluniad RDB

O ran gosod cyfluniad RDB, gallwch ddefnyddio'r ddwy ffordd ganlynol:

  1. Addaswch ffeil ffurfweddu Redis â llaw
  2. Defnyddiwch y gosodiadau llinell orchymyn, config set dir "/ usr/data" yw'r gorchymyn storio i addasu'r ffeil RDB

Nodyn: Gellir cael y ffurfweddiad yn redis.conf trwy config get xxx a'i addasu trwy config set xxx value, ac mae'r dull o addasu ffeil cyfluniad Redis â llaw yn effeithiol yn fyd-eang, hynny yw, ni fydd y paramedrau a osodwyd gan ailgychwyn y gweinydd Redis cael ei golli, ond ei addasu gan ddefnyddio'r gorchymyn, bydd yn cael ei golli ar ôl i Redis ailgychwyn.

Fodd bynnag, os ydych chi am addasu ffeil cyfluniad Redis â llaw i ddod i rym ar unwaith, mae angen i chi ailgychwyn y gweinydd Redis, ac nid oes angen ailgychwyn gweinydd Redis ar y dull gorchymyn.

Adfer ffeil RDB

Pan fydd y gweinydd Redis yn cychwyn, os yw'r ffeil RDB dump.rdb yn bodoli yn y cyfeiriadur gwraidd Redis, bydd Redis yn llwytho'r ffeil RDB yn awtomatig i adfer data parhaus.

Os nad oes ffeil dump.rdb yn y cyfeiriadur gwraidd, symudwch y ffeil dump.rdb i gyfeiriadur gwraidd Redis.

Wrth gwrs, mae gwybodaeth log pan fydd Redis yn dechrau, a fydd yn dangos a yw'r ffeil RDB yn cael ei lwytho.

Mae'r gweinydd Redis yn blocio wrth lwytho'r ffeil RDB nes bod y llwytho wedi'i gwblhau.

Nawr rydym yn gwybod bod dyfalbarhad RDB wedi'i rannu'n ddwy ffordd: sbarduno â llaw a sbarduno awtomatig:

  1. Ei fantais yw bod y ffeil storio yn fach ac mae adfer data yn gyflymach pan ddechreuir Redis.
  2. Yr anfantais yw bod perygl o golli data.

Mae adfer ffeiliau RDB hefyd yn syml iawn, rhowch y ffeiliau RDB yn y cyfeiriadur gwraidd o Redis, a bydd Redis yn llwytho ac adfer data yn awtomatig pan fydd yn dechrau.

Manteision ac anfanteision RDB

1) manteision RDB

Mae cynnwys RDB yn ddata deuaidd, yn meddiannu llai o gof, yn fwy cryno, ac yn fwy addas fel ffeil wrth gefn;

Mae RDB yn ddefnyddiol iawn ar gyfer adferiad trychineb, mae'n ffeil cywasgedig y gellir ei drosglwyddo i weinydd pell yn gyflymach ar gyfer adferiad gwasanaeth Redis;

Gall RDB wella cyflymder Redis yn fawr, oherwydd bydd y brif broses Redis yn fforchio proses plentyn i barhau â data i ddisg.

Nid yw prif broses Redis yn cyflawni gweithrediadau fel disg I/O;

O'i gymharu â ffeiliau fformat AOF, mae ffeiliau RDB yn ailgychwyn yn gyflymach.

2) Anfanteision RDB

Oherwydd mai dim ond ar gyfnod penodol y gall RDB arbed data, os bydd y gwasanaeth Redis yn cael ei derfynu'n ddamweiniol yn y canol, bydd y data Redis yn cael ei golli am gyfnod o amser;

Proses lle mae angen ffyrch aml ar RDB i'w gadw ar ddisg gan ddefnyddio subentry.

Os yw'r set ddata yn fawr, gall fforc gymryd llawer o amser, ac os yw'r set ddata'n fawr, mae perfformiad y CPU yn wael, a all achosi i Redis fethu â gwasanaethu cleientiaid am ychydig milieiliadau neu hyd yn oed eiliad.

Wrth gwrs, gallwn hefyd analluogi dyfalbarhad i wella effeithlonrwydd gweithredu Redis.

Os nad ydych yn sensitif i golli data, gallwch wneud hyn pan fydd y cleient yn cysylltu config set save "" Gorchymyn i analluogi dyfalbarhad ar gyfer Redis.

redis.conf, os mewnsaveRhowch sylwadau ar bob ffurfweddiad ar y dechrau, a bydd dyfalbarhad hefyd yn anabl, ond ni wneir hyn yn gyffredinol.

Blog Chen Weiliang Gobeithio ( https://www.chenweiliang.com/ ) shared "Beth yw enw llawn Redis RDB? Modd Gweithredu Dyfalbarhad Data Mewn-Cof Redis RDB, a fydd yn eich helpu chi.

Croeso i chi rannu dolen yr erthygl hon:https://www.chenweiliang.com/cwl-26677.html

Croeso i sianel Telegram o blog Chen Weiliang i gael y diweddariadau diweddaraf!

🔔 Byddwch y cyntaf i gael y "Canllaw Defnydd Offer AI Marchnata Cynnwys ChatGPT" gwerthfawr yng nghyfeiriadur uchaf y sianel! 🌟
📚 Mae'r canllaw hwn yn cynnwys gwerth enfawr, 🌟Mae hwn yn gyfle prin, peidiwch â'i golli! ⏰⌛💨
Rhannwch a hoffwch os hoffech chi!
Eich rhannu a'ch hoff bethau yw ein cymhelliant parhaus!

 

发表 评论

Ni fydd eich cyfeiriad e-bost yn cael ei gyhoeddi. 必填 项 已 用 * Label

sgroliwch i'r brig