Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

DBMS में लॉक्स का उपयोग कर संगामिति नियंत्रण


डीबीएमएस में समवर्ती नियंत्रण बनाए रखने के लिए ताले एक अभिन्न अंग हैं। लॉक आधारित संगामिति नियंत्रण को लागू करने वाली किसी भी प्रणाली में एक लेनदेन तब तक एक बयान नहीं पढ़ या लिख ​​सकता है जब तक कि उसे आवश्यक ताले प्राप्त न हो जाएं।

लॉक आधारित प्रोटोकॉल में दो प्रकार के ताले होते हैं। ये हैं:

  • बाइनरी लॉक - ये केवल दो राज्यों में से एक में हो सकते हैं, लॉक या अनलॉक।
  • साझा/अनन्य ताले - साझा ताले तब प्राप्त किए जाते हैं जब केवल रीड ऑपरेशन किया जाना होता है। साझा किए गए ताले को कई लेनदेन के बीच साझा किया जा सकता है क्योंकि कोई डेटा नहीं बदला जा रहा है। जब लेखन कार्य किया जाता है तो अनन्य ताले का उपयोग किया जाता है। केवल अनन्य लॉक रखने वाले लेन-देन को डेटा मान में परिवर्तन करने की अनुमति है।

विभिन्न लॉकिंग प्रोटोकॉल हैं -

सरल लॉक प्रोटोकॉल

राइट ऑपरेशन करने से पहले डेटा वैल्यू पर ट्रांजैक्शन द्वारा लॉक प्राप्त किया जाता है। राइट ऑपरेशन के बाद, लॉक जारी किया जा सकता है। सरलीकृत लॉक प्रोटोकॉल का एक उदाहरण है:

<टेबल><थेड>T1 <थ>टी2 आर(ए) <टीडी>

आर(ए) ताला(बी) <टीडी>
आर(बी) <टीडी>
डब्ल्यू(बी) <टीडी>
अनलॉक(B) <टीडी>

ताला(C)
आर(सी)
डब्ल्यू(सी)
अनलॉक(C) प्रतिबद्ध करें <टीडी>

प्रतिबद्ध करें

ऊपर दिखाए गए दो लेनदेन T1 और T2 हैं। रीड ऑपरेशन के लिए किसी लॉक की आवश्यकता नहीं होती है, लेकिन राइट ऑपरेशन से पहले, इनमें से प्रत्येक लेन-देन एक लॉक प्राप्त कर लेता है और बाद में इसे जारी कर देता है।

दो-चरण लॉकिंग प्रोटोकॉल

दो-चरण लॉकिंग प्रोटोकॉल में दो चरण होते हैं, अर्थात् बढ़ते और सिकुड़ते चरण। लेन-देन केवल तभी प्राप्त कर सकता है जब वह विकास के चरण में हो। जब यह सिकुड़ने के चरण में प्रवेश करता है, तो यह पहले से अधिग्रहीत ताले को छोड़ सकता है लेकिन नए ताले प्राप्त नहीं कर सकता है। एक्सक्लूसिव लॉक्स को X द्वारा दर्शाया जाता है और शेयर्ड लॉक्स को S द्वारा दर्शाया जाता है। टू फेज लॉकिंग प्रोटोकॉल का एक उदाहरण है -

<टेबल><थेड>T1 <थ>टी2 एस(ए) <टीडी>
आर(ए) <टीडी>

एस(ए)
आर(ए) X(B) <टीडी>
आर(बी) <टीडी>
डब्ल्यू(बी) <टीडी>

X(C)
आर(सी)
डब्ल्यू(सी)
अनलॉक(C)
अनलॉक(ए) अनलॉक(बी) <टीडी>
अनलॉक(ए) <टीडी>
प्रतिबद्ध करें <टीडी>

प्रतिबद्ध करें

उपरोक्त उदाहरण में, T1 और T2 एक साझा लॉक का उपयोग करके चर A को साझा करते हैं क्योंकि A पर केवल रीड ऑपरेशन किया जाता है। T1 लिखने के संचालन के लिए B पर एक विशेष लॉक प्राप्त करता है और इसे जल्द ही जारी करता है। T2 C के साथ भी ऐसा ही करता है।

सख्त दो-चरण लॉकिंग प्रोटोकॉल

स्ट्रिक्ट टू फेज लॉकिंग प्रोटोकॉल टू फेज लॉकिंग प्रोटोकॉल के समान है। अंतर केवल इतना है कि सख्त 2PL प्रोटोकॉल में प्रोटोकॉल द्वारा अधिग्रहीत सभी अनन्य तालों को तब तक आयोजित करने की आवश्यकता होती है जब तक कि प्रोटोकॉल या तो बंद नहीं हो जाता या बंद नहीं हो जाता। स्ट्रिक्ट टू-फेज लॉकिंग प्रोटोकॉल का एक उदाहरण है:

<टेबल><थेड>T1 <थ>टी2 एस(ए) <टीडी>
आर(ए) <टीडी>

एस(ए)
आर(ए) X(B) <टीडी>
आर(बी) <टीडी>
डब्ल्यू(बी) <टीडी>

X(C)
आर(सी)
डब्ल्यू(सी)
अनलॉक(ए) अनलॉक(ए) <टीडी>
प्रतिबद्ध करें <टीडी>
अनलॉक(B) <टीडी>

प्रतिबद्ध करें
अनलॉक(C)

उपरोक्त उदाहरण में, T1 और T2 एक साझा लॉक का उपयोग करके चर A को साझा करते हैं क्योंकि A पर केवल रीड ऑपरेशन किया जाता है। T1 लिखने के संचालन के लिए B पर एक विशेष लॉक प्राप्त करता है और T2 C के साथ ऐसा ही करता है। अनन्य ताले केवल जारी किए जाते हैं लेनदेन के बाद प्रतिबद्ध है। हालांकि, साझा ताले के लिए ऐसी कोई बाध्यता नहीं है।

कठोर दो-चरण लॉकिंग प्रोटोकॉल

कठोर दो चरण लॉकिंग प्रोटोकॉल केवल दो चरण लॉकिंग प्रोटोकॉल और सख्त दो चरण लॉकिंग प्रोटोकॉल का विस्तार है। यहां, लेन-देन द्वारा रखे गए सभी ताले, चाहे साझा या अनन्य हों, केवल लेन-देन के होने या निरस्त होने के बाद ही जारी किए जाते हैं। कठोर दो-चरण लॉकिंग प्रोटोकॉल का एक उदाहरण है:

<टेबल><थेड>T1 <थ>टी2 एस(ए) <टीडी>
आर(ए) <टीडी>

एस(ए)
आर(ए) X(B) <टीडी>
आर(बी) <टीडी>
डब्ल्यू(बी) <टीडी>

X(C)
आर(सी)
डब्ल्यू(सी) प्रतिबद्ध करें <टीडी>
अनलॉक(ए) <टीडी>
अनलॉक(B) <टीडी>

प्रतिबद्ध करें
अनलॉक(ए)
अनलॉक(C)

उपरोक्त उदाहरण में, T1 और T2 एक साझा लॉक का उपयोग करके चर A को साझा करते हैं क्योंकि A पर केवल रीड ऑपरेशन किया जाता है। T1 लिखने के संचालन के लिए B पर एक विशेष लॉक प्राप्त करता है और T2 C के साथ भी ऐसा ही करता है। साझा किए गए ताले और लेन-देन करने के बाद ही अनन्य ताले जारी किए जाते हैं।


  1. Windows PC का उपयोग करके iPhone को कैसे नियंत्रित करें

    आज के युग में तकनीक इतनी आगे बढ़ गई है कि हमारे जीवन के हर हिस्से में कुछ न कुछ डिजिटल है। लोग अपने फोन का उपयोग प्रकाश व्यवस्था, रेफ्रिजरेटर और यहां तक ​​कि घरेलू सुरक्षा प्रणालियों को नियंत्रित करने के लिए कर सकते हैं। Apple इस चार्ज का नेतृत्व करने वाली कंपनी है। अगर कोई अपने घरों में Apple का वा

  1. iOS शॉर्टकट:कंट्रोल सेंटर में 3D टच का उपयोग करना

    Apple सबसे पहले फोर्स टच, एक दबाव-संवेदनशील स्पर्श तकनीक, Apple वॉच में लाया। लेकिन जल्द ही एंड्रॉइड फोन निर्माता हुआवेई ने अपने नए स्मार्टफोन में इस फीचर को जारी किया, ऐप्पल ने आईफोन 6एस के साथ सबसे पहले आईफोन पर इसके उपयोग को जारी किया और लोकप्रिय बना दिया। Apple इस मल्टी-टच क्षमता को 3D टच कहता

  1. सरफेस पेन का उपयोग करके अपनी PowerPoint प्रस्तुतियों को कैसे नियंत्रित करें

    सरफेस पेन, सरफेस के मुख्य आकर्षणों में से एक है और विंडोज 10 की बेहतर इनकिंग क्षमताओं के साथ, यह ऐप्स के साथ लिखने, आकर्षित करने और इंटरैक्ट करने का एक स्वाभाविक और सहज तरीका प्रदान करता है। एक क्लिक, डबल-क्लिक, या एक लंबे प्रेस पर उपलब्ध शीर्ष बटन के माध्यम से आसान पेन शॉर्टकट भी हैं - हालांकि क्र