Redis RDB جو پورو نالو ڇا آهي؟ Redis RDB ميموري ڊيٽا مسلسل آپريشن موڊ

RDB جو پورو نالو آهيRedis database.

  • جيئن ته نالو مشورو ڏئي ٿو، آر ڊي بي هڪ ريڊيس ڊيٽابيس آهي جيڪو ڊيٽا کي ذخيرو ڪرڻ لاء استعمال ڪيو ويندو آهي.
  • تنهن ڪري، RDB مسلسل ذريعي، ريڊس ميموري ۾ ذخيرو ٿيل ڊيٽا آر ڊي بي فائل ڏانهن لکيو ويو آهي ۽ ڊسڪ ۾ محفوظ ڪيو ويو آهي مسلسل حاصل ڪرڻ لاء.
  • ريڊس جي خاصيت اها آهي ته اهو ڊيٽا کي برقرار رکي سگهي ٿو، يعني ميموري ۾ ڊيٽا کي ڊسڪ ۾ لکندو آهي انهي کي يقيني بڻائڻ ته ڪو به ڊيٽا گم نه ٿئي، ۽ پڻ ڊسڪ مان ڊيٽا کي ميموري ۾ لوڊ ڪري سگهي ٿو.

Redis RDB جو پورو نالو ڇا آهي؟ Redis RDB ميموري ڊيٽا مسلسل آپريشن موڊ

ريڊس جا آپريشن شروع ۾ سڀ ميموري تي ٻڌل آھن، تنھنڪري ڪارڪردگي تمام گھڻي آھي، پر ھڪ دفعو پروگرام بند ٿي ويندو آھي، ڊيٽا گم ٿي ويندي آھي.

تنهن ڪري، اسان کي مخصوص وقفن تي ڊسڪ ۾ ميموري ڊيٽا لکڻ جي ضرورت آهي، جيڪو سنيپ شاٽ جرگن ۾ آهي.

بحال ڪرڻ وقت، سنيپ شاٽ فائل سڌو سنئون ياداشت ۾ لکيل آهي.

اهو پڻ Redis ۽ Memcached جي وچ ۾ بنيادي فرقن مان هڪ آهي، ڇاڪاڻ ته Memcached ۾ ڪا به مسلسل صلاحيت ناهي.

Redis ميموري ڊيٽا جي تسلسل لاءِ، Redis اسان کي ھيٺين طريقن سان مهيا ڪري ٿو:

  • سنيپ شاٽ جو طريقو (RDB، Redis DataBase): ميموري ڊيٽا کي ڊسڪ ۾ بائنري فارم ۾ هڪ خاص وقت تي لکو؛
  • صرف فائل شامل ڪريو (AOF، صرف فائل شامل ڪريو)، سڀئي آپريشن حڪمن کي رڪارڊ ڪريو، ۽ ٽيڪسٽ فارم ۾ فائل ۾ شامل ڪريو؛
  • هائبرڊ تسلسل، هڪ نئون طريقو ريڊس 4.0 کان پوءِ، هائبرڊ تسلسل RDB ۽ AOF جي فائدن کي گڏ ڪري ٿو.لکڻ وقت، سڀ کان پهريان موجوده ڊيٽا کي فائل جي شروعات ۾ RDB جي صورت ۾ لکو، ۽ پوءِ ايندڙ آپريشن ڪمانڊن کي فائل ۾ AOF جي صورت ۾ محفوظ ڪريو، جيڪي نه رڳو ريڊس ريسٽارٽ جي رفتار کي يقيني بڻائي سگهن ٿا، پر ان کي به گھٽائي سگهن ٿا. ڊيٽا جي نقصان جو خطرو.

ڇو ته هر استقامت واري اسڪيم ۾ مخصوص استعمال جا منظر آهن.

Redis RDB ميموري ڊيٽا مسلسل آپريشن موڊ

  • RDB (Redis DataBase) هڪ ميموري سنيپ شاٽ (سنيپ شاٽ) لکڻ جو عمل آهي هڪ خاص وقت تي ڊسڪ کي بائنري فارم ۾.
  • ميموري تصويرون آهن جيڪي اسان مٿي چيو آهي.اهو هڪ خاص وقت تي ميموري ۾ ڊيٽا جي رياستي رڪارڊ ڏانهن اشارو ڪري ٿو.
  • اهو هڪ تصوير ڪڍڻ جهڙو آهي. جڏهن توهان هڪ دوست جو فوٽو ڪڍو ٿا، هڪ فوٽو فوري طور تي دوست جي سڀني تصويرن کي رڪارڊ ڪري سگهي ٿو.
  • RDB کي ٽاريڻ جا ٻه طريقا آھن: ھڪڙو آھي دستي طور تي ٽارگيٽ ڪرڻ، ۽ ٻيو آھي خودڪار طريقي سان.

دستي طور تي RDB کي ٽاريو

دستي طور تي جاري رکڻ لاءِ ٻه آپريشن آھن:save۽bgsave.

انهن جي وچ ۾ بنيادي فرق اهو آهي ته ڇا ريڊيس جي مکيه سلسلي جي عمل کي روڪڻ يا نه.

1. حڪم محفوظ ڪريو

ڪلائنٽ پاسي محفوظ ڪمانڊ تي عمل ڪرڻ سان Redis جي استقامت کي ٽاريندو، پر اھو پڻ ريڊس کي بلاڪ ڪرڻ واري حالت ۾ آڻيندو. اھو ٻين ڪلائنٽ پاران موڪليل حڪمن جو جواب نه ڏيندو جيستائين 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. ايم اين بچايو

  • save mn جو مطلب آهي ته m سيڪنڊن اندر، جيڪڏهن n ڪنجيون تبديل ٿينديون، ته استقامت خود بخود شروع ٿي ويندي.پيرا ميٽرز m ۽ n ڳولهي سگهجن ٿا Redis ترتيب واري فائل ۾.
  • مثال طور، محفوظ ڪريو 60 1 جو مطلب آهي 60 سيڪنڊن اندر، جيستائين هڪ اهم تبديليون اينديون، آر ڊي بي جو تسلسل شروع ٿيندو.
  • خود بخود جاري رکڻ جو جوهر اهو آهي ته جيڪڏهن سيٽ ٽرگر شرطن کي پورا ڪيو وڃي، Redis خودڪار طريقي سان عمل ڪندو bgsave حڪم هڪ ڀيرو.

نوٽ: جڏهن گھڻا بچاء mn حڪم مقرر ڪيا ويا آهن، ڪنهن به هڪ حالت کي جاري رکندي.

مثال طور، اسان ھيٺ ڏنل ٻه محفوظ mn ڪمانڊ مقرر ڪيون ٿا:

save 60 10
save 600 20
  • جڏهن 60s جي اندر 10 ڀيرا ريڊس جي اهم قدر تبديل ٿي ويندي آهي، تسلسل شروع ڪيو ويندو؛
  • جيڪڏهن Redis ڪيئي 60s جي اندر تبديل ٿي وڃي ٿي، ۽ جيڪڏھن قدر 10 ڀيرا کان گھٽ تبديل ٿئي ٿو، ته پوءِ Redis اھو طئي ڪندو ته ڇا Redis Key کي 600s جي اندر گھٽ ۾ گھٽ 20 ڀيرا تبديل ڪيو ويو آھي، ۽ جيڪڏھن ائين آھي، جاري رھي.

2. فليش

  • flushall حڪم استعمال ڪيو ويندو آهي ريڊيس ڊيٽابيس کي فلش ڪرڻ لاء.
  • اهو پيداوار جي ماحول ۾ احتياط سان استعمال ڪيو وڃي.
  • جڏهن ريڊس فلشال ڪمانڊ تي عمل ڪري ٿو، اهو خودڪار طريقي سان جاري رکي ٿو ۽ آر ڊي بي فائلن کي صاف ڪري ٿو.

3. ماسٽر-غلام هم وقت سازي ٽرگر

Redis master-slave replication ۾، جڏھن غلام نوڊ مڪمل ريپليڪشن آپريشن ڪندو آھي، ماسٽر نوڊ RDB فائل کي ٻانھي نوڊ ڏانھن موڪلڻ لاءِ bgsave ڪمانڊ تي عمل ڪندو آھي. اھو عمل خود بخود ريڊس جي تسلسل کي متحرڪ ڪري ٿو.

Redis حڪمن جي ذريعي موجوده تشڪيل جي پيراگراف سوال ڪري سگهي ٿو.

سوال جي حڪم جي فارميٽ آهي:config get xxx

مثال طور، جيڪڏھن توھان حاصل ڪرڻ چاھيو ٿا RDB فائل جي اسٽوريج جو نالو سيٽنگ، توھان استعمال ڪري سگھو ٿا config get dbfilename .

عمل جي اثر هيٺ ڏنل آهي:

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

جيئن ته Redis سرور بلاڪ ڪندو جڏهن RDB فائل لوڊ ڪندي جيستائين لوڊشيڊنگ مڪمل نه ٿئي، اهو ٿي سگهي ٿو ڊگهو وقت ۽ ويب سائيٽ تائين رسائي نه ٿي سگهي.

جيڪڏهن توهان دستي طور Redis جي RDB ڪيش فائل dump.rdb کي حذف ڪرڻ چاهيو ٿا، ته توهان هيٺ ڏنل حڪم استعمال ڪري سگهو ٿا dump.rdb فائل جي اسٽوريج جو رستو ڳولڻ لاءِ▼

find / -name dump.rdb
  • پوء، دستي طور تي ڊمپ.rdb ڪيش فائل کي SSH ذريعي حذف ڪريو.

ريڊس آر ڊي بي جي ترتيب کي ترتيب ڏئي ٿو

آر ڊي بي جي ترتيب کي ترتيب ڏيڻ جي حوالي سان، توهان هيٺيان ٻه طريقا استعمال ڪري سگهو ٿا:

  1. دستي طور تي ترميم ڪريو Redis ترتيب واري فائل
  2. ڪمانڊ لائن سيٽنگون استعمال ڪريو، ترتيب سيٽ ڊائريڪٽر "/usr/data" اسٽوريج ڪمانڊ آهي آر ڊي بي فائل کي تبديل ڪرڻ لاء

نوٽ: redis.conf ۾ ٺاھ جوڙ حاصل ڪري سگھجي ٿي config get xxx ذريعي ۽ تبديل ڪري سگھجي ٿي config set xxx value ذريعي، ۽ Redis configuration فائل کي دستي طور تي تبديل ڪرڻ جو طريقو عالمي سطح تي اثرائتو آھي، اھو آھي، Redis سرور کي ٻيهر شروع ڪرڻ سان مقرر ڪيل پيٽرولر نه ھوندا. وڃايو وڃي، پر ڪمانڊ استعمال ڪندي تبديل ڪيو ويو، اهو ريڊس ٻيهر شروع ٿيڻ کان پوءِ گم ٿي ويندو.

تنهن هوندي، جيڪڏهن توهان دستي طور تي تبديل ڪرڻ چاهيو ٿا Redis ترتيب واري فائل کي فوري طور تي اثر انداز ڪرڻ لاء، توهان کي ريڊس سرور کي ٻيهر شروع ڪرڻ جي ضرورت آهي، ۽ حڪم جو طريقو ريڊس سرور کي ٻيهر شروع ڪرڻ جي ضرورت ناهي.

RDB فائل وصولي

جڏهن Redis سرور شروع ٿئي ٿو، جيڪڏهن RDB فائل dump.rdb موجود آهي Redis روٽ ڊاريڪٽري ۾، Redis خودڪار طريقي سان RDB فائل کي لوڊ ڪندي مسلسل ڊيٽا کي بحال ڪرڻ لاء.

جيڪڏهن روٽ ڊاريڪٽري ۾ ڪو به dump.rdb فائل ناهي، مهرباني ڪري dump.rdb فائل کي پهرين ريڊس جي روٽ ڊاريڪٽري ڏانهن منتقل ڪريو.

يقينا، اتي لاگ انفارميشن آهي جڏهن ريڊس شروع ٿئي ٿي، جيڪو ڏيکاريندو ته ڇا RDB فائل لوڊ ٿيل آهي.

RDB فائل کي لوڊ ڪرڻ دوران Redis سرور بلاڪ ڪري ٿو جيستائين لوڊ ٿيڻ مڪمل ٿئي.

ھاڻي اسان ڄاڻون ٿا ته RDB تسلسل ٻن طريقن ۾ ورهايل آھي: دستي ٽرگرنگ ۽ خودڪار ٽرگرنگ:

  1. ان جو فائدو اهو آهي ته اسٽوريج فائل ننڍو آهي ۽ ڊيٽا جي وصولي تيز ٿيندي آهي جڏهن ريڊيس شروع ٿئي ٿي.
  2. نقصان اهو آهي ته ڊيٽا جي نقصان جو خطرو آهي.

RDB فائلن جي وصولي پڻ تمام سادو آهي، صرف RDB فائلن کي ريڊس جي روٽ ڊاريڪٽري ۾ رکو، ۽ ريڊس خودڪار طريقي سان لوڊ ۽ ڊيٽا کي بحال ڪندو جڏهن اهو شروع ٿيندو.

RDB جا فائدا ۽ نقصان

1) آر ڊي بي جا فائدا

RDB جو مواد بائنري ڊيٽا آھي، جيڪو گھٽ ميموري تي قبضو ڪري ٿو، وڌيڪ ٺھيل آھي، ۽ بيڪ اپ فائل جي طور تي وڌيڪ موزون آھي؛

آر ڊي بي آفت جي بحالي لاءِ تمام ڪارائتو آهي، اهو هڪ ڪمپريس ٿيل فائل آهي جنهن کي ريڊيس سروس جي بحالي لاءِ تيزيءَ سان ريموٽ سرور ڏانهن منتقل ڪري سگهجي ٿو.

آر ڊي بي ريڊس جي رفتار کي تمام گهڻو بهتر ڪري سگهي ٿو، ڇاڪاڻ ته مکيه ريڊس پروسيس هڪ ٻار جي پروسيس کي ڊسڪ ۾ ڊيٽا کي جاري رکڻ لاء فورڪ ڪندو.

ريڊس مکيه عمل آپريشن نه ڪندو آهي جهڙوڪ ڊسڪ I/O؛

AOF فارميٽ فائلن جي مقابلي ۾، RDB فائلون تيزيءَ سان ٻيهر شروع ٿيون.

2) آر ڊي بي جا نقصان

ڇاڪاڻ ته RDB صرف هڪ خاص وقت جي وقفي تي ڊيٽا محفوظ ڪري سگهي ٿو، جيڪڏهن ريڊس سروس حادثي سان وچ ۾ ختم ٿي وڃي ٿي، ته ريڊيس ڊيٽا ڪجهه وقت لاءِ گم ٿي ويندي؛

ھڪڙو عمل جنھن ۾ RDB کي بار بار فورڪ جي ضرورت آھي ان کي ڊسڪ تي ذخيرو ڪرڻ لاءِ ذيلي ذخيرو استعمال ڪندي.

جيڪڏهن ڊيٽا سيٽ وڏو آهي، ڪانٽو وقت سازي ٿي سگهي ٿو، ۽ جيڪڏهن ڊيٽا سيٽ وڏي آهي، سي پي يو جي ڪارڪردگي خراب آهي، جنهن جي ڪري Redis ڪجهه مليسيڪنڊ يا هڪ سيڪنڊ لاءِ ڪلائنٽ جي خدمت ڪرڻ کان قاصر ٿي سگهي ٿو.

يقينن، اسان ريڊس جي عملدرآمد ڪارڪردگي کي بهتر ڪرڻ لاء مسلسل استحڪام کي پڻ بند ڪري سگھون ٿا.

جيڪڏهن توهان ڊيٽا جي نقصان سان حساس نه آهيو، توهان اهو ڪري سگهو ٿا جڏهن ڪلائنٽ ڳنڍيندي config set save "" ريڊس لاءِ تسلسل کي بند ڪرڻ جو حڪم.

ع ۾redis.conf، جيڪڏهن اندرsaveتبصرو ڪريو سڀني ترتيبن جي شروعات ۾، ۽ استقامت پڻ معذور ٿي ويندي، پر اھو عام طور تي نه ڪيو ويندو آھي.

اميد چن ويلانگ بلاگ ( https://www.chenweiliang.com/ "Redis RDB جو پورو نالو ڇا آهي؟ Redis RDB In-Memory Data Persistence Operation Mode"، توھان جي مدد ڪندو.

هن آرٽيڪل جي لنڪ کي حصيداري ڪرڻ لاء ڀليڪار:https://www.chenweiliang.com/cwl-26677.html

تازن تازه ڪاريون حاصل ڪرڻ لاءِ Chen Weiliang جي بلاگ جي ٽيليگرام چينل تي ڀليڪار!

🔔 چينل جي ٽاپ ڊاريڪٽري ۾ قيمتي "ChatGPT مواد مارڪيٽنگ AI اوزار استعمال ڪرڻ جي گائيڊ" حاصل ڪرڻ وارا پھريون بڻجي وڃو! 🌟
📚 هي گائيڊ وڏي قيمت تي مشتمل آهي، 🌟 هي هڪ نادر موقعو آهي، ان کي نه وڃايو! ⏰⌛💨
پسند اچي ته شيئر ڪريو ۽ پسند ڪريو!
توهان جي حصيداري ۽ پسند اسان جي مسلسل حوصلا آهن!

 

发表 评论

توهان جو اي ميل پتو شايع نه ڪيو ويندو. 必填 项 已 用 * ليبل

مٿي ڏانهن ڇڪيو