Theory
असल में data को कौन छूता है?
Meera अपनी दुकान को एक असली database पर ले जाने का फ़ैसला करती है। उसका भतीजा MySQL नाम की कोई चीज़ install करता है और एक छोटा billing app बनाता है। Meera 'Today's sales' click करती है और एक number आता है।
पर श्रृंखला के बारे में सोचिए: Meera ने एक button click किया, फिर भी कहीं data disk से लाया गया, सुरक्षित रूप से, बिना कुछ corrupt किए, भले ही उसका भाई ठीक उसी सेकंड एक sale enter कर रहा हो।
चार अलग components ने यह कराया, हर एक का एक काम। इनमें से दो, database और DBMS, को गड्डमड्ड करना सबसे आम exam चूक है, तो चलिए इन्हें साफ़-साफ़ अलग करें।
Theory
बैंक की तिजोरी और teller
आप (user) cash चाहते हैं। आप counter पर एक slip भरते हैं (application)। आप खुद कभी तिजोरी में नहीं घुसते, एक teller (DBMS) आपकी slip लेता है, जाँचता है कि आपको इजाज़त है, तिजोरी (database) तक जाता है, और ठीक वही लाता है जो आपने माँगा, इस बीच बाकी सबका पैसा सुरक्षित रखते हुए। Teller के सिवा कोई तिजोरी को नहीं छूता। वह एक नियम एक database system का दिल है।
At a glance
चार components
| Component | भूमिका | उदाहरण |
|---|---|---|
| User | data चाहिए | Meera, एक programmer, एक DBA |
| Application | interface जो requests भेजता है | Billing app, website |
| DBMS | सारे access को सुरक्षित रूप से manage करता है | MySQL, Oracle, SQL Server |
| Database | खुद store किया data | दुकान की tables |
Theory
DBMS: बीच में manager
सितारा है DBMS (Database Management System)। यह applications और data के बीच बैठता है, और हर request इससे होकर गुज़रती है। इसके काम:
- Storage और retrieval: असल data पढ़ना/लिखना।
- Security: किसे क्या देखने या बदलने की इजाज़त है।
- Integrity: data को valid रखना (कोई negative stock नहीं)।
- Concurrency: एक साथ कई users बिना टकराव।
- Backup और recovery: crashes से बचना।
क्योंकि सारा access DBMS से होकर गुज़रता है, यह इन सारी guarantees को लागू कर सकता है, जो एक साझा spreadsheet बस नहीं कर सकती।
Quiz
एक 'database' और एक 'DBMS' में क्या फ़र्क़ है?
- Database store किया data है; DBMS वह software है जो उसे manage करता है
- वे एक ही चीज़ के दो नाम हैं
- Database software है; DBMS data है
- DBMS एक तरह का spreadsheet है
Show the answer
Database store किया data है; DBMS वह software है जो उसे manage करता है
Database store किए data का असली संग्रह है (tables); DBMS वह software है (MySQL, Oracle) जो उस data को बनाता, manage करता और उस तक access control करता है। Option C इन्हें उलट देता है, ठीक वह trap। Analogy: database किताबें हैं; DBMS librarian है। इन दोनों को अलग करना एक पक्का exam mark है।
Think first
आख़िर DBMS से होकर क्यों जाएँ?
Meera के billing app को data files सीधे पढ़ने-लिखने क्यों न दें, DBMS बिचौलिए को छोड़कर? सोचिए उसका भाई ठीक उसी पल एक sale enter कर रहा है जब Meera एक report चलाती है।
Show the answer
क्योंकि दो programs एक साथ कच्चे data को छूते हुए उसे corrupt कर देंगे, या अधूरे बदलाव पढ़ेंगे। DBMS access को serialise और protect करता है: यह concurrency manage करता है (दोनों सुरक्षित रूप से काम कर सकते हैं), security और integrity लागू करता है, और crashes से recover कर सकता है। सीधी file access, ठीक जैसे एक साझा spreadsheet काम करती है, में इनमें से कोई guarantee नहीं, इसीलिए multi-user spreadsheets overwrite होकर खो जाती हैं। बिचौलिया ही सुरक्षा है।
Watch out
Marks कहाँ कटते हैं
बड़ी वाली: database बनाम DBMS, data बनाम उसे manage करता software। DBMS की काम-सूची (security, integrity, concurrency, backup) भूलना, ये ही एक इस्तेमाल करने के कारण हैं। और श्रृंखला का क्रम गलत करना: यह user > application > DBMS > database है, requests नीचे बहती हैं, data वापस ऊपर। असली DBMS software (MySQL, Oracle, SQL Server) का नाम लेना एक आसान अतिरिक्त mark दिलाता है।
Theory
आप पहले ही एक DBMS से मिल चुके हैं
जिस Gri-Learn app पर आप यह पढ़ रहे हैं वह अपने lessons एक DBMS द्वारा manage की database में store करता है, ठीक यही architecture। login, cart, या history वाला हर app इस चार-परत श्रृंखला का इस्तेमाल करता है। Unit 4 में आप सीधे एक DBMS को commands type करेंगे (SQL)। आगे: ये components machines के आर-पार कैसे व्यवस्थित होते हैं, 1-tier, 2-tier और 3-tier architectures।
Summary
Key takeaways
- चार components: User (data चाहिए), Application (interface), DBMS (manager), Database (store किया data)।
- DBMS applications और data के बीच बैठता है; सारा access इससे होकर गुज़रता है।
- DBMS के काम: storage, security, integrity, concurrency, backup और recovery।
- Database = data (tables); DBMS = उसे manage करता software (MySQL, Oracle)।
- DBMS से होकर जाना ही multi-user सुरक्षा देता है जो एक spreadsheet में नहीं होती।
- याद रखने का hook: user, slip, teller, तिजोरी, सिर्फ teller तिजोरी को छूता है।