डेटाबेस सिस्टम के विकास से पहले विभिन्न विभागों द्वारा अलग-अलग फाइलों में डेटा संग्रहीत किया जाता था। इस पद्धति में निम्नलिखित गंभीर कमियां थीं:
- डेटा की पुनरावृत्ति एवं असंगति (Data Redundancy & Inconsistency): एक ही जानकारी कई अलग-अलग फाइलों में दोहराई जाती थी। एक फाइल में सुधार करने पर दूसरी फाइल पुरानी रह जाती थी, जिससे असंगत परिणाम उत्पन्न होते थे।
- प्रोग्राम-डेटा निर्भरता (Program-Data Dependence): यदि फाइल के भौतिक प्रारूप (Format) में मामूली बदलाव किया जाता, तो उस फाइल पर आधारित सभी प्रोग्रामों को दोबारा लिखना पड़ता था।
- डेटा पृथक्करण एवं कठिन पहुंच: डेटा विभिन्न असंगत स्वरूपों में बिखरा रहता था, जिससे तदर्थ (Ad-hoc) प्रश्नों के उत्तर प्राप्त करने के लिए नए प्रोग्राम लिखने पड़ते थे।
- समवर्ती पहुंच विसंगतियां (Concurrency Anomalies): जब एक से अधिक उपयोगकर्ता एक साथ एक ही फाइल में संपादन करते, तो अपडेट खो जाने (Lost Updates) की आशंका रहती थी।
- सुरक्षा एवं अखंडता की कमी: उपयोगकर्ता के अनुसार सुरक्षा नियम और डेटा सत्यापन प्रतिबंध लगाना अत्यंत जटिल था।
डेटाबेस उपयोगकर्ताओं को भौतिक संग्रहण की आंतरिक जटिलताओं से अलग रखने हेतु त्रि-स्तरीय ढांचा अपनाया जाता है:
| आर्किटेक्चर स्तर | कार्यप्रणाली एवं विवरण | लक्षित उपयोगकर्ता एवं संरचनाएं |
|---|---|---|
| बाह्य स्तर (External / View Level) | विभिन्न प्रयोक्ताओं अथवा समूहों के लिए डेटाबेस के केवल संबंधित भाग को प्रदर्शित करता है। शेष डेटाबेस को छिपा कर रखता है। | अंतिम उपयोगकर्ता (End Users) व एप्लिकेशन प्रोग्रामर; अनुकूलित स्क्रीन एवं SQL व्यूज। |
| वैचारिक स्तर (Conceptual / Logical Level) | समग्र डेटाबेस की तार्किक संरचना, इकाइयाँ (Entities), संबंध, डेटा प्रकार एवं अखंडता बाधाओं (Constraints) को परिभाषित करता है। | डेटाबेस प्रशासक (DBA); टेबल्स, स्कीमा, प्राथमिक कुंजी व विदेशी कुंजी। |
| आंतरिक स्तर (Internal / Physical Level) | वर्णन करता है कि डेटा भौतिक हार्ड डिस्क पर किस प्रकार ब्लॉक्स, क्लस्टर्स, फाइल संगठनों एवं B+ ट्री इंडेक्स में संग्रहीत है। | DBMS स्टोरेज इंजन व सिस्टम प्रोग्रामर; डिस्क पॉइंटर्स, कम्प्रेशन एवं एन्क्रिप्शन। |
१. भौतिक डेटा स्वतंत्रता (Physical Data Independence): वैचारिक स्कीमा को बदले बिना आंतरिक (भौतिक) स्कीमा (जैसे इंडेक्स बदलना, फाइल संगठन बदलना या SSD पर स्थानांतरित करना) को बदलने की क्षमता।
२. तार्किक डेटा स्वतंत्रता (Logical Data Independence): बाह्य दृश्यों (Views) अथवा प्रयोक्ता प्रोग्रामों को बदले बिना वैचारिक स्कीमा (जैसे नए एट्रिब्यूट जोड़ना या टेबल विभाजित करना) को संशोधित करने की क्षमता। इसे प्राप्त करना भौतिक स्वतंत्रता की तुलना में अधिक कठिन होता है।