concurrency control in dbms in hindi, concurrency control protocol kya hai,
Contents
show
Concurrency Control in DBMS in Hindi
- Concurrency control में, एक साथ कई लेनदेन निष्पादित किए जा सकते हैं।
- यह लेनदेन के परिणाम को प्रभावित कर सकता है। उन लेनदेन के execution के क्रम को बनाए रखना बेहद महत्वपूर्ण है।
problems of concurrency control
समवर्ती (concurrent) लेनदेन अनियंत्रित तरीके से निष्पादित होने पर कई समस्याएं हो सकती हैं। concurrency control में तीन समस्याएं हैं।
- Lost updates
- dirty read
- Unrepeatable read
1. Lost update problem in hindi
- जब दो लेन-देन जो same डेटाबेस आइटम को access करते हैं, उनका operation में इस तरह होता है कि कुछ डेटाबेस आइटम का मूल्य गलत हो जाता है, तो last update problem होती है।
- यदि दो लेनदेन T1 और T2 एक रिकॉर्ड पढ़ते हैं और फिर इसे अपडेट करते हैं, तो पहले रिकॉर्ड के अपडेट का प्रभाव दूसरे अपडेट द्वारा overwrite हो जाएगा।
उदाहरण:
यहाँ,
- time t2 पर, transaction x, A की value को पढ़ता है।
- Time t3 पर, Transaction-Y A की value को पढ़ता है।
- time t4 पर, Transactions-X time t2 में देखे गए value के आधार पर A की value लिखता है।
- time t5 पर, Transactions-Y time t3 में देखी गई value के आधार पर A की value लिखता है।
- इसलिए T5 के time Transaction-X का update खो जाता है क्योंकि Transaction y इसके वर्तमान मूल्य को देखे बिना इसे overwrite कर देता है।
- इस तरह की समस्या को lost update proble के रूप में जाना जाता है क्योंकि एक ट्रांजैक्शन द्वारा किया गया अपडेट यहां खो जाता है।
2. Dirty read in hindi
- Dirty read उस स्थिति में होता है जब कोई लेनदेन डेटाबेस के एक आइटम को अपडेट करता है, और फिर किसी कारण से लेनदेन विफल हो जाता है। updated डेटाबेस item original value पर वापस परिवर्तित होने से पहले किसी अन्य लेनदेन द्वारा access किया जाता है।
- एक लेनदेन T1 एक रिकॉर्ड को अपडेट करता है जिसे T2 द्वारा पढ़ा जाता है। यदि T1 abort होता है तो T2 में अब ऐसी values हैं जो कभी stable डेटाबेस का हिस्सा नहीं बनी हैं।
उदाहरण:
- Time t2 पर, लेनदेन-Y A की value लिखता है।
- Time t3 पर, Transaction-X A की value को पढ़ता है।
- Time T4 पर, Transactions-Y rollback करता है इसलिए, यह A के मान को t1 से पहले बदल देता है।
- इसलिए, transaction x में अब एक value होती है जो कभी भी stable डेटाबेस का हिस्सा नहीं बनती है।
- इस तरह की समस्या को dirty read problem के रूप में जाना जाता है, क्योंकि एक लेन-देन एक dirty value को पढ़ता है जिसे commit नहीं किया गया है।
3. inconsistent retrievals problem in hindi
- Inconsistent retrievals समस्या को unrepeatable read के रूप में भी जाना जाता है। जब कोई लेन-देन डेटा के सेट पर कुछ summary function की गणना करता है जबकि अन्य लेनदेन डेटा को अपडेट कर रहे हैं, तो inconsistent retrievals समस्या होती है।
- एक लेनदेन T1 एक रिकॉर्ड पढ़ता है और फिर कुछ अन्य processing करता है जिसके दौरान लेनदेन T2 रिकॉर्ड को अपडेट करता है। अब जब लेनदेन T1 रिकॉर्ड को पढ़ता है, तो नई value पिछली value के साथ असंगत होगा।
उदाहरण:
मान लीजिए कि दो लेन-देन तीन खातों पर काम करते हैं।
- लेनदेन-x सभी शेष राशि का योग कर रहा है जबकि लेन-देन Y खाता -1 से खाता -3 तक 50 राशि transfer कर रहा है।
- यहां, लेन-देन-X 550 का परिणाम उत्पन्न करता है जो गलत है। यदि हम डेटाबेस में इस उत्पादित परिणाम को लिखते हैं, तो डेटाबेस एक असंगत स्थिति बन जाएगा क्योंकि वास्तविक योग 600 है।
- यहां, लेनदेन-X ने डेटाबेस की एक असंगत स्थिति देखी है।
Concurrency control protocol in dbms in hindi
concurrency control protocol समवर्ती लेनदेन की atomicity, isolation और serializability सुनिश्चित करते हैं। concurrency control protocol को तीन श्रेणियों में विभाजित किया जा सकता है:
- Lock based protocol
- Time stamp protocol
- Validation based protocol