एक डेटाबेस में बड़ी मात्रा में डेटा होता है। उस सभी डेटा में से कुछ उपयोगकर्ता डेटा होता है, कुछ मेटाडेटा आदि हो सकते हैं। इसलिए, यह बहुत महत्वपूर्ण है कि एक डेटाबेस में डेटा स्वतंत्रता हो।
डेटा स्वतंत्रता का मूल अर्थ है कि यदि डेटा एक स्तर पर बदला जाता है, तो यह उच्च स्तरों पर डेटा दृश्य को प्रभावित नहीं करता है। इसलिए, उच्च स्तरों पर डेटा निचले स्तरों में डेटा संशोधन से स्वतंत्र होना चाहिए।
डेटा स्वतंत्रता के दो प्रकार
लॉजिकल डेटा स्वतंत्रता (Logical Data Independence)
लॉजिकल डेटा इस बात से स्वतंत्र है कि डेटा वास्तव में डिस्क पर कैसे संग्रहीत है। इसलिए लॉजिकल डेटा स्वतंत्रता का अर्थ है कि वर्चुअल या लॉजिकल स्तर पर डेटाबेस में किए गए सभी परिवर्तनों को इस बात पर असर नहीं डालना चाहिए कि डेटा वास्तव में डिस्क पर कैसे संग्रहीत है। साथ ही, उपयोगकर्ता का डेटा दृश्य भी नहीं बदलना चाहिए भले ही डेटा लॉजिकल स्तर पर बदल जाए।
उदाहरण: एक टेबल में कॉलम जोड़ना, एक व्यू बनाना, या एक रिलेशनशिप जोड़ना एप्लिकेशन को प्रभावित नहीं करना चाहिए जो मौजूदा स्कीमा का उपयोग करते हैं।
फिजिकल डेटा स्वतंत्रता (Physical Data Independence)
डेटाबेस में सभी डेटा वास्तव में डिस्क पर बिट्स के रूप में संग्रहीत होते हैं। इसलिए फिजिकल डेटा स्वतंत्रता का अर्थ है कि फिजिकल स्तर पर डेटा में किए गए परिवर्तन यानी डिस्क स्टोरेज आदि में लॉजिकल स्तर पर प्रतिबिंबित नहीं होने चाहिए।
उदाहरण: यदि डेटाबेस स्टोरेज विधियां बदल दी जाती हैं या डेटाबेस को स्थानांतरित किया जाता है, तो यह डेटाबेस की लॉजिकल संरचना को प्रभावित नहीं करना चाहिए। इंडेक्स बदलना, स्टोरेज डिवाइस बदलना, फ़ाइल संगठन बदलना - ये सभी लॉजिकल स्कीमा के लिए पारदर्शी होने चाहिए।
महत्व
- एप्लिकेशन रखरखाव कम करता है
- डेटाबेस एडमिनिस्ट्रेटर को प्रदर्शन ट्यूनिंग के लिए फिजिकल स्टोरेज बदलने की अनुमति देता है बिना एप्लिकेशन कोड बदले
- मल्टी-यूज़र वातावरण में समवर्ती विकास का समर्थन करता है