परिचय
मूल रूप से 13 फरवरी, 2020 को ObjectRocket.com/blog पर प्रकाशित।
PostgreSQL® (Postgres®) एक्सटेंशन इकोसिस्टम अत्यंत मजबूत है और Postgres को अतिरिक्त क्षमताओं की एक विस्तृत श्रृंखला प्रदान करता है।
हम आपको ObjectRocket प्लेटफॉर्म पर प्रोडक्शन डेटाबेस संचालित करने के लिए आवश्यक सभी टूल प्रदान करना चाहते हैं, इसलिए हमने हाल ही में एक्सटेंशन का उपयोग करने की क्षमता जोड़ी है। एक्सटेंशन प्लग-इन के रूप में कार्य करते हैं और अतिरिक्त कार्यक्षमता और सुविधाएं प्रदान करते हैं।
उपलब्ध एक्सटेंशन देखें
हम अपने Postgres इंस्टेंस के लिए कई एक्सटेंशन शामिल करते हैं, और हमने उपलब्ध सबसे आम और अनुरोधित प्लग-इन को कवर किया है। हमारी सेवा पर समर्थित प्लग-इन की सूची देखने के लिए, हमारी सेवा पर चल रहे इंस्टेंस से कनेक्ट करें और निम्नलिखित क्वेरी का उपयोग करें:
SELECT * FROM pg_available_extensions;: postgres एक्सटेंशन डायरेक्टरी में सभी एक्सटेंशन की एक सुपर सूची दिखाता है।SHOW extwlist.extensions;: हमारी सेवा पर अनुमत एक्सटेंशन दिखाता है।
चूंकि Postgres पैकेज में डिफ़ॉल्ट रूप से कुछ एक्सटेंशन शामिल हैं जिन तक हम उपयोगकर्ता पहुंच प्रदान नहीं करते, इसलिए दोनों सूचियां थोड़ी भिन्न होती हैं। यदि आपको कोई एक्सटेंशन चाहिए जो व्हाइटलिस्ट में नहीं है या बिल्कुल उपलब्ध नहीं है, तो आप इसे हमारे प्लेटफॉर्म पर जोड़ने के लिए हमारी सपोर्ट टीम के साथ काम कर सकते हैं।
चूंकि हम नियमित रूप से एक्सटेंशन जोड़ते हैं, क्वेरी चलाने से हमेशा सबसे अद्यतित सूची मिलती है। निम्न ObjectRocket सेवा पर उपलब्ध और अनुमत दोनों एक्सटेंशन की वर्तमान सूची है:
एक्सटेंशन लोड करना
सेवा पर एक्सटेंशन लोड करना Postgres में सामान्य तरीके से ही काम करता है। आप उस डेटाबेस में CREATE EXTENSION कमांड जारी करते हैं जिसमें आप कार्यक्षमता जोड़ना चाहते हैं।
यहां एक सीधा उदाहरण है। uuid-ossp एक्सटेंशन UUID को प्रबंधित करने के लिए उपयोगिताएं प्रदान करता है। निम्न उदाहरण ग्राफिक uuid_generate_v1() फ़ंक्शन का उपयोग करने का प्रयास दिखाता है:

जैसा कि आप देख सकते हैं, फ़ंक्शन शुरू में विफल होता है क्योंकि हमने अभी तक एक्सटेंशन लोड नहीं किया था। हालांकि, uuid-ossp एक्सटेंशन लोड करने और उसी फ़ंक्शन को पुनः प्रयास करने के बाद, हम देखते हैं कि यह अब हमारे लिए एक UUID लौटाता है।
फिर से, यह एक बहुत ही सरल उदाहरण है। एक्सटेंशन बहुत कुछ कर सकते हैं, लेकिन आप मूल यांत्रिकी देख सकते हैं।
ध्यान रखें कि एक्सटेंशन केवल उन डेटाबेस में सक्रिय या उपयोग योग्य होते हैं जिनमें आप उन्हें लोड करते हैं। दूसरे शब्दों में, हर बार जब आप एक नया डेटाबेस बनाते हैं, तो आपको उस डेटाबेस में CREATE EXTENSION चलाने की आवश्यकता होती है। यदि आप चाहते हैं कि कोई एक्सटेंशन नए डेटाबेस में स्वचालित रूप से उपलब्ध हो, तो आपको या तो एक नया डेटाबेस टेम्पलेट बनाना होगा और नए डेटाबेस बनाते समय उसका उपयोग करना होगा, या template1 डेटाबेस को अपडेट करना होगा ताकि उस एक्सटेंशन को शामिल किया जा सके। डिफ़ॉल्ट रूप से, सभी नए डेटाबेस template1 की एक प्रति होते हैं।
नए एक्सटेंशन का आनंद लें, और हमें बताएं कि क्या आप चाहते हैं कि हम विशिष्ट कार्यक्षमता जोड़ें।