ACID توهان جي ڊيٽابيس جي ڊيٽا کي محفوظ ڪندو آهي
ڊيٽابيس جي ڊيٽابيس جي ACID ماڊل ڊيٽابيس جي نظريي جي تمام پراڻي ۽ سڀ کان اهم تصورن مان هڪ آهي. اهو چار مقصد اڳتي وڌايو آهي ته هر ڊيسڪ ڊيسڪ ايڊمنسٽريشن سسٽم حاصل ڪرڻ جي ڪوشش ڪرڻ گهرجي: Atomicity، consistency، isolation ۽ durability. هڪ مقصدن واري ڊيٽابيس جيڪا هنن چار مقصدن کي پورا ڪرڻ ۾ ناڪام ٿي نه سمجهيو وڃي. ھڪ ڊيٽابيس جيڪي اھڙا آھن جيڪي اھڙا آھن جيڪي ACID-compliant سمجھي رھيا آھن.
ACID جي وضاحت ڪئي وئي
اچو ته انهن خاصيتن مان هر هڪ تفصيل کي جانچڻ لاء هڪ لمحو وٺو:
- Atomicity جو بيان آهي ته ڊيٽابيس جي ترميمن کي "سڀني يا ڪجهه کان سواء" قاعدي جي پيروي ڪرڻ گهرجن. هر ٽرانزيڪشن کي "ايٽميڪ" چيو ويندو آهي. جيڪڏهن جيڪڏهن ٽرانزيڪشن جو هڪ حصو ناڪام ٿيندو، پوري ٽرانزيڪشن ۾ ناڪام ٿئي ٿي. اهو ضروري آهي ته ڊيٽابيس مينيجمينٽ سسٽم ٽرانزمنٽ جو جوهر طبيعت برقرار رکي ڪنهن به ڊي بي ايس، آپريٽنگ سسٽم يا هارڊويري ناڪامي باوجود.
- لاڳيتو رياستن جو بيان آهي ته صرف صحيح ڊيٽا ڊيٽابيس تي لکيو ويندو. جيڪڏهن، ڪجهه سببن لاء، هڪ ٽرانزيڪشن معطل ڪيو ويو آهي جو ڊيٽابيس جي مستقل استحقاق جي خلاف ورزی ڪندو آهي، مڪمل لينج واپس لويو ويندو، ۽ ڊيٽابيس هڪ رياست کي ان اصولن سان بحال ٿيندي. ٻي صورت ۾، جيڪڏهن ٽرانزيڪشن ڪاميابي سان ڪامياب ٿي ويندي، اها ئي ڊيٽابيس هڪ رياست کان وٺي ويندي جيڪا قاعدن سان هڪ ٻئي رياست سان برابر آهي جيڪا قاعدن سان پڻ برابر آهي.
- استحڪام جي ضرورت آهي ته هڪ ئي وقت تي ڪيترائي ٽرانزيڪشن هڪ ٻئي جي عمل تي اثر انداز نه ڪن. مثال طور، جيڪڏهن هو ساڳئي وقت ڊيٽابيس جي خلاف ٽرانزيڪشن تي مسئلا ڪن ته مريم هڪ مختلف ٽرانزيڪشن جي مسئلي کي حل ڪري، ٻنهي ٽرانزيڪشن کي الڳ الڳ طريقي سان ڊيٽابيس تي هلائڻ گهرجي. ڊيٽابيس مريم جي، يا نائب-ناٽڪ کي عمل ڪرڻ کان اڳ جو پوري ٽرانزيڪشن کي انجام ڏيڻ گهرجي. انهي جي وچ ۾ ڄاڻايل ڊيٽا پڙهڻ واري جوء جو معاملو ميون جي ٽرانزيڪشن جي هڪ پاسي واري اثر جي طور تي پيدا ٿئي ٿو جيڪو آخرڪار ڊيٽابيس کي پورو نه ڪيو ويندو. ياد رهي ته انبیاء جي ملڪيت ملڪيت کي يقيني بڻائي ٿي، جيڪا ٽرانزيڪشن پهريون ڀيرو انجام ڏئي سگهندو. صرف اهو معاملو هڪ ٻئي سان مداخلت نه ڪندو.
- استحڪام کي يقيني بنائي ٿو ته ڊيٽابيس جي ڪنهن به ٽرانزيڪشن جو ڪارڻ وڃائي نه سگهندو. استحڪام ڊيٽابيس جي بيڪ اپ ۽ ٽرانزيڪشن لسٽن جي استعمال سان يقيني بڻايو وڃي جيڪا ڪنهن به اچڻ واري سافٽ ويئر يا هارڊويئر ناڪامي جي باوجود مصروف ٽرانزيڪشن جي بحالي کي آسان بڻائي ٿي.
ڪئين ACID ڪم ڪار ۾ ڪيئن ڪم ڪندو آهي
ڊيٽابيس جي منتظمين کي ACID لاڳو ڪرڻ لاء ڪيترن ئي حڪمت عمليون استعمال ڪن ٿيون.
هڪ ايٽميٽيٽي ۽ استحڪام کي لاڳو ڪرڻ لاء استعمال ٿيندڙ اڳتي وڌڻ (WAL) آهي، جنهن ۾ ڪنهن ٽرانزيڪشن جي تفصيل پهريون ڀيرو لاگ ان تي لکيو ويو آهي، جنهن ۾ وري ٻئي معلومات کي واپس آڻيندا آهن. انهي کي يقيني بڻائي ٿو ته ڪنهن به قسم جي ڊيٽابيس جي ناڪامي ڏني وئي آهي، ڊيٽابيس کي چڪاس ڪري سگھي ٿو. لاگ ان ۽ ان جي مواد کي ڊيٽابيس جي رياست ڏانهن موازنہ ڪريو.
هڪ ٻيو طريقو ايٽميٽيٽي ۽ استحڪام جو پتو پئجي ويندو آهي جڏهن ته ڊيٽا کي تبديل ٿي ويندو آهي جڏهن سوري پيج ٺاهي ويندي آهي. سوالن جي تازي معلومات ڊيٽابيس ۾ اصلي ڊيٽا جي بدران پاڇو صفحي ڏانهن لکيو ويو آهي. ڊيٽابيس پاڻ کي تبديل ڪيو ويندو آهي جڏهن تبديلي مڪمل ڪئي وئي آهي.
هڪ ٻي حڪمت عملي کي ٻن مرحلن وار پروٽوڪول سڏيو ويندو آهي، خاص طور تي ورهايل ڊيٽابيس سسٽم ۾ مفيد. هي پروٽوڪول ڊيٽا کي ٻن مرحلن ۾ تبديل ڪرڻ لاء الڳ ڪري ٿو: هڪ انجام ڏيڻ واري درخواست ۽ هڪ فيصل مرحلو. درخواست جي مرحلي ۾، سڀئي ڊبليو ايف ايم ايس هڪ نيٽورڪ تي جيڪي ٽرانزيڪشن طرفان متاثر ٿيا آهن انهن جي تصديق ڪن ٿا ته انهن کي حاصل ڪيو آهي ۽ ٽرانزيڪشن کي انجام ڏيڻ جي صلاحيت آهي. هڪ دفعو سڀني لاڳاپيل ڊي بي ايس جي طرفان تصديق ڪئي وئي آهي، اهو ڪم مرحوم مڪمل آهي جنهن ۾ ڊيٽابيس اصل ۾ تبديل ٿيل آهي.