د Redis RDB بشپړ نوم څه دی؟ د Redis RDB حافظې ډیټا د دوام عملیات حالت

د RDB بشپړ نوم دیRedis database.

  • لکه څنګه چې نوم وړاندیز کوي، RDB د Redis ډیټابیس دی چې د معلوماتو ذخیره کولو لپاره کارول کیږي.
  • له همدې امله، د RDB دوام له لارې، د Redis په حافظه کې زیرمه شوي ډاټا د RDB فایل ته لیکل کیږي او ډیسک ته خوندي کیږي ترڅو دوام ومومي.
  • د ریډیس ځانګړتیا دا ده چې دا کولی شي ډیټا ته دوام ورکړي ، دا دی چې ډیسک ته په حافظه کې ډیټا ولیکي ترڅو ډاډ ترلاسه شي چې هیڅ ډیټا له لاسه نه ورکوي ، او کولی شي ډیسک څخه حافظې ته ډیټا پورته کړي.

د Redis RDB بشپړ نوم څه دی؟ د Redis RDB حافظې ډیټا د دوام عملیات حالت

په پیل کې د ریډیس عملیات ټول د حافظې پراساس دي ، نو فعالیت خورا لوړ دی ، مګر یوځل چې برنامه بنده شي ، ډاټا له لاسه ورکوي.

له همدې امله، موږ اړتیا لرو چې د حافظې دننه ډیټا په مشخصو وقفو کې ډیسک ته ولیکو، کوم چې په جرګون کې سنیپ شاټ دی.

کله چې بیا رغول کیږي، د سنیپ شاټ فایل مستقیم حافظې ته لیکل کیږي.

دا د Redis او Memcached ترمنځ یو له اصلي توپیرونو څخه هم دی، ځکه چې Memcached د دوام وړتیا نلري.

د ریډیس حافظې ډیټا دوام لپاره ، ریډیس موږ ته لاندې میتودونه چمتو کوي:

  • د سنیپ شاټ طریقه (RDB، Redis Database): په یوه ټاکلې شیبه کې د بائنری بڼه ډیسک ته د حافظې ډاټا ولیکئ؛
  • یوازې فایل ضمیمه کړئ (AOF، یوازې فایل ضمیمه کړئ)، د عملیاتو ټول حکمونه ثبت کړئ، او د متن په بڼه فایل ته ضمیمه کړئ؛
  • هایبرډ استقامت، د Redis 4.0 وروسته یو نوی میتود، هایبرډ دوام د RDB او AOF ګټې سره یوځای کوي.کله چې لیکل کیږي، لومړی اوسنی ډاټا د RDB په بڼه د فایل په پیل کې ولیکئ، او بیا وروسته د عملیاتو کمانډونه د AOF په بڼه فایل ته خوندي کړئ، کوم چې نه یوازې د ریډیس بیا پیل کولو سرعت ډاډمن کولی شي، بلکې کموي. د معلوماتو له لاسه ورکولو خطر

ځکه چې هر دوام سکیم د کارونې ځانګړي سناریوګانې لري.

د Redis RDB حافظې ډیټا د دوام عملیات حالت

  • RDB (ریډیس ډیټابیس) د حافظې سنیپ شاټ (سنیپ شاټ) لیکلو پروسه ده چې په یوه ټاکلې شیبه کې ډیسک ته په بائنری شکل کې لیږدول کیږي.
  • د حافظې عکسونه هغه څه دي چې موږ پورته وویل.دا په یوه ټاکلې شیبه کې په حافظه کې د معلوماتو دولتي ریکارډ ته اشاره کوي.
  • دا د عکس اخیستلو سره ورته دی، کله چې تاسو د یو ملګري عکس اخلئ، یو عکس کولی شي سمدستي د ملګري ټول انځورونه ثبت کړي.
  • د RDB محرک کولو لپاره دوه لارې شتون لري: یو یې لاسي محرک دی، او بل یې اتوماتیک محرک دی.

په لاسي ډول RDB چالان کړئ

په لاسي ډول د دوام لپاره دوه عملیات شتون لري:savebgsave.

د دوی تر مینځ اصلي توپیر دا دی چې ایا د ریډیس اصلي تار اجرا کول بند کړي یا نه.

1. کمانډ خوندي کړئ

د پیرودونکي اړخ کې د خوندي کولو کمانډ اجرا کول به د ریډیس دوام رامینځته کړي ، مګر دا به ریډیس په بلاک کولو حالت کې هم رامینځته کړي. دا به د نورو پیرودونکو لخوا لیږل شوي امرونو ته ځواب ونه وايي تر هغه چې RDB دوام ومومي ، نو دا باید په احتیاط سره وکارول شي. د تولید چاپیریال.

127.0.0.1:6379> save
OK
127.0.0.1:6379>

د کمانډ اجرا کولو پروسه په انځور کې ښودل شوې 

2. bgsave کمانډ

  • bgsave (د شاليد خوندي کول) د شاليد خوندي کول دي.
  • د دې او د خوندي کولو کمانډ تر مینځ ترټولو لوی توپیر دا دی چې bgsave به د دوام ترسره کولو لپاره د ماشوم پروسې ته مخه کړي.
  • ټوله پروسه یوازې هغه وخت پیښیږي کله چې د ماشوم پروسه فورک وي.یوازې یو لنډ خنډ شتون لري.
  • د ماشوم پروسې رامینځته کیدو وروسته ، د ریډیس اصلي پروسه کولی شي د نورو پیرودونکو غوښتنو ته ځواب ووایی.

د ټولې پروسې بندولو سرهsaveد قوماندې په پرتلهbgsaveکمانډ په ښکاره ډول زموږ د کارولو لپاره خورا مناسب دی.

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

په اتوماتيک ډول RDB چالان کړئ

د لاسي محرک په اړه د خبرو کولو وروسته، راځئ چې اتوماتیک محرک وګورو.موږ کولی شو د ترتیب کولو فایل کې د اتوماتیک محرک لپاره شرایط تنظیم کړو.

1. mn خوندي کړئ

  • د mn خوندي کول پدې معنی دي چې په m ثانیو کې ، که د n کیلي بدل شي ، دوام په اوتومات ډول پیل کیږي.پیرامیټونه m او n د Redis ترتیب کولو فایل کې موندل کیدی شي.
  • د مثال په توګه، د 60 1 خوندي کول پدې مانا ده چې په 60 ثانیو کې، تر هغه چې یو کلیدي بدلون ومومي، د RDB دوام به پیل شي.
  • په اتوماتيک ډول د دوام پیدا کولو جوهر دا دی چې که د تنظیم شوي محرک شرایط پوره شي، ریډیس به په اتوماتيک ډول د bgsave کمانډ یوځل اجرا کړي.

یادونه: کله چې ډیری سیف mn کمانډونه تنظیم شي ، هر یو حالت به دوام رامینځته کړي.

د مثال په توګه، موږ لاندې دوه سیف mn کمانډونه تنظیم کړل:

save 60 10
save 600 20
  • کله چې د Redis کلیدي ارزښت په 60s کې 10 ځله بدل شي، دوام به پیل شي.
  • که چیرې د Redis کیلي په 60s کې بدلون ومومي، او که ارزښت له 10 څخه کم وخت بدل شي، Redis به معلومه کړي چې آیا د Redis کلید لږترلږه 600 ځله په 20s کې تعدیل شوی، او که داسې وي، دوام پیدا کوي.

2. فلشول

  • د فلش کمانډ د ریډیس ډیټابیس فلش کولو لپاره کارول کیږي.
  • دا باید د تولید چاپیریال کې د احتیاط سره وکارول شي.
  • کله چې ریډیس د فلش کمانډ اجرا کوي، دا اتوماتیک دوام هڅوي او د RDB فایلونه پاکوي.

3. د ماسټر غلام همغږي محرک

د Redis master-slave په نقل کې، کله چې د غلام نوډ د بشپړ نقل کولو عملیات ترسره کوي، ماسټر نوډ به د bgsave کمانډ اجرا کړي ترڅو د RDB فایل غلام نوډ ته واستوي. دا پروسه په اتوماتيک ډول د Redis دوام هڅوي.

ریډیس کولی شي د کمانډونو له لارې د اوسني ترتیب کولو پیرامیټونو پوښتنه وکړي.

د پوښتنې کمانډ بڼه دا ده:config get xxx

د مثال په توګه ، که تاسو غواړئ د RDB فایل ذخیره کولو نوم ترتیب ترلاسه کړئ ، تاسو یې کارولی شئ config get dbfilename .

د اعدام اغیزه په لاندې ډول ده:

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

څرنګه چې د ریډیس سرور به د RDB فایل پورته کولو په وخت کې بند کړي تر هغه چې بار بشپړ نشي، دا ممکن د اوږدې مودې لامل شي او ویب پاڼې ته لاسرسی نشي کولی.

که تاسو غواړئ د Redis د RDB کیچ فایل په لاسي ډول حذف کړئ dump.rdb، تاسو کولی شئ د dump.rdb فایل ذخیره کولو لاره موندلو لپاره لاندې کمانډ وکاروئ▼

find / -name dump.rdb
  • بیا، په لاسي ډول د SSH له لارې د dump.rdb کیچ فایل حذف کړئ.

ریډیس د RDB ترتیب تنظیموي

د RDB ترتیب کولو په اړه، تاسو کولی شئ لاندې دوه لارې وکاروئ:

  1. په لاسي ډول د Redis ترتیب کولو فایل بدل کړئ
  2. د کمانډ لاین ترتیبات وکاروئ ، د RDB فایل بدلولو لپاره د ذخیره کولو کمانډ ترتیب کړئ dir "/usr/data"

یادونه: په redis.conf کې تشکیلات د config get xxx له لارې ترلاسه کیدی شي او د config set xxx ارزښت له لارې تعدیل کیدی شي ، او د Redis ترتیب فایل په لاسي ډول د ترمیم کولو طریقه په نړیواله کچه مؤثره ده ، دا د Redis سرور بیا پیل کولو سره ټاکل شوي پیرامیټونه به نه وي. ورک شي، مګر د کمانډ په کارولو سره تعدیل شوی، دا به د ریډیس بیا پیل کولو وروسته ورک شي.

په هرصورت، که تاسو غواړئ په لاسي ډول د Redis ترتیب کولو فایل سمدلاسه اغیزمن شي، تاسو اړتیا لرئ چې د Redis سرور بیا پیل کړئ، او د قوماندې طریقه د Redis سرور بیا پیلولو ته اړتیا نلري.

د RDB دوتنې بیا رغونه

کله چې د Redis سرور پیل شي، که چیرې د RDB فایل dump.rdb د Redis روټ ډایرکټر کې شتون ولري، Redis به په اوتومات ډول د RDB فایل د دوامداره معلوماتو بیرته راګرځولو لپاره پورته کړي.

که چیرې په روټ ډایرکټر کې د dump.rdb فایل شتون ونلري، مهرباني وکړئ د dump.rdb فایل لومړی د Redis روټ ډایرکټر ته ولیږئ.

البته، د لاګ معلومات شتون لري کله چې ریډیس پیل شي، کوم چې به وښيي چې ایا د RDB فایل پورته شوی که نه.

د ریډیس سرور د RDB فایل پورته کولو پرمهال بلاک کوي تر هغه چې بار کول بشپړ شي.

اوس موږ پوهیږو چې د RDB دوام په دوه لارو ویشل شوی: لاسي محرک او اتوماتیک محرک:

  1. د دې ګټه دا ده چې د ذخیره کولو فایل کوچنی دی او د ډیټا بیا رغونه ګړندۍ ده کله چې ریډیس پیل شي.
  2. منفي اړخ دا دی چې د معلوماتو له لاسه ورکولو خطر شتون لري.

د RDB فایلونو رغونه هم خورا ساده ده. یوازې د RDB فایلونه د Redis په روټ ډایرکټر کې واچوئ، او Redis به په اتوماتيک ډول ډاټا بار کړي او بیا یې بیرته راولي کله چې دا پیل شي.

د RDB ګټې او زیانونه

1) د RDB ګټې

د RDB مینځپانګه بائنری ډیټا ده ، کوم چې لږ حافظه نیسي ، ډیر کمپیکٹ دی ، او د بیک اپ فایل په توګه خورا مناسب دی؛

RDB د ناورین د بیا رغونې لپاره خورا ګټور دی، دا یو کمپریس شوی فایل دی چې د ریډیس خدماتو بیا رغونې لپاره په چټکۍ سره ریموټ سرور ته لیږدول کیدی شي؛

RDB کولی شي د ریډیس سرعت خورا ښه کړي، ځکه چې د ریډیس اصلي پروسه به د ماشوم پروسې ته مخه کړي ترڅو ډیسک ته ډاټا دوام ورکړي.

د Redis اصلي پروسه عملیات نه ترسره کوي لکه ډیسک I/O؛

د AOF فارمیټ فایلونو سره پرتله کول، د RDB فایلونه ګړندي بیا پیل کیږي.

2) د RDB زیانونه

ځکه چې RDB کولی شي یوازې په یو ټاکلي وخت وقفه کې ډاټا خوندي کړي، که چیرې د ریډیس خدمت په تصادفي توګه په مینځ کې وتړل شي، د ریډیس ډاټا به د یوې مودې لپاره ورک شي؛

یوه پروسه چې په کې RDB پرله پسې فورکس ته اړتیا لري ترڅو دا د سبینټري په کارولو سره په ډیسک کې خوندي کړي.

که ډیټاسیټ لوی وي ، فورک کولی شي وخت مصرف کړي ، او که ډیټاسیټ لوی وي ، د CPU فعالیت ضعیف دی ، کوم چې کولی شي ریډیس د دې لامل شي چې د څو ملی ثانیو یا حتی یوې ثانیې لپاره پیرودونکو ته خدمت ونه کړي.

البته، موږ کولی شو د ریډیس اجرا کولو موثریت ته وده ورکولو لپاره دوام هم غیر فعال کړو.

که تاسو د معلوماتو له لاسه ورکولو سره حساس نه یاست، نو تاسو کولی شئ دا کار وکړئ کله چې پیرودونکي وصل شي config set save "" د ریډیس لپاره د دوام غیر فعالولو امر.

پهredis.conf، که په کېsaveپه پیل کې ټول تشکیلات تبصره کړئ، او دوام به هم غیر فعال شي، مګر دا عموما نه ترسره کیږي.

امید چن وییلینګ بلاګ ( https://www.chenweiliang.com/ ) شریک شوی "د ریډیس RDB بشپړ نوم څه دی؟ د ریډیس RDB د حافظې ډیټا دوامدار عملیات حالت" به تاسو سره مرسته وکړي.

د دې مقالې لینک شریکولو ته ښه راغلاست:https://www.chenweiliang.com/cwl-26677.html

د وروستي تازه معلوماتو ترلاسه کولو لپاره د چن ویلیانګ بلاګ ټیلیګرام چینل ته ښه راغلاست!

🔔 د چینل غوره لارښود کې د ارزښتناکه "ChatGPT مینځپانګې بازار موندنې AI وسیلې کارولو لارښود" ترلاسه کولو لپاره لومړی اوسئ! 🌟
📚 دا لارښود لوی ارزښت لري، 🌟دا یو نادر فرصت دی، له لاسه مه ورکوئ! ⏰⌛💨
که مو خوښه شوه لایک او شریک کړئ!
ستاسو شریکول او خوښول زموږ دوامداره هڅونه ده!

 

评论 评论

ستاسو د بریښنالیک آدرس به نشر نشي اړین ساحې کارول کیږي * لیبل

پورته ته سکرول