What is Relational database management system
Relational database management system एक डेटाबेस मैनेजमेंट सिस्टम है जो रिलेशनल मॉडल पर आधारित है| एक डेटाबेस जिसमें डाटा टेबल में स्टोर होता है तथा उस डेटा के मध्य रिलेशनशिप भी टेबल में स्टोर होती हैं यह टेबल के फॉर्म्स को बिना बदले हुए सभी तरीकों से डाटा को एक्सेस किया जा सकता है|
रिलेशनल डेटाबेस मैनेजमेंट सिस्टम को RDBMS के नाम से भी जाना जाता है, रिलेशनल डेटाबेस बहुत शक्तिशाली है क्योंकि इसमें डाटा को डाटा बेस में स्टोर करना और इसे ऑपरेट करना आसान है| रिलेशनल डेटाबेस का अति आवश्यक फीचर यह है कि इसमें एक ही डेटाबेस में कई टेबल को स्टोर कर सकते हैं तथा सारी टेबल के डेटा के मध्य में रिलेशनशिप को स्थापित किया जा सकता है|अतः रिलेशनल डेटाबेस मैनेजमेंट सिस्टम डेटाबेस मैनेजमेंट सिस्टम का एडवांसमेंट है| रिलेशनल डेटाबेस में एक डेटाबेस में प्रयोग MS Access, MS SQL, server Oracle इत्यादि मुख्य रूप से प्रयोग किए जाने वाले RDBMS सॉफ्टवेयर है|
रिलेशनल डेटाबेस का उपयोग क्यों (Why to use RDBMS)
RDBMS रिलेशनल डेटा मॉडल पर आधारित है इसमें डाटा को Row तथा Column के रूप में स्टोर किया जाता है और डेटाबेस में एक से अधिक टेबल के मध्य की रिलेशनशिप टेबल के रूप में स्टोर होती है RDBMS का प्रयोग करने के मुख्य कारण निम्नलिखित हैं
- यह डाटा को टेबल के रूप में उपलब्ध कराता है|
- इसमें डाटा को रो तथा कॉलम के रूप में भी स्टोर कर सकते है|
- Row को यूनिक आइडेंटिटी Primary key के द्वारा उपलब्ध कर सकते है|
- यह डाटा को शीघ्रता से वापस करने के लिए Index को क्रिएट करता है|
- दो या दो से अधिक टेबल के बीच में रिलेशनशिप को स्थापित कर सकते हैं|
- मल्टी यूजर एक्सेसिबिलिटी को उपलब्ध कराता है जिसे व्यक्तिगत यूजर्स के द्वारा नियंत्रित किया जा सकता है|
Features of RDBMS
RDBMS के निम्नलिखित विशेषताएं होती है
- Tabular data model – डीबीएमएस में डाटा को एक टेबल के रुप में रखा जाता है अतः इसे समझना बहुत ही आसान होता है साथ ही डाटा को बहुत आसानी से एक्सेस किया जा सकता है।
- Standard language – RDBMS में डाटा पर कार्य करने के लिए एक स्टैंडर्ड लैंग्वेज जैसे SQL का प्रयोग किया जाता है, जो उपयोग करने में सरल है।
- Parallel operations – RDBMS में एक साथ होने वाले parallel operations को सपोर्ट करता है।
- Distributed database – RDBMS में उपलब्ध डाटा बेस को कंप्यूटर पर डिस्ट्रीब्यूट करके रखा जा सकता है।
- Higher quality – RDBMS मे high क्वालिटी वाले रिलाएबल रूल्स का प्रयोग किया जाता है जिससे सिस्टम फेलियर की पॉसिबिलिटी कम हो जाती है।
Difference between DBMS and RDBMS
हालाँकि DBMS और RDBMS दोनों का उपयोग physical database में जानकारी स्टोर करने के लिए किया जाता है, लेकिन उनके बीच कुछ उल्लेखनीय अंतर हैं। DBMS और RDBMS के बीच मुख्य अंतर नीचे दिए गए हैं:
S.No, | DBMS | RDBMS |
---|---|---|
1 | DBMS एप्लिकेशन डेटा को फाइल के रूप में स्टोर करते हैं। | RDBMS एप्लिकेशन डेटा को एक सारणीबद्ध रूप में स्टोर करते हैं। |
2 | DBMS में, डेटा को आमतौर पर या तो एक hierarchical form में या navigational form में स्टोर किया जाता है। | RDBMS में, टेबल्स में एक पहचानकर्ता होता है जिसे primary key कहा जाता है और डेटा वैल्यू टेबल्स के रूप में स्टोर होते हैं। |
3 | DBMS में Normalization मौजूद नहीं होता है। | डीबीएमएस में Normalization मौजूद होता है। |
4 | डेटा हेरफेर के संबंध में DBMS कोई सुरक्षा लागू नहीं करता है। | RDBMS ACID (Atomocity, Consistency, Isolation and Durability) प्रॉपर्टी के उद्देश्य के लिए integrity constraint को परिभाषित करता है। |
5 | DBMS डेटा स्टोर करने के लिए फाइल सिस्टम का उपयोग करता है, इसलिए टेबल्स के बीच कोई relation नहीं होगा। | RDBMS में, डेटा वैल्यू को टेबल्स के रूप में स्टोर किया जाता है, इसलिए इन डेटा वैल्यू के बीच relationship टेबल के रूप में भी स्टोर किया जाएगा। |
66 | DBMS को स्टोर जानकारी तक पहुँचने के लिए कुछ समान तरीके प्रदान करने होते हैं। | RDBMS सिस्टम डेटा की स्टोर जानकारी तक पहुँचने के लिए data और relationship के बीच tabular structure को सपोर्ट करता है। |
7 | DBMS distributed database को सपोर्ट नहीं करता है। | DBMS distributed database को सपोर्ट करता है। |
8 | DBMS छोटे संगठन के लिए है और छोटे डेटा से निपटने के लिए है। यह single user को सपोर्ट करता है। | RDBMS को बड़ी मात्रा में डेटा को संभालने के लिए डिज़ाइन किया गया है। यह कई यूजर को सपोर्ट समर्थन करता है। |
9 | डीबीएमएस के उदाहरण file systems, xml आदि हैं। | RDBMS के उदाहरण हैं mysql, postgre, sql server, oracle आदि। |
12 Rules of Dr Edgar Frank Codd
19 अगस्त 1969 में Dr Edgar Frank Codd ने IBM में एक रिलेशनल डेटाबेस का प्रिंसिपल प्रस्तुत किया जिसके अनुसार रिलेशनल डेटाबेस सिस्टम एक ऐसा डेटाबेस मैनेजमेंट सिस्टम होता है जिसमें डाटा को एक टेबल (Relation) के रूप में रिप्रजेंट किया जाता है वही टेबल कि प्रत्येक record को tuple तथा कॉलम एट्रीब्यूट कहलाते हैं| टेबल की एक Row के अंतर्गत डेटाबेस के रिकार्ड्स को रखा जाता है|
RDBMS के लिए E.F. Codd ने 12 रूल्स को बनाया था जो यदि किसी डेटाबेस मैनेजमेंट सिस्टम के द्वारा पालन किए जाते हैं तो उस डीबीएमएस को रिलेशनल डेटाबेस मैनेजमेंट सिस्टम कह सकते हैं यह रूल्स निम्नलिखित हैं
EF Codd RDBMS Rules
- The information rule – रिलेशनल डेटाबेस में उपलब्ध सभी सूचनाओं को एक टेबल के रूप में ही रखा जाना चाहिए।
- Granted access – टेबल का नाम, प्राइमरी Key तथा कॉलम नेम इत्यादि के आधार पर डेटाबेस के प्रत्येक डाटा को एक्सेस किया जाए यह सुनिश्चित होना चाहिए।
- Systematic treatment of null values – डेटाबेस में रिकॉर्ड को इन्सर्ट (Insert) करते समय हमारे द्वारा कई values को छोड़ दिया जाता है, जिन्हें रिलेशनल डेटाबेस में null values की तरह माना जाना चाहिए, null value न तो ब्लैंक स्पेस (Blank Space) होती हैं और ना ही जीरो होती है।
- Comprehensive data sub language rule – प्रत्येक डेटाबेस के द्वारा कम से कम एक लैंग्वेज का सपोर्ट होना आवश्यक है सामान्यतः सभी RDBMS में एसक्यूएल (SQL – Structure Query Language) का प्रयोग किया जाता है।
- Dynamic online catalog based on relational model – एक रिलेशनल डेटाबेस में डाटा को जिस प्रकार से एक्सेस किया जाता है उसी प्रकार से डेटाबेस के स्ट्रक्चर को भी एक्सेस करने की सुविधा होनी चाहिए।
- View updating rule – रिलेशनल डेटाबेस में किसी टेबल के लॉजिकल रिप्रजेंटेशन के तरीके View कहलाते हैं प्रत्येक View द्वारा डाटा मैनीपुलेशन की एक समान Full Range का सपोर्ट किया जाना चाहिए।
- High table insert update delete – रिलेशनल डेटाबेस में इंसर्ट अपडेट तथा डिलीट फंक्शन को डाटा के प्रत्येक ग्रुप पर अप्लाई किया जा सके, यह सुनिश्चित किया जाना चाहिए।
- Physical data Independence – डेटाबेस से इंफॉर्मेशन को प्राप्त करने तथा उसमें स्टोर करने की फिजिकल मेथड यूजर से पृथक होनी चाहिए।
- Logical data Independence – डेटाबेस की लॉजिकल संरचना अथवा टेबल में किए गए बदलाव जिसका प्रभाव डाटा viewing method पर नहीं पढ़ना चाहिए।
- Integrity Independence – यूज़र द्वारा इनपुट किए जा रहे डाटा की इंटीग्रिटी को बनाए रखने के लिए डेटाबेस लैंग्वेज में आवश्यक constraints होना चाहिए।
- Distribution Independence – एक रिलेशनल डेटाबेस में कार्य करते समय यूजर को पूरी तरह unaware होना चाहिए कि डेटाबेस डिस्ट्रिब्यूटेड है या नहीं।
- Non Sub version rule – डेटाबेस लैंग्वेज के अतिरिक्त डेटाबेस के स्ट्रक्चर को चेंज करने का कोई भी अन्य रूल नहीं होना चाहिए।