नमस्ते दोस्तों - हमने इस पोस्ट में Characteristics of DBMS in Hindi ( DBMS की विशेषताएं )के बारें में पूरे detail के साथ पढेंगे. मैंने इसे बहुत ही सिंपल शब्दों में लिखा है. आप इसे पूरा पढ़िए, आपको यह आसानी से समझ में आ जायेगा. तो चलिए शुरू करते हैं पढना :-
- Real World Entity
- Self-Describing Nature
- Support ACID Properties
- Concurrent Use of Database
- Insulation Between Data and Program
- Atomicity of Operations (Transactions)
- Data Persistence
- Stores Any Kind of Structured
- Data Backup and Recovery
- SQL and No-SQL Data bases
- Data Integrity
- Cost
- Security
Real World Entity
DBMS की सबसे महत्वपूर्ण और आसानी से समझी जाने वाली विशेषता यह है कि यह realistic है।
DBMS बहुत realistic है और इसकी architecture को design करने के लिए real-world entities का उपयोग किया जाता है। इसके अलावा, DBMS द्वारा behavior और attributes का उपयोग किया जाता है।
DBMS (Database Management System) को इस तरह से developed किया गया है कि यह बड़े-बड़े business organizations को store कर सके और उनके व्यावसायिक data को security के साथ manage कर सके।
Database सब्जियां, दूध, ब्रेड आदि की कीमत जैसी जानकारी manage कर सकता है। DBMS में, real-world entities की तरह दिखती हैं।
Example - अगर हम एक Student database बनाना चाहते हैं, तो हमें किसी entity की आवश्यकता होती है। कोई भी student अपना data manage कर सकता है।
Database में, यह real-world entities होनी चाहिए। Student database में सबसे अधिक इस्तेमाल की जाने वाली विशेषताएँ name, age, gender, roll number आदि हैं।
इसे भी पढ़े :
Self-Describing Nature
एक DBMS में एक डेटाबेस होता है और उसके साथ मेटाडेटा भी होता है। उदाहरण के लिए एक विशेष स्कूल के लिए DBMS में, डेटाबेस में rows की total संख्या और डेटाबेस table के प्रत्येक column का नाम मेटाडेटा होता है।
यहाँ मेटाडेटा का मतलब है डेटा के बारे में डेटा। उदाहरण के लिए, एक स्कूल डेटाबेस में, डेटाबेस में total number of rows और table का नाम मेटाडेटा के उदाहरण हैं।
इसलिए, self-explaining nature का मतलब है कि डेटाबेस खुद ही सारी जानकारी ऑटोमेटिकली बताता है। यह इसलिए होता है क्योंकि डेटाबेस में सारा डेटा structured format में स्टोर होता है।
DBMS से पहले, traditional file management system का उपयोग डेटा और जानकारी स्टोर करने के लिए किया जाता था। Traditional file management system में DBMS की तरह definition का concept नहीं था।
DBMS self-describing nature का होना चाहिए क्योंकि इसमें सिर्फ डेटाबेस ही नहीं, बल्कि मेटाडेटा भी होता है। मेटाडेटा (data about data) न केवल डेटा की extent, type, structure, और format को define और describe करता है, बल्कि डेटा के बीच के relationship को भी। यह डेटा खुद बताता है कि उस पर कौन सी actions ली जानी चाहिए।
Support ACID Properties
किसी भी DBMS (Database Management System) में ACID properties (Accuracy, Completeness, Isolation, and Durability) को support करने की Capacity होती है। यह ensure किया जाता है कि हर DBMS में, जब भी transactions जैसे delete, insert, और update किए जाते हैं, तो data का real purpose खो न जाए।
उदाहरण के लिए, अगर किसी employee का नाम update किया जाता है, तो यह ensure किया जाना चाहिए कि कोई duplicate data ना हो और employee की information में कोई mismatch ना हो।
DBMS (Database Management System) में डेटा की consistency बनाए रखने के लिए कुछ properties को फॉलो किया जाता है। इन properties को आमतौर पर ACID properties कहा जाता है।
ACID का मतलब होता है:
- Atomicity का मतलब है की एक transaction या तो 0% पूरा होगा या 100%। इसका मतलब है कि transaction के बीच में कोई बदलाव नहीं होगा।
- Consistency का मतलब है की डेटा में किया गया बदलाव database के हर हिस्से में reflect होना चाहिए।
- Isolation का मतलब है की कई transactions independently हो सकते हैं बिना किसी दूसरे transaction के interference के।
- Durability का मतलब है की एक successful atomic transaction, यानी जो 100% complete हो चुका है, उसके परिणाम Database में reflect होने चाहिए।
हम पहले ही atomicity और consistency के बारे में बात कर चुके हैं। अब, isolation का मतलब है कि अलग-अलग transactions एक-दूसरे के interference के बिना स्वतंत्र रूप से हो सकते हैं।
Durability का मतलब है कि एक बार जब transaction 100% complete हो जाता है, तो उसका परिणाम Database में स्थायी रूप से save हो जाना चाहिए।
इसे भी पढ़े :
Concurrent Use of Database
इस बात की बहुत संभावना है कि कई user एक ही समय में डेटा एक्सेस कर रहे होंगे। उन्हें डेटाबेस सिस्टम को एक साथ बदलने की आवश्यकता हो सकती है। उस समय, DBMS उन्हें बिना किसी समस्या के डेटाबेस का एक साथ उपयोग करने में सहायता करता है। concurrency की मदद से सिस्टम की economy को बढ़ाया जा सकता है।
उदाहरण के लिए, रेलवे आरक्षण प्रणाली के employees passengers के लिए एक साथ टिकट बुक और एक्सेस कर सकते हैं। प्रत्येक employees अपने इंटरफ़ेस पर देख सकता है कि कितनी सीटें उपलब्ध हैं या बोगी पूरी तरह से बुक है।
Insulation Between Data and Program
Program-data independence database users को एक बड़ी राहत provides करती है। traditional फ़ाइल management system में, data फ़ाइलों की संरचना application programs में परिभाषित की गई थी
इसलिए उपयोगकर्ता को उन सभी program को बदलना पड़ता था जो उस विशेष data फ़ाइल का उपयोग कर रहे हैं।
लेकिन DBMS में, data फ़ाइलों की संरचना program में stored नहीं होती है, बल्कि इसे सिस्टम catalogue में stored किया जाता है। इसकी मदद से, data दक्षता में आंतरिक सुधार या data में किसी भी बदलाव का application software पर कोई प्रभाव नहीं पड़ता है।
Atomicity of Operations (Transactions)
यहाँ पर atomicity का मतलब है कि या तो operation किया जाना चाहिए या नहीं किया जाना चाहिए। यानी, इसे 0% या 100% पर operation पूरा करना चाहिए।यहाँ पर DBMS (Database Management System) एक विशेषता के रूप में atomicity प्रदान करता है। यह DBMS (Database Management System) की सबसे महत्वपूर्ण और उपयोगी विशेषता है।
आप नीचे दिए गए उदाहरण से atomicity को पूरी तरह से समझ सकते हैं। उदाहरण के लिए, हर bank का अपना database होता है, और database में उसके ग्राहकों की सारी जानकारी होती है। लेन-देन bank का सबसे आम एटोमिक operation है। अगर सोना 1000 रुपये अर्चिता के खाते में ट्रांसफर करना चाहता है, तो database की atomicity सुविधा की मदद से यह संभव है।
अगर अर्चिता के खाते में कोई समस्या है अगर database की atomicity में कोई समस्या है, तो सोना खाते से पैसे कट जाएँगे लेकिन अर्चिता खाते में जमा नहीं होगे।
database में atomicity की सुविधा है, तो ऐसे लेनदेन हुए ही नहीं हैं, और अगर लेनदेन विफल हो जाता है, तो पैसे अपने आप ही sender के account में वापस आ जाएँगे।
मूल रूप से, एक सफल लेनदेन के लिए, पूरा operation database पर निर्भर करता है। यदि database सही तरीके से काम करता है, तो लेनदेन सफल होगा, और यदि database विफल हो जाता है, तो पूरा banking server down हो जाएगा।
इसे भी पढ़े :
Data Persistence
Persistence का मतलब है कि अगर data को explicitly remove नहीं किया जाता, तो सारा data DBMS में maintained रहेगा।
अगर system failure होता है, तो DBMS में stored data की life span users द्वारा directly या indirectly decide की जायेगी ।
कोई भी data जो DBMS में stored है, वो कभी lost नहीं हो सकता। अगर किसी transaction के बीच में system failure होता है, तो उसे rollback किया जाएगा या पूरी तरह से complete किया जाएगा, लेकिन data कभी भी risk में नहीं होगा।
Stores Any Kind of Structured Data
The Database में data को structured format में store करने की ability होती है।
websites में, हम देखते हैं कि better understanding के लिए सिर्फ student database के examples दिए जाते हैं, लेकिन महत्वपूर्ण बात यह है कि Database के पास unlimited amount of data को store करने की ability होती है।
DBMS के पास किसी भी प्रकार के data को store करने की ability होती है जो real world में exist करता है, और ये data structured way में होता है। यह DBMS की एक और महत्वपूर्ण characteristic है।
Backup and Recovery
SQL and No-SQL Data bases
database दो प्रकार के होते हैं : SQL और No-SQL.
SQL database data को table, यानी rows and columns के रूप में store करते हैं.
No-SQL database data को table के अलावा किसी भी रूप में store कर सकते हैं. उदाहरण के लिए: बहुत लोकप्रिय MongoDB JSON के रूप में data store करता है.
SQL और No-SQL database की उपलब्धता हमें data store करने की method चुनने की अनुमति देती है. SQL और No-SQL database के बीच कोई बहस नहीं होनी चाहिए. हमें किसी विशेष project के लिए जिस database की आवश्यकता होती है
वह उस project के लिए बेहतर होता है, जबकि दूसरा किसी अन्य उपयोग के लिए बेहतर हो सकता है. यह DBMS की एक विशेषता है क्योंकि DBMS हमें दोनों प्रकार के database पर operation करने की अनुमति देता है. इसलिए, हम SQL के साथ-साथ No-SQL database पर queries और operation चला सकते हैं.
Data Integrity
यहाँ integrity शब्द का अर्थ है कि data correct और consistent होना चाहिए।आइए इसे एक उदाहरण से समझते हैं। मान लीजिए कि ( अ ब स ) नाम का एक bank है, और ( अ ब स ) bank के पास अपने customer के data के storage के लिए अपना खुद का database है।
अगर हम ( अ ब स ) bank के account details दर्ज करने की कोशिश करते हैं और bank में account details उपलब्ध नहीं है, तो database गलत आउटपुट देता है। हालाकि,
अगर कोई customer अपना पता बदलता है, लेकिन नया पता database में update नहीं होता है, तो इसे data inconsistency कहा जाता है। इसलिए database में उपलब्ध data correct होने के साथ-साथ consistent भी होना चाहिए।
अगर किसी के खाते में जीरो balance है और बाद में customer अपने खाते में 5000 रुपये जमा करता है, अगर database में नए खाते का balance update नहीं होता है, तो यह customer के लिए समस्या पैदा करता है।
Cost
DBMS को maintain करने में लगने वाला मूल्य बहुत ही कम होता है.DBMS सिस्टम को खरीदते समय इनका cost ज्यादा होता है. लेकिन अगर आप लंबे समय तक के लिए सोचें तो DBMS कहीं बेहतर है
Database users के लिए limited तरीके से accessible होना चाहिए।
Security
Database users के लिए limited तरीके से accessible होना चाहिए। users द्वारा database में changes करने की पहुँच limited होनी चाहिए, और users को पूरे database तक पूरी पहुँच नहीं दी जानी चाहिए।
Authorized users को database तक पहुँचने की अनुमति नहीं दी जानी चाहिए।
Authentication: DBMS में विभिन्न users के लिए Authentication होता है जो सीधे उस सीमा को refers करता है जिस तक users database तक पहुँच सकता है।
Authentication का अर्थ है users को केवल उन अधिकारों के साथ शामिल होने की प्रक्रिया जिसके लिए उसे Authorized किया गया है।
उदाहरण के लिए, किसी भी organization में, admin के पास organization के database में changes करने की पहुँच होती है क्योंकि कोई नया employee organization में शामिल हो सकता है या कोई व्यक्ति इसे छोड़ सकता है। हालाकि, कर्मचारियों के पास केवल उनकी व्यक्तिगत profile तक पहुँच होती है और वे केवल उनमें ही changes कर सकते हैं। वे किसी अन्य कर्मचारी या पूरे organization के database तक नहीं पहुँच सकते।
Conclusion
विभिन्न Characteristics of DBMS in Hindi का अध्ययन करने के बाद, हम निम्नलिखित निष्कर्ष पर पहुँच सकते हैं: conventional file processing system की तुलना में DBMS बहुत अधिक reliable है। DBMS atomicity और consistency प्रदान करता है। वे data integrity और security प्रदान करते हैं। DBMS किसी भी तरह के data को store कर सकता है और इस data तक पहुँचना भी बहुत आसान है। DBMS real-world entities की संस्थाओं पर आधारित है और बिना किसी समस्या के user को Concurrent पहुँच प्रदान करता है।
