परिचय
Oracle ने 2008 में इंजीनियर्ड सिस्टम्स के परिवार में पहले में से एक के रूप में Exadata को डिजाइन और पेश किया। पारंपरिक डेटाबेस सिस्टम के विपरीत, जिन्हें एक उपयोगकर्ता द्वारा कॉन्फ़िगर, इंस्टॉल, ट्यून, और प्रबंधित किया जाता है, एक इंजीनियर्ड सिस्टम में OS, डेटाबेस, मेमोरी, और स्टोरेज जैसे सभी आवश्यक घटक पूर्व-इंस्टॉल, कॉन्फ़िगर, ट्यून, और समाधान प्रदाता द्वारा अनुकूलित होते हैं, जैसे Oracle।
ESS की मुख्य विशेषताएं
- फ्लैश कैश: सेल सर्वर पर एक उच्च-प्रदर्शन कैश जो हाल ही में एक्सेस किए गए ऑब्जेक्ट्स को कैश करता है।
- फ्लैश लॉग: रीडो-लॉग राइट्स के लिए एक उच्च-प्रदर्शन, कम-विलंबता, और विश्वसनीय अस्थायी स्टोर प्रदान करता है।
- EHCC: Exadata हाइब्रिड कॉलमर कंप्रेशन (EHCC) डेटा संपीड़न के उच्चतम स्तर को सक्षम करता है।
- स्टोरेज इंडेक्स: स्टोरेज सर्वर पर इन-मेमोरी संरचनाएं जो स्टोरेज सर्वर पर डिस्क से डेटा पढ़ने में लगने वाले समय को कम करने के लिए डिज़ाइन की गई हैं।
- सेल ऑफलोडिंग: पारंपरिक स्टोरेज डिज़ाइन के विपरीत, Exadata स्टोरेज सेल्स को आंतरिक रूप से कुछ वर्कलोड को प्रोसेस करने के लिए डिज़ाइन किया गया है ताकि कंप्यूट या डेटाबेस नोड्स पर समग्र बोझ कम हो सके।
- स्मार्ट स्कैन: स्मार्ट स्कैन अधिकांश SQL प्रोसेसिंग को डेटाबेस टियर के बजाय स्टोरेज टियर में होने देता है, जिससे क्वेरी प्रदर्शन में नाटकीय रूप से सुधार होता है। स्मार्ट स्कैन डेटाबेस टियर को भेजे गए डेटा की मात्रा को कम करता है, जिससे डेटाबेस नोड्स पर CPU उपयोग कम होता है।
SQL प्रोसेसिंग
पारंपरिक SQL प्रोसेसिंग
पारंपरिक SQL प्रोसेसिंग केवल डेटाबेस सर्वर पर होती है। क्लाइंट क्वेरी सबमिट करता है, फुल टेबल स्कैन ट्रिगर होता है, डेटाबेस सभी ब्लॉक्स को मेमोरी में पढ़ता है, प्रीडिकेट को संतुष्ट करने वाली पंक्तियों को खोजता है, और अनुरोधित पंक्तियों को क्लाइंट को लौटाता है। बड़ी तालिकाओं के लिए, सभी ब्लॉक्स पढ़े जाते हैं, स्टोरेज नेटवर्क पर स्थानांतरित किए जाते हैं, और मेमोरी में कॉपी किए जाते हैं।
Exadata सर्वर SQL प्रोसेसिंग
Exadata स्टोरेज के साथ, SQL प्रोसेसिंग को बहुत अधिक कुशलता से संभाला जाता है क्योंकि यह Exadata स्टोरेज सॉफ़्टवेयर का उपयोग करता है, जिसमें डेटाबेस लॉजिक अंतर्निहित होता है। क्लाइंट क्वेरी सबमिट करता है, डेटाबेस सर्वर एक इंटेलिजेंट डेटाबेस (iDB) संदेश बनाता है जिसमें क्वेरी मानदंड शामिल होते हैं, cellsrv घटक डेटा ब्लॉक्स को स्कैन करके मिलान करने वाली पंक्तियों और कॉलम की पहचान करता है, प्रत्येक स्टोरेज सर्वर क्वेरी मानदंड को समानांतर में निष्पादित करता है और केवल प्रासंगिक पंक्तियों को डेटाबेस सर्वर को इंटरकनेक्ट का उपयोग करके भेजता है, डेटाबेस परिणाम को समेकित करता है और क्लाइंट को पंक्तियाँ लौटाता है।
स्मार्ट स्कैन आवश्यकताएँ
- आप स्मार्ट स्कैन का उपयोग केवल फुल टेबल स्कैन या फुल इंडेक्स स्कैन के लिए कर सकते हैं।
- क्वेरीज़ को डायरेक्ट-पाथ रीड्स करना चाहिए।
- डेटाबेस इनिशियलाइज़ेशन पैरामीटर
CELL_OFFLOAD_PROCESSINGकोTRUEपर सेट करना होगा। - सेगमेंट्स को उन डिस्क ग्रुप्स में सहेजा जाना चाहिए जो पूरी तरह से Exadata सेल्स पर संग्रहीत हैं।
- सेगमेंट डेटा को संग्रहीत करने वाले ASM डिस्क ग्रुप्स में निम्नलिखित एट्रिब्यूट सेटिंग्स होनी चाहिए:
compatible.rdbms=11.2.0.0.0(या बाद का),compatible.asm=11.2.0.0.0(या बाद का),cell.smart_scan_capable=TRUE।
स्मार्ट स्कैन उदाहरण
स्मार्ट स्कैन सक्षम और फिर अक्षम करके पहले चरणों को निष्पादित करें ताकि आंकड़ों पर स्मार्ट स्कैन प्रभाव को मापा जा सके।
चरण 1: डेटाबेस से कनेक्ट करें
चरण 2: आंकड़े सत्यापित करें
चरण 3: स्मार्ट स्कैन अक्षम के साथ एक सेलेक्ट क्वेरी निष्पादित करें
चरण 4: फिर से आंकड़े सत्यापित करें
चरण 5: आंकड़े रीसेट करें
चरण 6: फिर से आंकड़े सत्यापित करें
चरण 7: स्मार्ट स्कैन अक्षम के बिना एक सेलेक्ट क्वेरी निष्पादित करें
चरण 8: आंकड़े सत्यापित करें
परिणाम दिखाते हैं कि स्मार्ट स्कैन सक्षम होने पर, क्वेरी अभी भी लगभग 759 MB I/O करती है, लेकिन केवल 1.7 MB DB सर्वर को लौटाया जाता है। यह स्मार्ट स्कैन की कार्रवाई का परिणाम है।
निष्कर्ष
Exadata में स्मार्ट स्कैन सुविधा SQL प्रोसेसिंग को डेटाबेस टियर के बजाय स्टोरेज टियर पर होने में सक्षम बनाती है ताकि क्वेरी प्रदर्शन में सुधार हो सके। स्मार्ट स्कैन डेटाबेस टियर को भेजे गए डेटा की मात्रा को कम करता है, जिससे डेटाबेस नोड्स पर CPU उपयोग कम होता है।