Oracle 12c रिलीज़ 2 संस्करण में, Oracle ने एक सुविधा पेश की जिसने हमें बाहरी टेबल पर पार्टीशन बनाने की क्षमता प्रदान की। Oracle 19c संस्करण में, Oracle ने हाइब्रिड पार्टीशनिंग नामक एक नई सुविधा पेश की जो हमें कुछ पार्टीशन को डेटाबेस के बाहर यानी फ्लैट फाइल्स में और कुछ पार्टीशन को टेबलस्पेस में यानी डेटाबेस के अंदर बनाने की अनुमति देती है।
इस सुविधा की मदद से, हम कम उपयोग किए जाने वाले पुराने पार्टीशन को बाहरी स्रोत यानी Linux फाइल सिस्टम पर और सबसे सक्रिय पार्टीशन को डेटाबेस में ले जा सकते हैं। इस डेमो में, हम DATA नामक एक हाइब्रिड पार्टीशन्ड टेबल बनाएंगे जिसमें 4 पार्टीशन DATA_2019, DATA_2020, DATA_2021 और DATA_2022 होंगे। वर्ष 2019, 2020 और 2021 के डेटा OS डायरेक्टरी /home/oracle/data_dir में फ्लैट फाइलों में संग्रहीत हैं।
ये 3 फ्लैट फाइलें 2019, 2020 और 2022 के डेटा को व्हाइटस्पेस से अलग करके रखती हैं।
चरण 1: डेटाबेस में लॉगिन करें और लक्ष्य PDB सेट करें जिसमें टेबल बनाई जानी है।
चरण 2: डेटाबेस में DATA_FILES_DIR नामक एक डायरेक्टरी बनाएं जो OS डायरेक्टरी data_dir को इंगित करती हो। APP_USER उपयोगकर्ता बनाएं और डायरेक्टरी पर READ, WRITE अनुमति दें।
चरण 3: APP_USER में हाइब्रिड पार्टीशन्ड टेबल DATA बनाएं। पार्टीशन DATA_2019, DATA_2020 और DATA_2021 डेटाबेस के बाहर हैं और इनमें फ्लैट फाइलों में डेटा है। लेकिन पार्टीशन DATA_2022 डेटाबेस के अंदर है।
चरण 4: हम प्रत्येक पार्टीशन से डेटा क्वेरी करने में सक्षम हैं।
DATA_2019 -
DATA_2020 -
DATA_2021 -
DATA_2022 -
चरण 5: जांचें कि बनाई गई टेबल DATA हाइब्रिड पार्टीशन्ड टेबल है?
चरण 6: जब पार्टीशन DATA_2022 में डेटा इन्सर्ट करने का प्रयास किया जाता है, तो यह ORA-01950: no privileges on tablespace 'USERS' त्रुटि के साथ विफल होता है। यह पुष्टि करता है कि पार्टीशन DATA_2022 में डेटा USERS टेबलस्पेस में संग्रहीत होगा यानी डेटाबेस के अंदर। जब USERS टेबलस्पेस पर कोटा दिया जाता है, तो हम पार्टीशन DATA_2022 में डेटा इन्सर्ट करने में सक्षम होते हैं।
चरण 7: नीचे दी गई क्वेरी दिखाती है कि केवल पार्टीशन DATA_2022 डेटाबेस में संग्रहीत है। अन्य पार्टीशन का डेटा डेटाबेस के बाहर है।
निष्कर्ष
इस नई सुविधा का उपयोग करके हम एक टेबल के पुराने पार्टीशन को जो सक्रिय नहीं हैं, डेटाबेस के बाहर किसी अन्य सस्ते स्टोरेज पर ले जा सकते हैं - जबकि सक्रिय टेबल डेटा Oracle डेटाबेस के अंदर रहता है।
किसी भी टिप्पणी या प्रश्न के लिए फीडबैक टैब का उपयोग करें। आप हमारे साथ बातचीत भी शुरू कर सकते हैं।