Database Architecture और Three-Schema Architecture
Database architecture क्या है
Database architecture बताता है database system के हिस्से — user, application, और database — कैसे व्यवस्थित हैं और एक-दूसरे से कैसे बात करते हैं। मुख्य models 1-tier, 2-tier और 3-tier हैं, जो इसमें भिन्न हैं कि कितनी परतें user को data से अलग करती हैं। एक अलग विचार, three-schema architecture, database के अंदर के स्तर बताता है।
1-tier architecture
1-tier में, user, application और database सब एक machine पर रहते हैं, बीच में कोई network नहीं। आप अपने computer पर सीधे database से बातचीत करते हैं।
User + Application + Database → सब एक computer पर
यह स्थानीय इस्तेमाल या सीखने को सरल और तेज़ है, पर एक साथ कई users को उपयुक्त नहीं।
2-tier architecture
2-tier में, एक client application network पर database server से सीधे बात करती है।
Client app ⇄ Database server
यह classic client-server model है। यह छोटे setups को अच्छा चलता है, पर client database से क़रीब से जुड़ा है, जो security और scalability सीमित करता है।
3-tier architecture
3-tier में, एक बीच का application server client और database के बीच बैठता है।
Client ⇄ Application server ⇄ Database server
बीच की परत business logic और security संभालती है, और database को users से छिपाती है। यही web applications इस्तेमाल करती हैं, क्योंकि यह सुरक्षित, scalable है, और कई clients को एक logic परत के ज़रिए connect होने देती है।
Three-schema architecture
Tiers से अलग, three-schema architecture database के अंदर के स्तर बताता है:
- External — हर user data कैसे देखता है (views)।
- Conceptual — सारी tables की समग्र logical संरचना।
- Internal — data disk पर physically कैसे store होता है।
यह विभाजन data independence देता है: एक स्तर दूसरों को बिगाड़े बिना बदल सकता है।
कौन-सा इस्तेमाल करें
| Architecture | किसके लिए |
|---|---|
| 1-tier | स्थानीय tools, सीखना |
| 2-tier | छोटे client-server apps |
| 3-tier | Web और enterprise apps |
ज़्यादातर आधुनिक applications, ख़ासकर web पर, security और scalability को 3-tier इस्तेमाल करती हैं।
आम गलतियाँ
- Tiers को three-schema architecture से मिलाना। Tiers user और data के बीच परतों के बारे में; schemas अंदरूनी स्तर।
- बड़े web apps को 2-tier इस्तेमाल करना। उन्हें 3-tier की बीच परत चाहिए।
- यह सोचना 1-tier scale करता है। यह सिर्फ़ एक machine को है।
- बीच परत की भूमिका अनदेखा करना। यह 3-tier में logic और security देती है।
सारांश
- Database architecture user, application और database व्यवस्थित करता है।
- 1-tier: सब एक machine पर; 2-tier: client सीधे database को।
- 3-tier: logic और security को बीच का application server (web apps इस्तेमाल करती)।
- Three-schema architecture external, conceptual और internal स्तर बताता है।
- ज़्यादातर आधुनिक systems 3-tier इस्तेमाल करती हैं।
आगे, अंदरूनी स्तर सीखिए schema vs instance में, या वे स्वतंत्र कैसे रहते हैं data independence में।
