टॉपिक
Transaction क्या है?
DBMS में Transaction ऐसे operations का समूह होता है जो मिलकर database का काम पूरा करते हैं। इसका उद्देश्य data को सही और सुरक्षित बनाए रखना होता है।
सरल भाषा में कहें तो, “जब database में कोई काम बहुत सारें steps में पूरा होता है, तो उन सभी steps को मिलाकर Transaction कहा जाता है।”
उदाहरण:
मान लीजिए Ravi अपने बैंक account से ₹5000 Mohan को भेजता है।
इस काम में दो steps होंगे:
- Ravi के account से ₹5000 कटेंगे।
- Mohan के account में ₹5000 जुड़ेंगे।
यदि पहले account से पैसे कट जाएँ लेकिन दूसरे account में पैसे न जुड़ें, तो database में गलती हो जाएगी। इसलिए दोनों काम सफल होना जरूरी है।
यही सुनिश्चित करने का काम Transaction करता है।
Transaction की विशेषताएँ (ACID Properties)
DBMS में Transaction की 4 मुख्य विशेषताएँ होती हैं, जिन्हें ACID Properties कहा जाता है। ये properties डेटाबेस के data को सुरक्षित और सही बनाए रखने में मदद करती हैं।
1. Atomicity
Atomicity का मतलब होता है “पूरा काम होगा या बिल्कुल नहीं होगा”।
यानि transaction के सभी steps सफल होने चाहिए। यदि बीच में कोई error आ जाए, तो पूरा transaction cancel हो जाता है।
उदाहरण:
यदि पैसे transfer करते समय server बंद हो जाए, तो पैसे किसी एक account में ही change नहीं होंगे।
पूरा transaction वापस पहले जैसी स्थिति में आ जाएगा।
2. Consistency
Consistency का मतलब है कि transaction के बाद database का data हमेशा सही और balanced रहे।
यानि transaction से पहले और बाद में डेटाबेस valid रहना चाहिए।
उदाहरण: यदि बैंक में कुल पैसे ₹20000 हैं, तो transaction के बाद भी कुल amount उतनी ही रहनी चाहिए।
3. Isolation
Isolation का मतलब है कि एक transaction दूसरे transaction के काम में दखल नहीं देता। यानि बहुत सारें users एक साथ database इस्तेमाल करें, फिर भी data सही तरीके से handle होता है।
उदाहरण: यदि दो लोग एक ही समय में movie ticket book कर रहे हों, तो system सही तरीके से केवल उपलब्ध सीट ही देगा।
4. Durability
Durability का मतलब है कि transaction commit होने के बाद data हमेशा के लिए save हो जाता है। यदि बाद में बिजली चली जाए या system crash हो जाए, तब भी डेटा delete नहीं होता।
उदाहरण: ATM से पैसे निकलने के बाद transaction की जानकारी हमेशा database में save रहती है।
Concurrency Control क्या है?
जब बहुत सारें users एक ही समय पर database को access या update करते हैं, तब data में conflict और inconsistency आने की संभावना बढ़ जाती है। इन समस्याओं को नियंत्रित करके data को सही, और सुरक्षित बनाए रखने की प्रक्रिया को Concurrency Control कहते हैं।
यह DBMS की एक महत्वपूर्ण technique है, जो यह सुनिश्चित करती है कि बहुत सारें transactions एक साथ execute होने पर भी database में कोई गलत बदलाव न हो।
उदाहरण:
मान लीजिए दो users एक ही बैंक account का balance एक साथ update कर रहे हैं। यदि सही control न हो, तो balance गलत हो सकता है। Concurrency Control ऐसी परिस्थितियों को handle करके data को सुरक्षित रखता है।
Concurrency Control के मुख्य उद्देश्य
Concurrency Control का इस्तेमाल निम्नलिखित कारणों से किया जाता है।
1. Data Consistency बनाए रखना
यह सुनिश्चित करता है कि database में data हमेशा सही और accurate रहे, चाहे कई transactions एक साथ चल रहे हों।
2. Multiple Users को Support करना
एक ही समय में बहुत सारें users डेटाबेस का उपयोग कर सकें और सभी transactions सही तरीके से execute हों।
3. Database Corruption रोकना
यह गलत updates, duplicate changes और data conflicts को रोककर database को खराब होने से बचाता है।
4. Data Integrity बनाए रखना
यह Database के rules और relationships को सुरक्षित रखता है ताकि data भरोसेमंद बना रहे।
इसे भी पढ़ें:– SQL क्या है?
निवेदन:- अगर आपके पास भी कोई हिंदी में topic या किसी subject से सम्बंधित नोट्स है तो कृपया उसे अपनी फोटो के साथ E-mail करें. हमारा e-mail:- [email protected] है। हम उसे यहां आपकी फ़ोटो के साथ प्रकाशित करेंगें।