डेटाबेस स्कीमा

डेटाबेस स्कीमा एक औपचारिक भाषा में वर्णित डेटाबेस की संरचना है जो आमतौर पर संबंधपरक डेटाबेस  मैनेजमेंट सिस्टम (RDBMS) द्वारा समर्थित होती है। शब्द wikt:schema डेटा के संगठन को एक ब्लूप्रिंट के रूप में संदर्भित करता है कि डेटाबेस कैसे बनाया जाता है (रिलेशनल डेटाबेस के मामले में डेटाबेस तालिकाओं में विभाजित)। डेटाबेस स्कीमा की औपचारिक परिभाषा सूत्रों (वाक्यों) का एक सेट है जिसे डेटाबेस पर ईमानदारी की कमी कहा जाता है। ये अखंडता बाधाएँ स्कीमा के भागों के बीच अनुकूलता सुनिश्चित करती हैं। सभी बाधाओं को एक ही भाषा में अभिव्यक्त किया जाता है। डेटाबेस भाषा की प्राप्ति में एक डेटाबेस को एक संरचना माना जा सकता है। एक निर्मित वैचारिक स्कीमा की अवस्थाएँ एक स्पष्ट मानचित्रण, डेटाबेस स्कीमा में रूपांतरित हो जाती हैं। यह वर्णन करता है कि डेटाबेस में वास्तविक दुनिया की संस्थाएँ मॉडलिंग की दिनांक कैसे करती हैं।

एक डेटाबेस स्कीमा निर्दिष्ट करता है, डेटाबेस व्यवस्थापक के संभावित अनुप्रयोगों के ज्ञान के आधार पर, वे तथ्य जो डेटाबेस में प्रवेश कर सकते हैं, या जो संभावित अंत-उपयोगकर्ताओं के लिए रुचि रखते हैं। एक डेटाबेस स्कीमा की धारणा विधेय कलन में सिद्धांत की धारणा के समान भूमिका निभाती है। इस सिद्धांत का एक मॉडल एक डेटाबेस से निकटता से मेल खाता है, जिसे किसी भी समय गणितीय वस्तु के रूप में देखा जा सकता है। इस प्रकार एक स्कीमा में डेटा अखंडता का प्रतिनिधित्व करने वाले सूत्र शामिल हो सकते हैं # विशेष रूप से किसी एप्लिकेशन के लिए अखंडता बाधाओं के प्रकार और विशेष रूप से एक प्रकार के डेटाबेस के लिए बाधाएं, सभी एक ही डेटाबेस भाषा में व्यक्त की जाती हैं। एक संबंध का डेटाबेस  में, स्कीमा  तालिका (डेटाबेस),  क्षेत्र (कंप्यूटर विज्ञान) ,  संबंधपरक मॉडल ,  देखें (डेटाबेस) ,  सूचकांक (डेटाबेस) ,  सॉफ्टवेयर पैकेज (स्थापना) , संग्रहीत प्रक्रियाओं, सबरूटीन्स, क्यू (डेटा) को परिभाषित करता है। संरचना) डेटाबेस ट्रिगर्स, डेटा प्रकार, अनुक्रम, भौतिक दृश्य, समानार्थी (डेटाबेस), डेटाबेस लिंक, निर्देशिका (फाइल सिस्टम), एक्सएमएल स्कीमा, और अन्य तत्व।

एक डेटाबेस आमतौर पर अपनी स्कीमा को डेटा शब्दकोश में स्टोर करता है। हालांकि एक स्कीमा को टेक्स्ट डेटाबेस भाषा में परिभाषित किया गया है, इस शब्द का प्रयोग अक्सर डेटाबेस संरचना के ग्राफिकल चित्रण को संदर्भित करने के लिए किया जाता है। दूसरे शब्दों में, स्कीमा डेटाबेस की संरचना है जो डेटाबेस में वस्तुओं को परिभाषित करती है।

Oracle डाटाबेस सिस्टम में, स्कीमा शब्द का थोड़ा अलग अर्थ है।

स्कीमा एकीकरण के लिए आदर्श आवश्यकताएं
नीचे सूचीबद्ध आवश्यकताएँ उत्पादित स्कीमा की विस्तृत संरचना को प्रभावित करती हैं। कुछ अनुप्रयोगों के लिए इन सभी शर्तों को पूरा करने की आवश्यकता नहीं होगी, लेकिन ये चार आवश्यकताएं सबसे आदर्श हैं।


 * ओवरलैप संरक्षण
 * इनपुट मैपिंग में निर्दिष्ट ओवरलैपिंग तत्वों में से प्रत्येक डेटाबेस स्कीमा संबंध में भी है।


 * विस्तारित ओवरलैप संरक्षण
 * स्रोत-विशिष्ट तत्व जो किसी स्रोत के अतिव्यापी तत्वों से जुड़े होते हैं, डेटाबेस स्कीमा के माध्यम से पारित किए जाते हैं।


 * मानकीकरण
 * स्रोत डेटा में स्वतंत्र संस्थाओं और संबंधों को डेटाबेस स्कीमा में समान संबंध में एक साथ समूहीकृत नहीं किया जाना चाहिए। विशेष रूप से, स्रोत विशिष्ट स्कीमा तत्वों को अतिव्यापी स्कीमा तत्वों के साथ समूहीकृत नहीं किया जाना चाहिए, यदि समूहीकरण स्वतंत्र संस्थाओं या संबंधों को सह-ढूंढता है।


 * न्यूनता
 * यदि डेटाबेस स्कीमा के किसी भी तत्व को छोड़ दिया जाता है तो डेटाबेस स्कीमा आदर्श नहीं है।

दो स्कीमा एकीकरण का उदाहरण
मान लीजिए कि हम दो यात्रा डेटाबेस, गो-ट्रैवल और ओके-फ्लाइट के डेटा एकीकरण के लिए एक मध्यस्थ स्कीमा चाहते हैं। दो संबंध हैं:

केवल एक संबंध है: गो-ट्रैवल और ओके-फ्लाइट के स्कीमा में अतिव्यापी जानकारी को एक मध्यस्थ स्कीमा में दर्शाया जा सकता है:

Oracle डेटाबेस विशिष्टता
Oracle डेटाबेस के संदर्भ में, एक स्कीमा ऑब्जेक्ट एक लॉजिकल डेटाबेस भंडारण संरचनाएं  है। Oracle डेटाबेस प्रत्येक डेटाबेस उपयोगकर्ता के साथ एक अलग स्कीमा जोड़ता है। स्कीमा में स्कीमा ऑब्जेक्ट्स का संग्रह होता है। स्कीमा ऑब्जेक्ट्स के उदाहरणों में शामिल हैं:


 * टेबल (डेटाबेस)
 * देखें (डेटाबेस)
 * अनुक्रम
 * पर्यायवाची (डेटाबेस)
 * इंडेक्स (डेटाबेस)
 * क्लस्टर
 * डेटाबेस लिंक
 * स्नैपशॉट (कंप्यूटर भंडारण) एस
 * संग्रहित प्रक्रियाएं
 * कार्य करता है
 * संकुल

दूसरी ओर, गैर-स्कीमा वस्तुओं में शामिल हो सकते हैं:
 * उपयोगकर्ता
 * भूमिकाएँ
 * प्रसंग
 * डायरेक्टरी ऑब्जेक्ट्स

स्कीमा ऑब्जेक्ट्स में डिस्क पर भौतिक फ़ाइलों के लिए एक-से-एक पत्राचार नहीं होता है जो उनकी जानकारी संग्रहीत करता है। हालाँकि, Oracle डेटाबेस स्कीमा ऑब्जेक्ट्स को डेटाबेस के टेबल-स्पेस  के भीतर तार्किक रूप से संग्रहीत करता है। प्रत्येक वस्तु का डेटा भौतिक रूप से टेबलस्पेस के एक या अधिक  डेटा फाइल ्स में समाहित होता है। कुछ ऑब्जेक्ट्स (जैसे टेबल, इंडेक्स और क्लस्टर) के लिए एक डेटाबेस एडमिनिस्ट्रेटर यह निर्दिष्ट कर सकता है कि Oracle RDBMS टेबलस्पेस के डेटाफाइल्स के भीतर ऑब्जेक्ट के लिए कितना डिस्क स्थान आवंटित करता है।

स्कीमा और टेबलस्पेस के बीच कोई आवश्यक संबंध नहीं है: एक टेबलस्पेस में अलग-अलग स्कीमा से ऑब्जेक्ट हो सकते हैं, और एक स्कीमा के लिए ऑब्जेक्ट अलग-अलग टेबलस्पेस में रह सकते हैं। Oracle डेटाबेस विशिष्टता, हालांकि, गैर-समरूप अनुक्रम अंतरों की प्लेटफ़ॉर्म पहचान को लागू करती है, जिसे वर्चुअलाइज्ड अनुप्रयोगों में एक महत्वपूर्ण सीमित कारक माना जाता है।

यह भी देखें

 * डेटा तत्व
 * डेटा मैपिंग
 * डेटा मॉडल
 * डाटाबेस डिजाइन
 * इकाई-संबंध मॉडल
 * ज्ञान प्रतिनिधित्व और तर्क
 * ऑब्जेक्ट-रोल मॉडलिंग
 * ओलॉग
 * स्कीमा मिलान
 * तीन-स्कीमा दृष्टिकोण

बाहरी संबंध

 * Tip/Trick: Online Database Schema Samples Library
 * Database Schema Samples
 * Designing the Star Schema Database