एटोमिसिटी (डेटाबेस सिस्टम): Difference between revisions
(Created page with "{{short description|Property of the ACID database system}} {{Other uses|Atomicity (disambiguation)}} {{More citations needed|date=April 2020}} डेटाबेस सि...") |
No edit summary |
||
(8 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{short description|Property of the ACID database system}} | {{short description|Property of the ACID database system}} | ||
[[डेटाबेस सिस्टम]] में, '''एटोमिसिटी''' ({{IPAc-en|ˌ|æ|t|ə|ˈ|m|ɪ|s|ə|t|i}}; से {{lang-grc|ἄτομος|átomos|अविभाज्य}}) एसीआईडी (एटोमिसिटी, [[संगति (डेटाबेस सिस्टम)]], [[अलगाव (डेटाबेस सिस्टम)]], [[स्थायित्व (डेटाबेस सिस्टम)]]) [[डेटाबेस लेनदेन|डेटाबेस ट्रांसक्शन]] गुणों में से एक है। एक आणव ट्रांज़ैक्शन डेटाबेस संचालन की एक अविभाज्य और [[अतार्किकता]] श्रृंखला है जैसे कि या तो सब होता है, या कुछ भी नहीं होता है। <ref>{{cite web | |||
[[डेटाबेस सिस्टम]] में, | |||
| access-date = 2011-03-23 | | access-date = 2011-03-23 | ||
| publisher = Webopedia | | publisher = Webopedia | ||
Line 9: | Line 6: | ||
| date = 25 November 2003 | | date = 25 November 2003 | ||
| quote = An operation during which a processor can simultaneously read a location and write it in the same bus operation. This prevents any other processor or I/O device from writing or reading memory until the operation is complete. | | quote = An operation during which a processor can simultaneously read a location and write it in the same bus operation. This prevents any other processor or I/O device from writing or reading memory until the operation is complete. | ||
| url = http://www.webopedia.com/TERM/A/atomic_operation.html}}</ref> | | url = http://www.webopedia.com/TERM/A/atomic_operation.html}}</ref> एटोमिसिटी की प्रत्याभुति केवल आंशिक रूप से होने वाले डेटाबेस के अद्यतनों को रोकता है, जो पूरी श्रृंखला को एकमुश्त अस्वीकार करने की तुलना में अधिक समस्याएँ उत्पन्न कर सकता है। नतीजतन, ट्रांज़ैक्शन को किसी अन्य डेटाबेस क्लाइंट द्वारा प्रगति पर नहीं देखा जा सकता है। एक पल में, यह अभी तक नहीं हुआ है, और अगले समय यह पहले से ही पूरी तरह से हो चुका है (या कुछ भी नहीं हुआ अगर ट्रांज़ैक्शन प्रगति में रद्द कर दिया गया था)। | ||
परमाणु | परमाणु ट्रांज़ैक्शन का एक उदाहरण बैंक खाते A से खाता B में मौद्रिक हस्तांतरण है। इसमें दो संचालन होते हैं, खाते A से पैसा निकालना और खाते B में भेजना। आणव ट्रांज़ैक्शन में इन कार्यों को करना यह सुनिश्चित करता है कि डेटाबेस एक डेटा संगति में बना रहे, यानी, पैसा न तो खोया जाता है और न ही बनाया जाता है यदि उन दोनों में से कोई भी संचालन विफल हो जाता है। <ref>{{cite web | ||
| url = http://archive.oreilly.com/pub/a/onjava/2001/11/07/atomic.html | | url = http://archive.oreilly.com/pub/a/onjava/2001/11/07/atomic.html | ||
| url-status = dead | | url-status = dead | ||
Line 22: | Line 19: | ||
| access-date = 2016-02-28 | | access-date = 2016-02-28 | ||
}}</ref> | }}</ref> | ||
== | इसी शब्द का उपयोग डेटाबेस सिस्टम में फर्स्ट नार्मल फॉर्म की परिभाषा में भी किया जाता है, जहां यह इसके स्थान पर इस अवधारणा को संदर्भित करता है कि फ़ील्ड के मानों में विघटित होने के लिए कई छोटे मान सम्मिलित नहीं हो सकते हैं, जैसे एक स्ट्रिंग जिसमें एकाधिक नाम, संख्याएं, दिनांक, या अन्य प्रकार संकुलित किए जा सकते हैं। | ||
== लांबिकता == | |||
ट्रांज़ैक्शन के अन्य एसीआईडी गुणों के संबंध में परमाणु पूरी तरह से [[ ओर्थोगोनल (कम्प्यूटिंग) |लांबिक (कम्प्यूटिंग)]] व्यवहार नहीं करता है। उदाहरण के लिए, अलगाव (डेटाबेस सिस्टम) एक [[गतिरोध]] जैसे अलगाव उल्लंघन की स्थिति में संलग्न ट्रांसक्शन को वापस रोल करने के लिए एटोमिसिटी पर निर्भर करता है; संगति (डेटाबेस सिस्टम) भी एक अवैध ट्रांसक्शन द्वारा एक निरंतरता उल्लंघन की स्थिति में संलग्न ट्रांसक्शन को वापस रोल करने के लिए एटोमिसिटी पर निर्भर करता है। | |||
इसके परिणामस्वरूप, उल्लंघन का पता लगाने में विफलता और संलग्न | इसके परिणामस्वरूप, उल्लंघन का पता लगाने में विफलता और संलग्न ट्रांज़ैक्शन को वापस लेने से अलगाव या स्थिरता विफलता हो सकती है। | ||
== कार्यान्वयन == | == कार्यान्वयन == | ||
विशिष्ट रूप से, सिस्टम यह इंगित करने के लिए कि कौन से | विशिष्ट रूप से, सिस्टम यह इंगित करने के लिए कि कौन से ट्रांसक्शन प्रारम्भ हो गए हैं और कौन से समाप्त हो गए हैं, कुछ तंत्र प्रदान करके परमाणुकता को लागू करते हैं; या कोई भी परिवर्तन होने से पहले डेटा की एक प्रति ([[रीड-कॉपी-अपडेट]]) रख कर जर्नलिंग ([[जर्नलिंग फाइल सिस्टम|जर्नलिंग संचिका सिस्टम]] देखें) का उपयोग करते हुए, कई संचिका सिस्टम ने डेटा की कई प्रतियों को रखने की आवश्यकता से बचने के लिए तरीके विकसित किए हैं। डेटाबेस सामान्यतः परिवर्तनों को ट्रैक करने के लिए लॉगिंग/जर्नलिंग के कुछ रूपों का उपयोग करके इसे कार्यान्वित करते हैं। परिवर्तनों के सफलतापूर्वक होने के बाद सिस्टम लॉग्स (प्रायः[[ मेटाडाटा | मेटाडाटा]]) को आवश्यक रूप से समकालिक करता है। बाद में, क्रैश पुनराप्ति अपूर्ण प्रविष्टियों पर ध्यान नहीं देती है। हालांकि कार्यान्वयन कारकों के आधार पर अलग-अलग होते हैं जैसे कि समवर्ती स्तिथि, एटोमिसिटी का सिद्धांत - यानी पूर्ण सफलता या पूर्ण विफलता - बनी रहती है। | ||
आखिरकार, कोई भी एप्लिकेशन-स्तरीय कार्यान्वयन | आखिरकार, कोई भी एप्लिकेशन-स्तरीय कार्यान्वयन ऑपरेटिंग-सिस्टम की कार्यक्षमता पर निर्भर करता है। संचिका-सिस्टम स्तर पर, [[POSIX|पीओएसआईएक्स]]- संगत सिस्टम [[सिस्टम कॉल]] प्रदान करते हैं जैसे<code>ओपन(2)</code>और<code>फ्लॉक(2)</code>जो एप्लिकेशन को किसी संचिका को परमाणु रूप से खोलने या लॉक करने की अनुमति देता है। प्रक्रिया स्तर पर, पीओएसआईएक्स थ्रेड्स पर्याप्त तुल्यकालन आदिम प्रदान करते हैं। | ||
हार्डवेयर स्तर के लिए [[टेस्ट-एंड-सेट]], [[लायें और जोड़ें]], [[ तुलना और अदला-बदली ]], या लोड-लिंक/स्टोर-कंडीशनल जैसे [[ स्मृति बाधा ]] | हार्डवेयर स्तर के लिए [[टेस्ट-एंड-सेट]], [[लायें और जोड़ें|फेच-एंड-ऐड]],[[ तुलना और अदला-बदली | कमपेअर-एंड-स्वैप]], या लोड-लिंक/स्टोर-कंडीशनल जैसे[[ स्मृति बाधा | स्मृति बाधा]] के साथ [[रैखिकता]] की आवश्यकता होती है। सुवाह्य ऑपरेटिंग सिस्टम केवल समकालन को लागू करने के लिए रुकावट को ब्लॉक नहीं कर सकता है, क्योंकि हार्डवेयर जिसमें [[ हाइपर थ्रेडिंग |हाइपर थ्रेडिंग]] या [[ बहु प्रसंस्करण |मल्टी-प्रोसेसिंग]] जैसे समवर्ती निष्पादन का अभाव है, अब अत्यंत दुर्लभ है। | ||
== यह भी देखें == | == यह भी देखें == | ||
* [[परमाणु संचालन]] | * [[परमाणु संचालन]] | ||
* [[लेनदेन प्रक्रिया]] | * [[लेनदेन प्रक्रिया|ट्रांज़ैक्शन प्रक्रिया]] | ||
* [[लंबे समय तक चलने वाला लेन-देन]] | * [[लंबे समय तक चलने वाला लेन-देन|लंबे समय तक चलने वाला ट्रांज़ैक्शन]] | ||
* | * रीड-कॉपी-अपडेट | ||
==संदर्भ== | ==संदर्भ== | ||
{{reflist}} | {{reflist}} | ||
{{DEFAULTSORT:Atomicity (Database Systems)}} | {{DEFAULTSORT:Atomicity (Database Systems)}} | ||
[[Category: | [[Category:Articles containing Ancient Greek (to 1453)-language text|Atomicity (Database Systems)]] | ||
[[Category:Created On 15/05/2023]] | [[Category:Created On 15/05/2023|Atomicity (Database Systems)]] | ||
[[Category:Lua-based templates|Atomicity (Database Systems)]] | |||
[[Category:Machine Translated Page|Atomicity (Database Systems)]] | |||
[[Category:Pages with script errors|Atomicity (Database Systems)]] | |||
[[Category:Templates Vigyan Ready|Atomicity (Database Systems)]] | |||
[[Category:Templates that add a tracking category|Atomicity (Database Systems)]] | |||
[[Category:Templates that generate short descriptions|Atomicity (Database Systems)]] | |||
[[Category:Templates using TemplateData|Atomicity (Database Systems)]] | |||
[[Category:डेटा प्रबंधन|Atomicity (Database Systems)]] | |||
[[Category:लेनदेन प्रक्रिया|Atomicity (Database Systems)]] |
Latest revision as of 13:06, 7 November 2023
डेटाबेस सिस्टम में, एटोमिसिटी (/ˌætəˈmɪsəti/; से Ancient Greek: ἄτομος, romanized: átomos, lit. 'अविभाज्य') एसीआईडी (एटोमिसिटी, संगति (डेटाबेस सिस्टम), अलगाव (डेटाबेस सिस्टम), स्थायित्व (डेटाबेस सिस्टम)) डेटाबेस ट्रांसक्शन गुणों में से एक है। एक आणव ट्रांज़ैक्शन डेटाबेस संचालन की एक अविभाज्य और अतार्किकता श्रृंखला है जैसे कि या तो सब होता है, या कुछ भी नहीं होता है। [1] एटोमिसिटी की प्रत्याभुति केवल आंशिक रूप से होने वाले डेटाबेस के अद्यतनों को रोकता है, जो पूरी श्रृंखला को एकमुश्त अस्वीकार करने की तुलना में अधिक समस्याएँ उत्पन्न कर सकता है। नतीजतन, ट्रांज़ैक्शन को किसी अन्य डेटाबेस क्लाइंट द्वारा प्रगति पर नहीं देखा जा सकता है। एक पल में, यह अभी तक नहीं हुआ है, और अगले समय यह पहले से ही पूरी तरह से हो चुका है (या कुछ भी नहीं हुआ अगर ट्रांज़ैक्शन प्रगति में रद्द कर दिया गया था)।
परमाणु ट्रांज़ैक्शन का एक उदाहरण बैंक खाते A से खाता B में मौद्रिक हस्तांतरण है। इसमें दो संचालन होते हैं, खाते A से पैसा निकालना और खाते B में भेजना। आणव ट्रांज़ैक्शन में इन कार्यों को करना यह सुनिश्चित करता है कि डेटाबेस एक डेटा संगति में बना रहे, यानी, पैसा न तो खोया जाता है और न ही बनाया जाता है यदि उन दोनों में से कोई भी संचालन विफल हो जाता है। [2]
इसी शब्द का उपयोग डेटाबेस सिस्टम में फर्स्ट नार्मल फॉर्म की परिभाषा में भी किया जाता है, जहां यह इसके स्थान पर इस अवधारणा को संदर्भित करता है कि फ़ील्ड के मानों में विघटित होने के लिए कई छोटे मान सम्मिलित नहीं हो सकते हैं, जैसे एक स्ट्रिंग जिसमें एकाधिक नाम, संख्याएं, दिनांक, या अन्य प्रकार संकुलित किए जा सकते हैं।
लांबिकता
ट्रांज़ैक्शन के अन्य एसीआईडी गुणों के संबंध में परमाणु पूरी तरह से लांबिक (कम्प्यूटिंग) व्यवहार नहीं करता है। उदाहरण के लिए, अलगाव (डेटाबेस सिस्टम) एक गतिरोध जैसे अलगाव उल्लंघन की स्थिति में संलग्न ट्रांसक्शन को वापस रोल करने के लिए एटोमिसिटी पर निर्भर करता है; संगति (डेटाबेस सिस्टम) भी एक अवैध ट्रांसक्शन द्वारा एक निरंतरता उल्लंघन की स्थिति में संलग्न ट्रांसक्शन को वापस रोल करने के लिए एटोमिसिटी पर निर्भर करता है।
इसके परिणामस्वरूप, उल्लंघन का पता लगाने में विफलता और संलग्न ट्रांज़ैक्शन को वापस लेने से अलगाव या स्थिरता विफलता हो सकती है।
कार्यान्वयन
विशिष्ट रूप से, सिस्टम यह इंगित करने के लिए कि कौन से ट्रांसक्शन प्रारम्भ हो गए हैं और कौन से समाप्त हो गए हैं, कुछ तंत्र प्रदान करके परमाणुकता को लागू करते हैं; या कोई भी परिवर्तन होने से पहले डेटा की एक प्रति (रीड-कॉपी-अपडेट) रख कर जर्नलिंग (जर्नलिंग संचिका सिस्टम देखें) का उपयोग करते हुए, कई संचिका सिस्टम ने डेटा की कई प्रतियों को रखने की आवश्यकता से बचने के लिए तरीके विकसित किए हैं। डेटाबेस सामान्यतः परिवर्तनों को ट्रैक करने के लिए लॉगिंग/जर्नलिंग के कुछ रूपों का उपयोग करके इसे कार्यान्वित करते हैं। परिवर्तनों के सफलतापूर्वक होने के बाद सिस्टम लॉग्स (प्रायः मेटाडाटा) को आवश्यक रूप से समकालिक करता है। बाद में, क्रैश पुनराप्ति अपूर्ण प्रविष्टियों पर ध्यान नहीं देती है। हालांकि कार्यान्वयन कारकों के आधार पर अलग-अलग होते हैं जैसे कि समवर्ती स्तिथि, एटोमिसिटी का सिद्धांत - यानी पूर्ण सफलता या पूर्ण विफलता - बनी रहती है।
आखिरकार, कोई भी एप्लिकेशन-स्तरीय कार्यान्वयन ऑपरेटिंग-सिस्टम की कार्यक्षमता पर निर्भर करता है। संचिका-सिस्टम स्तर पर, पीओएसआईएक्स- संगत सिस्टम सिस्टम कॉल प्रदान करते हैं जैसेओपन(2)
औरफ्लॉक(2)
जो एप्लिकेशन को किसी संचिका को परमाणु रूप से खोलने या लॉक करने की अनुमति देता है। प्रक्रिया स्तर पर, पीओएसआईएक्स थ्रेड्स पर्याप्त तुल्यकालन आदिम प्रदान करते हैं।
हार्डवेयर स्तर के लिए टेस्ट-एंड-सेट, फेच-एंड-ऐड, कमपेअर-एंड-स्वैप, या लोड-लिंक/स्टोर-कंडीशनल जैसे स्मृति बाधा के साथ रैखिकता की आवश्यकता होती है। सुवाह्य ऑपरेटिंग सिस्टम केवल समकालन को लागू करने के लिए रुकावट को ब्लॉक नहीं कर सकता है, क्योंकि हार्डवेयर जिसमें हाइपर थ्रेडिंग या मल्टी-प्रोसेसिंग जैसे समवर्ती निष्पादन का अभाव है, अब अत्यंत दुर्लभ है।
यह भी देखें
संदर्भ
- ↑ "atomic operation". Webopedia. 25 November 2003. Retrieved 2011-03-23.
An operation during which a processor can simultaneously read a location and write it in the same bus operation. This prevents any other processor or I/O device from writing or reading memory until the operation is complete.
- ↑ Amsterdam, Jonathan. "Atomic File Transactions, Part 1". O'Reilly. Archived from the original on 2016-03-03. Retrieved 2016-02-28.