ओरेकल 21c डेटाबेस ऑन-प्रिमाइसेस और क्लाउड इंफ्रास्ट्रक्चर में ओरेकल डेटाबेस सेवाओं को संचालित करता है, जिसमें ऑटोनॉमस डेटाबेस (ADB), ओरेकल एक्साडेटा सर्विस@कस्टमर और ओरेकल एक्साडेटा मशीन शामिल हैं।
नवीनतम संस्करण की मुख्य विशेषताएं
नवीनतम ओरेकल संस्करण में नए केस, ऑप्टिमाइज़र प्रदर्शन को स्वचालित करना, JSON डेटा और ग्राफ मॉडल के लिए समर्थन शामिल हैं। इसकी स्वचालन सुविधाएं उपयोगकर्ताओं और डेवलपर्स दोनों के लिए जीवन आसान बनाती हैं। यह डेटा मॉडल और वर्कलोड की एक बड़ी श्रृंखला का समर्थन करता है, जिसमें अंतर्निहित मशीन लर्निंग क्षमताएं शामिल हैं, जो अलग-अलग सेवाओं की आवश्यकता को समाप्त करती हैं। ओरेकल 21c सभी प्रकार के डेटा मॉडल में SQL, REST और API लेनदेन को सक्षम बनाता है।
21c आर्किटेक्चर
ओरेकल डेटाबेस आर्किटेक्चर पुराने संस्करण के समान है। इसमें ओरेकल डेटाबेस इंस्टेंस और ओरेकल डेटाबेस होते हैं, जैसा कि निम्न आरेख में दिखाया गया है।
छवि स्रोत
ओरेकल डेटाबेस 21c तकनीकी आर्किटेक्चर
मल्टीटेनेंट आर्किटेक्चर में भौतिक फाइलें होती हैं जिन्हें डेटाफाइल्स कहा जाता है और डेटाबेस इंस्टेंस में मेमोरी संरचनाएं (SGA जिसे शेयर्ड ग्लोबल एरिया के नाम से जाना जाता है और PGA) और बैकग्राउंड प्रोसेस होते हैं जो सर्वर प्रोसेस की मदद से उपयोगकर्ताओं की ओर से क्वेरी निष्पादित करने, डिस्क से डेटा लाने, डेटाफाइल्स या रीडो लॉग फाइल्स पर डेटा लिखने, एक्जीक्यूशन प्लान स्टोर करने जैसे कार्य करते हैं।
सिंगल डेटाबेस आर्किटेक्चर में इंस्टेंस और डेटाबेस के बीच एक-से-एक संबंध होता है। एक ही सर्वर पर कई सिंगल इंस्टेंस इंस्टॉल किए जा सकते हैं, लेकिन प्रत्येक इंस्टेंस का अपना अलग डेटाबेस होगा।
ओरेकल RAC आर्किटेक्चर में अलग-अलग सर्वरों पर चलने वाले कई इंस्टेंस होते हैं, लेकिन सभी एक ही डेटाबेस का उपयोग करते हैं। यह कॉन्फ़िगरेशन ग्राहकों को उच्च उपलब्धता, उच्च-स्तरीय प्रदर्शन और स्केलेबिलिटी प्रदान करने के लिए डिज़ाइन किया गया है। डेटाबेस में लिसनर क्लाइंट एप्लिकेशन अनुरोधों को स्वीकार करता है और डेटाबेस से कनेक्शन स्थापित करता है, फिर इसे सर्वर प्रोसेस को सौंप देता है। सर्वर प्रोसेस उपयोगकर्ता की ओर से काम करता है और उसके अनुरोध को पूरा करता है।
ओरेकल 21c की विशेषताएं
21c जेनरेशन सभी प्रकार के डेटा प्रकारों का समर्थन करता है जैसे रिलेशनल, JSON, XML, स्पेशियल ग्राफ, OLAP आदि, और विश्लेषणात्मक, परिचालन और मिश्रित वर्कलोड जैसे सभी प्रकार के वर्कलोड के लिए उच्च प्रदर्शन, स्केलेबिलिटी, उपलब्धता और सुरक्षा प्रदान करता है, जैसा कि निम्न छवि में दर्शाया गया है।
छवि स्रोत
1) ब्लॉकचेन टेबल्स:
इसने सत्यापित लेनदेन से संबंधित विभिन्न समस्याओं का समाधान किया है। यह उन एप्लिकेशन के निर्माण की जटिल प्रकृति का समर्थन करता है जो डिस्ट्रिब्यूटेड लेजर का समर्थन कर सकते हैं। ये टेबल किसी सामान्य हीप टेबल की तरह काम करते हैं लेकिन कई महत्वपूर्ण अंतरों के साथ। इनमें सबसे उल्लेखनीय यह है कि पंक्तियों को टेबल में डालते समय क्रिप्टोग्राफिक रूप से हैश किया जाता है, जिससे यह सुनिश्चित होता है कि पंक्ति को बाद में बदला नहीं जा सकता।
छवि स्रोत
यह एक इन्सर्ट-ओनली टेबल बनाता है और उपयोगकर्ता ब्लॉकचेन टेबल की पंक्तियों को अपडेट या डिलीट नहीं कर सकते। साथ ही, उपयोगकर्ताओं को एक निश्चित समय सीमा के भीतर डेटा ट्रंकेट करने, ब्लॉकचेन ड्रॉप करने और टेबल पार्टीशन करने से रोका जाता है। ये महत्वपूर्ण क्षमताएं अन्य उपयोगकर्ताओं को यह विश्वास दिलाती हैं कि ब्लॉकचेन टेबल में रखा डेटा घटनाओं का सटीक रिकॉर्ड है।
2) नेटिव JSON डेटा प्रकार:
यह JSON डेटा को VARCHAR2 या LOB (CLOB या BLOB) के रूप में संग्रहीत करता है जो डेवलपर्स को स्कीमालेस डिज़ाइन मॉडल के लचीलेपन के साथ एप्लिकेशन बनाने में मदद करता है। उदाहरण के लिए, एक उपयोगकर्ता SQL के साथ JSON दस्तावेज़ों को क्वेरी कर सकता है और उन्नत विश्लेषण का लाभ उठा सकता है, व्यक्तिगत विशेषताओं या पूरे दस्तावेज़ों को इंडेक्स कर सकता है, और अरबों JSON दस्तावेज़ों को समानांतर में प्रोसेस कर सकता है। ओरेकल डेटाबेस 21c में, एक नेटिव डेटा प्रकार "JSON" की पेशकश करके JSON समर्थन को और बढ़ाया गया है।
इसका मतलब है कि रीड या अपडेट ऑपरेशन पर JSON को पार्स करने के बजाय, पार्स केवल इन्सर्ट पर होता है और JSON को फिर आंतरिक बाइनरी प्रारूप में रखा जाता है जो एक्सेस को बहुत तेज़ बनाता है। इसके परिणामस्वरूप रीड और अपडेट ऑपरेशन 4 या 5 गुना तेज़ हो सकते हैं और बहुत बड़े JSON दस्तावेज़ों के अपडेट 20 से 30 गुना तेज़ हो सकते हैं।
CREATE TABLE j_order
(
id INTEGER PRIMARY KEY,
po_doc JSON
);
नया डेटा प्रकार ओरेकल डेटाबेस 21c में JSON के लिए पेश किया गया एकमात्र परिवर्तन नहीं था, ओरेकल ने एक नया JSON फंक्शन JSON_TRANSFORM भी जोड़ा जो एक ही ऑपरेशन में दस्तावेज़ में कई विशेषताओं को अपडेट और हटाना बहुत सरल बनाता है।
UPDATE j_order SET po_doc = JSON_TRANSFORM( po_doc,
SET '$.address.city' = 'Santa Cruz',
REMOVE'$.phones[*]?(@.type == "office")' )
WHERE id = 555;
3) ओरेकल डेटाबेस के अंदर जावास्क्रिप्ट निष्पादित करना:
यह मल्टी लैंग्वेज इंजन (MLE) का उपयोग करके डेटाबेस के अंदर जावास्क्रिप्ट कोड चलाता है जिसमें DBMS_MLE नामक एक नया PL/SQL पैकेज होता है। MLE. जावास्क्रिप्ट वेब एप्लिकेशन और मोबाइल ऐप में समृद्ध उपयोगकर्ता इंटरैक्शन को सक्षम बनाता है। यह उन कुछ भाषाओं में से एक है जो वेब ब्राउज़र में चलती है और इसका उपयोग सर्वर और क्लाइंट-साइड दोनों कोड विकसित करने के लिए किया जा सकता है।
जटिल प्रोग्राम लागू करने के लिए मौजूदा जावास्क्रिप्ट लाइब्रेरी का एक बड़ा संग्रह है, और जावास्क्रिप्ट JSON और REST जैसी लोकप्रिय विकास तकनीकों के साथ मिलकर काम करती है। ओरेकल 21c में डेवलपर अपना जावास्क्रिप्ट कोड वहां चला सकते हैं जहां डेटा रहता है। यह उन्हें अपने डेटा को मिड-टियर या ब्राउज़र में ले जाए बिना जावास्क्रिप्ट में लिखे छोटे कम्प्यूटेशनल कार्यों को निष्पादित करने की अनुमति देता है। MLE स्वचालित रूप से जावास्क्रिप्ट डेटा प्रकारों को ओरेकल डेटाबेस डेटा प्रकारों में और इसके विपरीत मैप करता है और डेवलपर्स को डेटा प्रकार रूपांतरण का ध्यान नहीं रखना पड़ता।
साथ ही, जावास्क्रिप्ट अंतर्निहित जावास्क्रिप्ट मॉड्यूल के माध्यम से PL/SQL और SQL निष्पादित कर सकता है। यह सब APEX डेवलपर्स को अपने APEX ऐप्स में जावास्क्रिप्ट को प्रथम श्रेणी की भाषा के रूप में उपयोग करने में सक्षम बनाता है, बिना PL/SQL और SQL की शक्ति का त्याग किए। जावास्क्रिप्ट में, आप नियमित SQL के माध्यम से डेटाबेस - टेबल और व्यू - तक पहुंच सकते हैं। निम्नलिखित दर्शाता है कि जावास्क्रिप्ट में कोड कैसे लिखा जाता है:
declare
ctx dbms_mle.context_handle_t;
begin
ctx := dbms_mle.create_context(); -- MLE निष्पादन के लिए निष्पादन संदर्भ बनाएं
dbms_mle.eval(ctx, 'JAVASCRIPT', 'console.log("Hello from JavaScript")'); -- निष्पादन संदर्भ में स्रोत कोड स्निपेट का मूल्यांकन करें
dbms_mle.drop_context(ctx); -- जब आवश्यक न हो तो निष्पादन संदर्भ को ड्रॉप करें
नोट: जब तक संदर्भ बनाए रखा जाता है, यह फ़ंक्शन सहित ग्लोबल ऑब्जेक्ट्स के मान रखता है end;
4) SQL मैक्रोज़:
SQL क्वेरी का जटिल होना सामान्य है क्योंकि जॉइन की संख्या बढ़ जाती है या डेटा पुनर्प्राप्त करना अधिक जटिल हो जाता है और डेवलपर्स इन ऑपरेशन को सरल बनाने के लिए स्टोर्ड प्रोसीजर और फंक्शन का उपयोग करके इस समस्या को हल करते हैं। लेकिन यह प्रदर्शन को कम कर सकता है क्योंकि SQL इंजन PL/SQL इंजन के साथ संदर्भ बदलता है। ओरेकल 21c में, SQL मैक्रोज़ इस समस्या को हल करते हैं क्योंकि ये SQL एक्सप्रेशन और टेबल फंक्शन को स्टोर्ड प्रोसीजर के कॉल से बदलने की अनुमति देते हैं जो निष्पादित किए जाने वाले SQL में डाले जाने वाले स्ट्रिंग लिटरल को वापस करते हैं।
5) इन-मेमोरी एन्हांसमेंट:
कॉलमर प्रारूप का उपयोग करके डेटा का विश्लेषण करने से पंक्ति-आधारित प्रारूप की तुलना में प्रदर्शन बढ़ सकता है। हालांकि पंक्ति मॉडल में डेटा अपडेट करना तेज़ होता है, और ओरेकल डेटाबेस इन-मेमोरी फीचर हमें आवश्यकता के अनुसार दोनों मॉडल का उपयोग करने में मदद करता है। इसकी मदद से उपयोगकर्ता अपने एप्लिकेशन को बिना किसी बदलाव के चला सकते हैं और इन-मेमोरी एक कॉलमर स्टोर बनाए रखेगा जो ब्लेज़िंगली फास्ट रीयल-टाइम विश्लेषणात्मक क्वेरी का समर्थन करता है। ओरेकल डेटाबेस इन-मेमोरी में प्रदर्शन बढ़ाने और उपयोग को आसान बनाने के लिए तीन प्रमुख सुधार हैं।
A. डेटाबेस इन-मेमोरी वेक्टर जॉइन्स:
यह इन-मेमोरी कॉलम स्टोर के अंदर कॉलम पर हैश जॉइन जैसे ऑपरेशन को तेज़ करने में मदद करता है। हैश जॉइन के मामले में, जॉइन को छोटे ऑपरेशन में तोड़ा जाता है और वेक्टर प्रोसेस को पास किया जाता है। उपयोग की जाने वाली की-वैल्यू टेबल SIMD ऑप्टिमाइज़्ड होती है और दाएं और बाएं हाथ के जॉइन पर पंक्तियों का मिलान करने के लिए उपयोग की जाती है और यह प्रदर्शन को दस गुना सुधारती है।
B. सेल्फ-मैनेजिंग इन-मेमोरी कॉलम स्टोर:
जब ओरेकल डेटाबेस इन-मेमोरी जारी किया गया था, तो उपयोगकर्ताओं को स्पष्ट रूप से उन कॉलम की घोषणा करनी पड़ती थी जिन्हें मेमोरी कॉलम स्टोर में भरा जाना था, यह उपयोगकर्ताओं को उच्च नियंत्रण देता है यदि मेमोरी तंग है।
18c डेटाबेस में, यह कार्यक्षमता पेश की गई थी जो सक्रिय रूप से उपयोग किए जाने पर ऑब्जेक्ट को कॉलम स्टोर में स्वचालित रूप से रखती थी और उपयोग में न आने वाले ऑब्जेक्ट को हटा देती थी। हालांकि, उपयोगकर्ताओं को अभी भी विचार किए जाने वाले ऑब्जेक्ट को इंगित करना पड़ता था।
ओरेकल डेटाबेस 21c में INMEMORY_AUTOMATIC_LEVEL को HIGH पर सेट करने से यह सुनिश्चित होता है कि सभी ऑब्जेक्ट पर विचार किया जाता है - जिससे इन-मेमोरी कॉलम स्टोर के प्रबंधन का काम सरल हो जाता है।
C. इन-मेमोरी हाइब्रिड कॉलमर स्कैन:
मेमोरी सीमित होने के कारण हर टेबल के हर कॉलम को कॉलम स्टोर में रखना संभव नहीं है। कई मामलों में, यह कोई समस्या नहीं है लेकिन कभी-कभी, उपयोगकर्ताओं का सामना एक ऐसी क्वेरी से हो सकता है जिसे कॉलम स्टोर से डेटा (कॉलम) और डेटा की आवश्यकता होती है जो केवल पंक्ति स्टोर में उपलब्ध है।
ओरेकल डेटाबेस इन-मेमोरी के पिछले रिलीज़ में, ऐसी क्वेरी केवल पंक्ति स्टोर के विरुद्ध चलती थीं। ओरेकल डेटाबेस 21c में, उपयोगकर्ता अब दोनों का उपयोग कर सकते हैं! ऑप्टिमाइज़र अब इन-मेमोरी कॉलम स्टोर को स्कैन करने और यदि आवश्यक हो तो पंक्ति स्टोर से प्रोजेक्टेड कॉलम मान लाने का चुनाव कर सकता है। इसके परिणामस्वरूप महत्वपूर्ण प्रदर्शन सुधार हो सकता है।
छवि स्रोत
निष्कर्ष
कुल लाभों को निम्नानुसार सारांशित किया जा सकता है:
- 1) डेटाबेस के क्वेरी प्रदर्शन में महत्वपूर्ण सुधार
- 2) 21c जेनरेशन JSON, XML, और OLAP जैसे सभी डेटा प्रकारों का समर्थन करता है।
- 3) यह बड़े पैमाने पर स्केलेबल, अत्यधिक उपलब्ध है और OLTP, एड-हॉक क्वेरी और डेटा वेयरहाउस जैसे सभी वर्कलोड को सुरक्षा देता है
- 4) यह परिचालन और मिश्रित दोनों वर्कलोड का समर्थन करता है।
- 5) 21c में कई चीजें स्वचालित हैं जैसे समानांतर स्कैन, ऑनलाइन बैकअप, आदि, जिससे डेवलपर्स डेटा दृढ़ता की चिंता से मुक्त होते हैं।
- 6) स्वचालित इंडेक्सिंग जैसी सुविधाओं के साथ प्रदर्शन सुविधाओं को काफी हद तक स्वचालित किया गया है।
किसी भी टिप्पणी या प्रश्न के लिए फीडबैक टैब का उपयोग करें। आप हमारे साथ बातचीत भी शुरू कर सकते हैं।