ऐसे मामलों में, हमें एक वर्चुअल टेबल बनाने में सक्षम होना चाहिए जो केवल एक टेबल से आवश्यक विशेषताओं को प्रदर्शित कर सके। यह View और Materialized View के माध्यम से संभव है जिस पर हम इस लेख में चर्चा करेंगे। हम नीचे दिखाए गए तुलना चार्ट की सहायता से दृश्य और भौतिक दृश्य के बीच के अंतरों पर भी चर्चा करेंगे:
तुलना चार्ट
तुलना के लिए आधार | राय | भौतिकवादी दृश्य |
---|---|---|
बुनियादी | एक दृश्य कभी संग्रहीत नहीं होता है यह केवल प्रदर्शित होता है। | एक भौतिक दृश्य डिस्क पर संग्रहीत है। |
परिभाषित करें | व्यू एक या अधिक बेस टेबल या विचारों से बनने वाली वर्चुअल टेबल है। | भौतिकतावादी दृश्य आधार तालिका की एक भौतिक प्रति है। |
अद्यतन करें | जब भी वर्चुअल टेबल (दृश्य) का उपयोग किया जाता है, तो दृश्य अपडेट किया जाता है। | भौतिकीकृत दृश्य को मैन्युअल रूप से या ट्रिगर का उपयोग करके अद्यतन किया जाना है। |
गति | धीमी गति से प्रसंस्करण। | तेजी से प्रसंस्करण। |
स्मृति उपयोग | देखें स्मृति स्थान की आवश्यकता नहीं है। | मैटीरियलाइज्ड व्यू मेमोरी स्पेस का उपयोग करता है। |
वाक्य - विन्यास | देखें V As बनाएं | भौतिक रूप से देखें वी बनाएँ [खंड] ताज़ा करें [खंड] पर [ट्रिगर] के रूप में |
दृश्य की परिभाषा
व्यू एक वर्चुअल टेबल है, जिसे क्रिएट व्यू कमांड का उपयोग करके बनाया गया है। इस वर्चुअल टेबल में क्वेरी एक्सप्रेशन से डेटा बनाया गया है, जिसमें व्यू व्यू कमांड है। व्यू को एक या एक से अधिक बेस टेबल या व्यू से बनाया जा सकता है। मूल आधार तालिकाओं को क्वेरी करने पर एक दृश्य को देखा जा सकता है।
ऐसा नहीं है कि व्यू प्री - कॉम्प्रूव्ड है और डिस्क पर स्टोर किया गया है, इसके इस्तेमाल या एक्सेस होने पर हर बार व्यू की गणना की जाती है। जब भी कोई दृश्य क्रिएट व्यू कमांड में क्वेरी एक्सप्रेशन का उपयोग किया जाता है, उस विशेष क्षण में निष्पादित किया जाता है। इसलिए, आपको हमेशा अद्यतन डेटा एक दृश्य में मिलता है।
यदि आप व्यू में किसी भी सामग्री को अपडेट करते हैं, तो यह मूल तालिका में परिलक्षित होता है, और यदि मूल आधार तालिका में कोई परिवर्तन किया गया था, तो यह इसके दृश्य में प्रतिबिंबित होगा। लेकिन यह View View का प्रदर्शन धीमा कर देता है । उदाहरण के लिए, दो या दो से अधिक तालिकाओं के जुड़ने से एक दृश्य बनाया जाता है। उस स्थिति में, आपको प्रत्येक बार किसी दृश्य का उपयोग करने पर सम्मिलित होने के समाधान के लिए समय देना होगा।
लेकिन इसके कुछ फायदे हैं जैसे इसे स्टोरेज स्पेस की आवश्यकता नहीं है। आप एक जटिल डेटाबेस का एक अनुकूलित दृश्य बना सकते हैं। आप किसी डेटाबेस में संवेदनशील जानकारी तक पहुँचने से उपयोगकर्ता को प्रतिबंधित कर सकते हैं। एक ही अनुकूलित दृश्य में कई तालिकाओं से डेटा प्राप्त करके प्रश्नों की जटिलता को कम करता है ।
अब हम व्यू का सिंटैक्स देखते हैं
देखें V As बनाएं
याद रखें सभी दृश्य अपूरणीय नहीं हैं। DISTINCT क्लॉज, ग्रुप बाय क्लॉज, CHECK अड़चन (यदि चेक की कमी का उल्लंघन) का उपयोग करके बनाए गए व्यू की तरह, केवल-पढ़ने के लिए विकल्प को अपडेट नहीं किया जा सकता है।
भौतिकतावादी दृष्टिकोण की परिभाषा
मटेरियलाइज्ड व्यू मूल आधार तालिकाओं की भौतिक प्रति है। मटेरियलाइज्ड व्यू मूल बेस टेबल की एक स्नैपशॉट या तस्वीर की तरह है। View की तरह, इसमें Create Materialized View कमांड की क्वेरी एक्सप्रेशन से प्राप्त डेटा भी होता है।
लेकिन View के विपरीत, Materialized View एक डिवाइस की तरह डिस्क पर प्रीकम्प्यूटेड और स्टोर किए जाते हैं, और इन्हें उपयोग किए जाने पर हर बार अपडेट नहीं किया जाता है। इसके बजाय, भौतिकीकृत दृश्य को मैन्युअल रूप से या ट्रिगर्स की मदद से अपडेट करना होगा । Materialized View को अपडेट करने की प्रक्रिया को Materialized View Maintenance कहा जाता है।
भौतिकीकृत दृश्य दृश्य की तुलना में तेज़ी से प्रतिक्रिया करता है। यह इसलिए है कि भौतिकवादी दृश्य पूर्वनिर्मित है और इसलिए, यह भौतिकतावादी दृश्य बनाने वाले क्वेरी में क्वेरी या जुड़ने का समाधान करने में समय बर्बाद नहीं करता है। जो बदले में भौतिकवादी दृश्य पर की गई क्वेरी के लिए तेजी से प्रतिक्रिया करता है।
आइए हम भौतिक रूप से देखे गए वाक्य विन्यास की जाँच करें:
मटेरियलाइज्ड व्यू वी बनाएँ
निर्माण [खंड] ताज़ा करें [प्रकार]
[ट्रिगर]
जैसा
जहां बिल्ड क्लॉज तय होता है, वहीं मैटेरियलाइज्ड व्यू को पॉप्युलेट करना है। रीफ्रेश टाइप यह तय करता है कि मैटेरियलाइज्ड व्यू को कैसे अपडेट किया जाए और मैटेरियलाइज्ड व्यू को अपडेट करने के लिए ट्रिगर का फैसला किया जाए।
Matalized Views का उपयोग आमतौर पर डेटा वेयरहाउस में किया जाता है।
दृश्य और भौतिक दृश्य के बीच मुख्य अंतर
- View और Materialized View के बीच मूल अंतर यह है कि दृश्य डिस्क पर भौतिक रूप से संग्रहीत नहीं हैं। दूसरी ओर, मैटेरियलाइज्ड व्यू डिस्क पर स्टोर किए जाते हैं।
- क्वेरी अभिव्यक्ति के परिणामस्वरूप बनाई गई वर्चुअल टेबल के रूप में दृश्य को परिभाषित किया जा सकता है। हालाँकि, Materialized View एक भौतिक कॉपी, चित्र या आधार तालिका का स्नैपशॉट है।
- जब भी व्यू का उपयोग किया जाता है, तो व्यू व्यू निष्पादित करते समय क्वेरी को हमेशा अपडेट किया जाता है। दूसरी ओर, भौतिकीकृत दृश्य मैन्युअल रूप से या उस पर ट्रिगर लागू करके अपडेट किया जाता है।
- भौतिकवादी दृश्य दृश्य की तुलना में तेज़ी से प्रतिक्रिया करता है क्योंकि भौतिकीकृत दृश्य पूर्वनिर्मित है।
- भौतिकीकृत दृश्य मेमोरी स्पेस का उपयोग करता है क्योंकि यह डिस्क पर संग्रहीत होता है, व्यू केवल एक डिस्प्ले है इसलिए इसे मेमोरी स्पेस की आवश्यकता नहीं है।
निष्कर्ष:
भौतिकीकृत दृश्य दृश्य की तुलना में तेज़ी से प्रतिक्रिया करता है। लेकिन देखें हमेशा उपयोगकर्ता को अद्यतन जानकारी प्रदान करता है।