DBMS के मुख्य कार्य

आधुनिक डेटाबेस प्रबंधन प्रणालीकई वस्तुओं पर उपयोग किया जाता है, लेकिन एक ही समय में हर कोई नहीं जानता कि वे क्या हैं और आप डीबीएमएस के कार्यों का उपयोग कैसे कर सकते हैं। इस तरह के उपकरण बड़ी संख्या में संभावनाओं से अलग होते हैं, इसलिए, उन्हें पूरी तरह से उपयोग करने के लिए, आपको यह समझना चाहिए कि वे क्या कर सकते हैं और वे उपयोगकर्ता के लिए कैसे उपयोगी हैं।

डेटा प्रबंधन

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

उप कार्य

राम बफर प्रबंधन

अधिकांश मामलों में, कार्ययह पर्याप्त बड़े डेटाबेस में DBMS का उपयोग करने के लिए प्रथागत है, और यह आकार राम की उपलब्ध मात्रा की तुलना में कम से कम बहुत बड़ा है। बेशक, अगर, प्रत्येक डेटा तत्व तक पहुंचने के मामले में, बाहरी मेमोरी के साथ एक आदान-प्रदान किया जाता है, तो बाद की गति स्वयं सिस्टम की गति के अनुरूप होगी, इसलिए, वास्तविक रूप से वास्तविक वृद्धि के लिए एकमात्र विकल्प यह बफरिंग है। राम में जानकारी। इसके अलावा, भले ही ओएस सिस्टम-वाइड बफ़रिंग करता है, उदाहरण के लिए, UNIX के साथ, यह उद्देश्य और बुनियादी कार्यों के साथ DBMS प्रदान करने के लिए पर्याप्त नहीं होगा, क्योंकि इसमें बफरिंग के उपयोगी गुणों के बारे में बहुत अधिक मात्रा में डेटा है। डेटाबेस के प्रत्येक विशिष्ट भाग का उपयोग किया जाता है। इसके कारण, उन्नत प्रणालियां अपने स्वयं के बफ़र्स के सेट को बनाए रखती हैं, साथ ही उन्हें बदलने के लिए एक अनूठा अनुशासन भी।

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

आदान - प्रदान प्रबंधन

लेन-देन संचालन का एक क्रम हैउपयोग किए गए डेटाबेस के साथ, जिसे प्रबंधन प्रणाली एक पूरे के रूप में मानती है। यदि लेन-देन पूरी तरह से सफलतापूर्वक निष्पादित होता है, तो सिस्टम बाहरी मेमोरी में किए गए परिवर्तनों को पूरा करेगा, या इनमें से कोई भी परिवर्तन डेटाबेस की स्थिति को प्रभावित नहीं करेगा। डेटाबेस के तार्किक अखंडता को बनाए रखने के लिए इस ऑपरेशन की आवश्यकता है। यह ध्यान दिया जाना चाहिए कि एकल-उपयोगकर्ता डीबीएमएस का उपयोग करते समय भी लेनदेन तंत्र के सही पाठ्यक्रम को बनाए रखना एक शर्त है, जिसका उद्देश्य और कार्य अन्य प्रकार के प्रणालियों से काफी भिन्न हैं।

उप के मुख्य कार्य

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

उनका क्या मतलब है?

समवर्ती निष्पादित लेनदेन को क्रमबद्ध करनाउनके काम के लिए एक विशेष योजना के निर्माण के लिए प्रदान करता है, जिसमें मिश्रण का कुल प्राप्त प्रभाव उनके अनुक्रमिक निष्पादन के कारण प्राप्त परिणाम के बराबर है।

धारावाहिक निष्पादन योजना हैक्रियाओं की एक निश्चित संरचना जो क्रमबद्धता की ओर ले जाती है। बेशक, अगर सिस्टम लेनदेन के मिश्रण का सही मायने में सिलसिलेवार निष्पादन सुनिश्चित करता है, तो किसी भी उपयोगकर्ता के लिए जो लेनदेन करता है, दूसरों की उपस्थिति पूरी तरह से अदृश्य होगी, सिवाय इसके कि यह एकल की तुलना में थोड़ा धीमा काम करेगा- उपयोगकर्ता मोड।

सबड के बुनियादी कार्यों की संख्या

कई बुनियादी क्रमांकन एल्गोरिदम हैं।केंद्रीयकृत प्रणालियों में, सबसे लोकप्रिय आज एल्गोरिदम हैं जो विभिन्न डेटाबेस ऑब्जेक्ट्स के सिंक्रनाइज़ कैप्चर पर आधारित हैं। किसी भी क्रमांकन एल्गोरिदम का उपयोग करने के मामले में, कुछ डेटाबेस ऑब्जेक्ट्स तक पहुंच पर दो या अधिक लेनदेन के बीच संघर्ष की संभावना प्रदान की जाती है। ऐसी स्थिति में, इस प्रक्रिया के लिए सहायता प्रदान करने के लिए, आपको एक या अधिक प्रक्रियाओं के माध्यम से डेटाबेस में किए गए किसी भी परिवर्तन को समाप्त करने की आवश्यकता है। यह केवल उन स्थितियों में से एक है जब एक बहु-उपयोगकर्ता प्रणाली में एक व्यक्ति दूसरों की उपस्थिति को महसूस करता है।

journaling

आधुनिक के लिए बुनियादी आवश्यकताओं में से एकसिस्टम बाहरी मेमोरी में सूचना भंडारण की विश्वसनीयता सुनिश्चित करने के लिए है। विशेष रूप से, यह प्रदान करता है कि DBMS के मुख्य कार्यों में से किसी भी सॉफ्टवेयर या हार्डवेयर विफलताओं की घटना के बाद डेटाबेस के अंतिम सुसंगत स्थिति को पुनर्स्थापित करने की क्षमता है। अधिकांश मामलों में, हार्डवेयर विफलताओं के लिए दो विकल्पों पर विचार करने की प्रथा है:

  • नरम, जिसे कंप्यूटर के अप्रत्याशित शटडाउन के रूप में व्याख्या किया जा सकता है (सबसे आम मामला एक आपातकालीन बिजली बंद है);
  • कठिन, जो बाहरी मीडिया पर संग्रहीत डेटा के आंशिक या पूर्ण नुकसान की विशेषता है।

सॉफ्टवेयर glitches के उदाहरणों में शामिल हैंसिस्टम को क्रैश करने का कारण बनता है जब वह एक सुविधा का उपयोग करने की कोशिश कर रहा है जो DBMS के मुख्य कार्यों में से नहीं है, या किसी उपयोगकर्ता उपयोगिता को क्रैश करने के लिए, जिसके परिणामस्वरूप एक निश्चित लेनदेन पूरा नहीं हुआ था। पहली स्थिति को एक विशेष प्रकार की नरम विफलता माना जा सकता है, जबकि अंतिम एक एकल लेनदेन के परिणामों से निपटने की आवश्यकता है।

उप उद्देश्य और मुख्य कार्य

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

यह क्या है, और इसे कैसे प्रयोग किया जाता है?

पत्रिका डेटाबेस का एक विशेष हिस्सा हैडेटा, जिसकी पहुंच DBMS फ़ंक्शन की संख्या में शामिल नहीं है, और यह बहुत सावधानी से समर्थित है। कुछ स्थितियों में, विभिन्न भौतिक मीडिया पर स्थित पत्रिका की दो प्रतियों को एक साथ बनाए रखने की भी परिकल्पना की गई है। ये रिपॉजिटरी डेटाबेस के मुख्य भाग में होने वाले किसी भी बदलाव के बारे में जानकारी प्राप्त करते हैं, और विभिन्न नियंत्रण प्रणालियों में, विभिन्न स्तरों पर परिवर्तनों को लॉग इन किया जा सकता है। कुछ स्थितियों में, एक लॉग प्रविष्टि पूरी तरह से एक विशिष्ट तार्किक परिवर्तन ऑपरेशन से मेल खाती है, कहीं - एक बाहरी मेमोरी पेज को संशोधित करने से जुड़ा एक न्यूनतम आंतरिक ऑपरेशन, जबकि कुछ डीबीएमएस दो दृष्टिकोणों के संयोजन के लिए प्रदान करते हैं।

किसी भी मामले में, तथाकथितलॉग करने के लिए "लेखन-आगे की रणनीति"। जब इसे लागू किया जाता है, तो किसी भी डेटाबेस ऑब्जेक्ट में परिवर्तन का संकेत देने वाला रिकॉर्ड परिवर्तित ऑब्जेक्ट से पहले लॉग की बाहरी मेमोरी में प्रवेश करता है। यह ज्ञात है कि यदि एक्सेस डीबीएमएस के कार्य इस प्रोटोकॉल के सामान्य पालन के लिए प्रदान करते हैं, तो जर्नल का उपयोग किसी भी विफलता की स्थिति में डेटाबेस को पुनर्स्थापित करने से जुड़ी किसी भी समस्या को हल करने के लिए किया जा सकता है।

रोलबैक

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

Subd function सबड कॉन्सेप्ट

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

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

कठिन दुर्घटनाएँ

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

भाषा समर्थन

आधुनिक डेटाबेस के साथ काम करने के लिएविभिन्न भाषाओं का उपयोग किया जाता है, और शुरुआती डीबीएमएस में, उद्देश्य, कार्य और अन्य विशेषताएं जिनमें से आधुनिक प्रणालियों से काफी अलग थे, कई विशिष्ट भाषाओं के लिए समर्थन प्रदान किया गया था। ये मुख्य रूप से SDL और DML थे, जिन्हें क्रमशः डेटाबेस स्कीमा को परिभाषित करने और डेटा में हेरफेर करने के लिए डिज़ाइन किया गया था।

सबड फ़ंक्शन संरचना

एसडीएल को परिभाषित करने के लिए इस्तेमाल किया गया थाडेटाबेस की तार्किक संरचना, अर्थात्, डेटाबेस की विशिष्ट संरचना को पहचानने के लिए जो उपयोगकर्ताओं के लिए प्रस्तुत की जाती है। दूसरी ओर, डीएमएल में सूचनाओं में हेरफेर के लिए ऑपरेटरों का एक पूरा परिसर शामिल था, जो आपको डेटाबेस में जानकारी दर्ज करने की अनुमति देता है, साथ ही पहले से मौजूद डेटा को हटा, संशोधित या उपयोग कर सकता है।

DBMS के कार्यों में विभिन्न प्रकार के समर्थन शामिल हैंएकल एकीकृत भाषा, जो डेटाबेस के साथ सामान्य संचालन के लिए आवश्यक किसी भी साधन की उपलब्धता के लिए प्रदान करती है, इसकी प्रारंभिक रचना से शुरू होती है, और एक मानक उपयोगकर्ता इंटरफ़ेस प्रदान करती है। एसक्यूएल का उपयोग मानक भाषा के रूप में किया जाता है जो आज सबसे व्यापक संबंधपरक प्रणालियों के डीबीएमएस के बुनियादी कार्यों को प्रदान करता है।

वह किस तरह का है?

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

उपखंड के मुख्य कार्य शामिल नहीं हैं

SQL भाषा में पूरी सूची शामिल हैविशेष उपकरण जो आपको डेटाबेस की अखंडता बाधाओं को निर्धारित करने की अनुमति देते हैं। फिर से, इस तरह के किसी भी प्रतिबंध को विशेष कैटलॉग तालिकाओं में शामिल किया गया है, और अखंडता नियंत्रण सीधे भाषा के स्तर पर किया जाता है, अर्थात्, डेटाबेस में अखंडता बाधाओं के आधार पर व्यक्तिगत डेटाबेस संशोधन ऑपरेटरों, संकलक को पढ़ने की प्रक्रिया में उत्पन्न होता है। इसी कार्यक्रम कोड।