रिलेशनल मॉडल क्या है?
रिलेशनल मॉडल (आरएम) संबंधों के संग्रह के रूप में डेटाबेस का प्रतिनिधित्व करता है। एक संबंध और कुछ नहीं बल्कि मूल्यों की एक तालिका है। तालिका की प्रत्येक पंक्ति संबंधित डेटा मानों के संग्रह का प्रतिनिधित्व करती है। तालिका में ये पंक्तियाँ एक वास्तविक-विश्व इकाई या संबंध को दर्शाती हैं।
तालिका नाम और स्तंभ नाम प्रत्येक पंक्ति में मूल्यों के अर्थ की व्याख्या करने में सहायक होते हैं। डेटा को संबंधों के एक समूह के रूप में दर्शाया जाता है। रिलेशनल मॉडल में, डेटा को टेबल के रूप में संग्रहीत किया जाता है। हालांकि, डेटा का भौतिक भंडारण उस तरह से स्वतंत्र है जिस तरह से डेटा तार्किक रूप से व्यवस्थित होते हैं।
कुछ लोकप्रिय रिलेशनल डेटाबेस मैनेजमेंट सिस्टम हैं:
- DB2 और Informix डायनेमिक सर्वर - IBM
- Oracle और RDB - Oracle
- SQL सर्वर और पहुँच - Microsoft
इस ट्यूटोरियल में, आप सीखेंगे
- संबंधपरक मॉडल अवधारणाओं
- संबंधपरक अखंडता की कमी
- रिलेशनल मॉडल में संचालन
- रिलेशनल मॉडल बनाने के लिए सर्वश्रेष्ठ अभ्यास
- संबंधपरक मॉडल का उपयोग करने के लाभ
- रिलेशनल मॉडल का उपयोग करने के नुकसान
संबंधपरक मॉडल अवधारणाओं
- विशेषता: तालिका में प्रत्येक स्तंभ। गुण एक संबंध को परिभाषित करने वाले गुण हैं। जैसे, Student_Rollno, NAME, आदि।
- टेबल्स - रिलेशनल मॉडल में, संबंध तालिका प्रारूप में सहेजे जाते हैं। यह अपनी संस्थाओं के साथ संगृहीत है। एक तालिका में दो गुणन पंक्तियाँ और स्तंभ हैं। पंक्तियाँ रिकॉर्ड का प्रतिनिधित्व करती हैं और कॉलम विशेषताओं का प्रतिनिधित्व करते हैं।
- टुपल - यह एक मेज की एकल पंक्ति के अलावा कुछ भी नहीं है, जिसमें एक एकल रिकॉर्ड होता है।
- संबंध योजना: एक संबंध स्कीमा अपने गुणों के साथ संबंध के नाम का प्रतिनिधित्व करता है।
- डिग्री: कुल विशेषताओं जो संबंध में डिग्री को संबंध की डिग्री कहा जाता है।
- कार्डिनैलिटी: तालिका में मौजूद पंक्तियों की कुल संख्या।
- स्तंभ: स्तंभ किसी विशिष्ट विशेषता के लिए मानों के समूह का प्रतिनिधित्व करता है।
- संबंध उदाहरण - संबंध उदाहरण RDBMS सिस्टम में ट्यूपल्स का एक सीमित सेट है। संबंध उदाहरणों में कभी डुप्लीकेट ट्यूपल्स नहीं होते हैं।
- संबंध कुंजी - प्रत्येक पंक्ति में एक, दो या कई गुण होते हैं, जिसे संबंध कुंजी कहा जाता है।
- डोमेन की विशेषता - हर विशेषता का कुछ पूर्व-परिभाषित मूल्य और दायरा होता है जिसे विशेषता डोमेन के रूप में जाना जाता है
संबंधपरक अखंडता की कमी
DBMS में रिलेशनल इंटीग्रिटी की कमी उन शर्तों को संदर्भित करती है जो वैध संबंध के लिए मौजूद होनी चाहिए। DBMS में ये संबंधपरक बाधाएँ डेटाबेस का प्रतिनिधित्व करने वाले मिनी-वर्ल्ड में नियमों से ली गई हैं।
DBMS में कई तरह के इंटीग्रिटी कंस्ट्रक्शन हैं। रिलेशनल डेटाबेस प्रबंधन प्रणाली पर बाधाओं को ज्यादातर तीन मुख्य श्रेणियों में विभाजित किया गया है:
- डोमेन की कमी
- मुख्य बाधाओं
- रेफ़रेंशियल इंटिग्रिटी की कमी
डोमेन की कमी
यदि डोमेन में संबंधित विशेषता मान दिखाई नहीं दे रहा है या यह उपयुक्त डेटा प्रकार का नहीं है तो डोमेन अवरोधों का उल्लंघन किया जा सकता है।
डोमेन बाधाएँ निर्दिष्ट करती हैं कि प्रत्येक टपल के भीतर, और प्रत्येक विशेषता का मान अद्वितीय होना चाहिए। यह डेटा प्रकारों के रूप में निर्दिष्ट किया जाता है जिसमें मानक डेटा प्रकार पूर्णांक, वास्तविक संख्या, वर्ण, बूलियन, चर लंबाई तार, आदि शामिल हैं।
उदाहरण:
Create DOMAIN CustomerNameCHECK (value not NULL)
दिखाया गया उदाहरण एक डोमेन बाधा पैदा करता है जैसे कि CustomerName NULL नहीं है
मुख्य बाधाओं
एक विशेषता जो किसी संबंध में एक विशिष्ट पहचान कर सकती है उसे तालिका की कुंजी कहा जाता है। संबंध में विभिन्न tuples के लिए विशेषता का मूल्य अद्वितीय होना चाहिए।
उदाहरण:
दी गई तालिका में, CustomerID ग्राहक तालिका की एक प्रमुख विशेषता है। यह एक ग्राहक के लिए एक ही कुंजी होने की सबसे अधिक संभावना है, CustomerID = 1 केवल CustomerName = "Google" के लिए है।
ग्राहक आईडी, ग्राहक पहचान | ग्राहक का नाम | स्थिति |
1 | गूगल | सक्रिय |
२ | वीरांगना | सक्रिय |
३ | सेब | निष्क्रिय |
रेफ़रेंशियल इंटिग्रिटी की कमी
DBMS में प्रासंगिक अखंडता बाधाएं विदेशी कुंजी की अवधारणा पर आधारित हैं। एक विदेशी कुंजी एक रिश्ते की एक महत्वपूर्ण विशेषता है जिसे अन्य रिश्तों में संदर्भित किया जाना चाहिए। प्रासंगिक अखंडता बाधा स्थिति होती है जहां संबंध एक अलग या समान संबंध की एक प्रमुख विशेषता को संदर्भित करता है। हालाँकि, वह मुख्य तत्व तालिका में मौजूद होना चाहिए।
उदाहरण:
उपरोक्त उदाहरण में, हमारे 2 संबंध हैं, ग्राहक और बिलिंग।
CustomerID = 1 के लिए टपल को संबंध बिलिंग में दो बार संदर्भित किया जाता है। इसलिए हम जानते हैं कि ग्राहक का नाम = Google के पास बिलिंग राशि $ 300 है
रिलेशनल मॉडल में संचालन
रिलेशनल डेटाबेस मॉडल पर किए गए चार बुनियादी अपडेट ऑपरेशन हैं
डालें, अपडेट करें, हटाएं और चुनें।
- सम्मिलित का उपयोग संबंध में डेटा डालने के लिए किया जाता है
- डिलीट का उपयोग टेबल से ट्यूपल्स को हटाने के लिए किया जाता है।
- संशोधित आपको मौजूदा टुपल्स में कुछ विशेषताओं के मूल्यों को बदलने की अनुमति देता है।
- चयन करें आप डेटा की एक विशिष्ट श्रेणी का चयन करने की अनुमति देता है।
जब भी इनमें से कोई एक ऑपरेशन लागू होता है, तो संबंधित डेटाबेस स्कीमा पर निर्दिष्ट अखंडता बाधाओं का कभी भी उल्लंघन नहीं किया जाना चाहिए।
ऑपरेशन डालें
सम्मिलित ऑपरेशन एक नए टपल के लिए विशेषता का मान देता है जिसे एक संबंध में डाला जाना चाहिए।
अद्यतन अद्यतन करें
आप देख सकते हैं कि नीचे दिए गए रिलेशन टेबल में CustomerName = 'Apple' को एक्टिव से एक्टिव में अपडेट किया गया है।
ऑपरेशन हटाएं
विलोपन को निर्दिष्ट करने के लिए, संबंध की विशेषताओं पर एक शर्त टपल को हटाए जाने का चयन करती है।
ऊपर दिए गए उदाहरण में, CustomerName = "Apple" तालिका से हटा दिया गया है।
यदि डिलीट किया गया टुपल उसी डेटाबेस में अन्य ट्यूपल्स से विदेशी कुंजियों द्वारा संदर्भित किया जाता है, तो डिलीट ऑपरेशन, रेफरेंशियल अखंडता का उल्लंघन कर सकता है।
ऑपरेशन का चयन करें
ऊपर दिए गए उदाहरण में, CustomerName = "Amazon" का चयन किया गया है
रिलेशनल मॉडल बनाने के लिए सर्वश्रेष्ठ अभ्यास
- डेटा को संबंधों के संग्रह के रूप में प्रस्तुत किया जाना चाहिए
- प्रत्येक संबंध को तालिका में स्पष्ट रूप से चित्रित किया जाना चाहिए
- पंक्तियों में एक इकाई के उदाहरणों के बारे में डेटा होना चाहिए
- कॉलम में इकाई की विशेषताओं के बारे में डेटा होना चाहिए
- तालिका के कक्षों को एकल मान रखना चाहिए
- प्रत्येक कॉलम को एक विशिष्ट नाम दिया जाना चाहिए
- कोई भी दो पंक्तियाँ समान नहीं हो सकतीं
- किसी विशेषता का मान एक ही डोमेन से होना चाहिए
संबंधपरक मॉडल का उपयोग करने के लाभ
- सादगी : DBMS में एक संबंधपरक डेटा मॉडल पदानुक्रमित और नेटवर्क मॉडल की तुलना में सरल है।
- स्ट्रक्चरल इंडिपेंडेंस : रिलेशनल डेटाबेस केवल डेटा से संबंधित होता है न कि किसी स्ट्रक्चर के साथ। इससे मॉडल के प्रदर्शन में सुधार हो सकता है।
- उपयोग करने में आसान : DBMS में रिलेशनल मॉडल आसान है क्योंकि पंक्तियों और स्तंभों से युक्त तालिकाओं को समझना काफी स्वाभाविक और सरल है
- क्वेरी क्षमता : यह जटिल डेटाबेस नेविगेशन से बचने के लिए SQL जैसी उच्च-स्तरीय क्वेरी भाषा के लिए संभव बनाता है।
- डेटा स्वतंत्रता : किसी भी एप्लिकेशन को बदलने के बिना संबंधित डेटाबेस की संरचना को बदला जा सकता है।
- स्केलेबल : कई रिकॉर्ड, या पंक्तियों और फ़ील्ड्स की संख्या के संबंध में, एक डेटाबेस को इसकी उपयोगिता बढ़ाने के लिए बढ़ाना चाहिए।
रिलेशनल मॉडल का उपयोग करने के नुकसान
- कुछ संबंधपरक डेटाबेस में क्षेत्र की सीमाएँ होती हैं जिन्हें पार नहीं किया जा सकता है।
- संबंधपरक डेटाबेस कभी-कभी जटिल हो सकते हैं क्योंकि डेटा की मात्रा बढ़ती है, और डेटा के टुकड़ों के बीच संबंध अधिक जटिल हो जाते हैं।
- जटिल रिलेशनल डेटाबेस सिस्टम से अलग-थलग डेटाबेस हो सकते हैं जहाँ सूचना को एक सिस्टम से दूसरे सिस्टम में साझा नहीं किया जा सकता है।
सारांश
- संबंधपरक डेटाबेस मॉडलिंग डेटाबेस को संबंधों (तालिकाओं) के संग्रह के रूप में प्रस्तुत करता है
- एट्रिब्यूट, टेबल्स, टपल, रिलेशन स्कीम, डिग्री, कार्डिनैलिटी, कॉलम, रिलेशनशिप इंस्टेंस, रिलेशनल मॉडल के कुछ महत्वपूर्ण घटक हैं
- संबंधपरक वफ़ादारी बाधाओं को उन शर्तों के लिए संदर्भित किया जाता है जो DBMS में एक वैध संबंध दृष्टिकोण के लिए मौजूद होना चाहिए
- यदि डोमेन में संबंधित विशेषता मान दिखाई नहीं दे रहा है या यह उपयुक्त डेटा प्रकार का नहीं है तो डोमेन बाधाओं का उल्लंघन किया जा सकता है
- सम्मिलित करें, चुनें, संशोधित करें और हटाएं रिलेशनल मॉडल बाधाओं में किए गए संचालन हैं
- रिलेशनल डेटाबेस केवल डेटा से संबंधित है न कि किसी संरचना के साथ जो मॉडल के प्रदर्शन को बेहतर बना सकता है
- DBMS में रिलेशनल मॉडल के लाभ सादगी, संरचनात्मक स्वतंत्रता, उपयोग में आसानी, क्वेरी क्षमता, डेटा स्वतंत्रता, स्केलेबिलिटी, आदि हैं।
- कुछ संबंधपरक डेटाबेस में क्षेत्र की सीमाएँ होती हैं जिन्हें पार नहीं किया जा सकता है।