StackOverflow के अनुसार, PostgreSQL सबसे लोकप्रिय ओपन-सोर्स डेटाबेस है, जिसमें अधिक से अधिक डेवलपर्स और व्यवस्थापक इसके साथ काम करना चाहते हैं। सितंबर 2021 में जारी नवीनतम संस्करण PostgreSQL 14 में 200 से अधिक सुधार और नई सुविधाएं हैं, जो मोटे तौर पर तीन क्षेत्रों में आती हैं:सुरक्षा, प्रदर्शन और निगरानी।
इस साल की शुरुआत में जारी संस्करण 1.9.2 से शुरू होकर, ClusterControl अब PostgreSQL 14 के नवीनतम संस्करण का समर्थन करता है।
इस पोस्ट में, हम PostgreSQL 14 में उपलब्ध सबसे उल्लेखनीय विशेषताओं, प्रमुख अपडेट और सुधारों को देखेंगे।
सुरक्षा
पोस्टग्रेएसक्यूएल 14 का सबसे महत्वपूर्ण सुरक्षा परिवर्तन एससीआरएएम में जा रहा है क्योंकि एससीआरएएम-एसएचए -256 प्रमाणीकरण पहली बार पोस्टग्रेएसक्यूएल 10 में पेश किया गया था। एससीआरएएम डेटा के अनुपालन को विनियमित करने के लिए एक अधिक सरल और शक्तिशाली समाधान प्रदान करता है। सुरक्षा। पिछले डिफ़ॉल्ट MD5 प्रमाणीकरण में अतीत में कुछ कमजोरियों का शोषण हुआ है।
उन्नत प्रमाणीकरण के साथ, PostgreSQL 14 दो पूर्वनिर्धारित भूमिकाओं, pg_write_all_data, और pg_read_all_data को पेश करके टेबल, व्यू और स्कीमा पर उपयोगकर्ताओं को केवल-लिखने और केवल-पढ़ने की क्षमता प्रदान करने की प्रक्रिया को सरल बनाता है। पूर्व भूमिका सुपर-उपयोगकर्ता-शैली वाले विशेषाधिकार बनाने के लिए सुविधाजनक बनाती है। गतिविधियों और पहुंच के लिए सुविधाजनक होने के बावजूद, इस तरह के खाते को संयम से इस्तेमाल करना पड़ता है। बाद की भूमिका उपयोगकर्ता को डेटाबेस में सभी तालिकाओं, स्कीमाओं और विचारों के लिए केवल-पढ़ने के लिए पहुंच प्रदान करने में आसान बनाती है। इस भूमिका के पास किसी भी नई बनाई गई तालिका में डिफ़ॉल्ट रूप से पढ़ने की पहुंच होगी।
प्रदर्शन
निगम अधिक से अधिक डेटा संसाधित कर रहे हैं, और वेग, मात्रा, और विविधता (बिग डेटा के तीन बनाम) धीमा होने के कोई संकेत नहीं दिखाते हैं। PostgreSQL 14 ने इन कार्यभार का समर्थन करने और प्रदर्शन में सुधार करने में सक्षम होने के लिए कुछ बहुत महत्वपूर्ण बदलाव किए हैं। इसे निम्नलिखित पांच क्षेत्रों में सबसे अच्छा समूहीकृत किया जा सकता है:
मापनीयता और प्रदर्शन
PostgreSQL 14 बड़ी संख्या में विभाजन के साथ टेबल पर डिलीट और अपडेट के प्रदर्शन में बड़ी उपलब्धियां प्रदान करता है। यह निष्पादन-समय विभाजन प्रूनिंग का उपयोग करने के लिए विभाजित तालिकाओं पर हटाने और अद्यतन करने की अनुमति देता है। सबसे महत्वपूर्ण बात यह है कि यह संस्करण पहले की तुलना में अधिक विभाजनों को स्केल कर सकता है, जिससे PostgreSQL को पहले की तुलना में बहुत बड़े डेटाबेस का सामना करने की अनुमति मिलती है।
PostgreSQL संस्करण 14 में, विभाजन को अब समवर्ती रूप से भी अलग किया जा सकता है, जिससे बड़ी समय-श्रृंखला डेटा तालिकाओं को प्रबंधित करना आसान हो जाता है। यह नए date_bin() फ़ंक्शन के कारण संभव है, जिससे उपयोगकर्ता समय-श्रृंखला डेटा को दिनांक सीमाओं में बेहतर और अधिक आसानी से सारांशित कर सकते हैं।
PostgreSQL 14 ने TOAST के लिए LZ4 संपीड़न के लिए समर्थन जोड़ा। LZ4 नवीनतम संपीड़न तकनीक का उपयोग करता है और दस्तावेज़ डेटा के विघटन और संपीड़न की गति में सुधार पर ध्यान केंद्रित करता है। LZ4 बड़े XML और JSON दस्तावेज़ों के साथ अनुप्रयोगों को बेहतर बनाएगा, और इस संपीड़न एल्गोरिथम को सिस्टम और कॉलम दोनों स्तरों पर कॉन्फ़िगर किया जा सकता है।
वितरित डेटाबेस और वर्कलोड
PostgreSQL 14 भी postgres_fdw (विदेशी डेटा रैपर) में दो प्रमुख संवर्द्धन पेश करके डेटाबेस को क्षैतिज रूप से स्केल करने में सुधार प्रदान करता है जो वितरित डेटाबेस के प्रदर्शन को बेहतर बनाने में सहायक होते हैं। ये परिवर्तन विदेशी तालिकाओं (जब async_capable सेट है) पर डेटा के थोक सम्मिलन और समानांतर तालिका स्कैन का समर्थन करते हैं।
कनेक्शन कैशिंग भी प्रदर्शन में सुधार करता है, जिससे सभी लेनदेन में कनेक्शन खुले रहते हैं। हम Libpd पाइपलाइन मोड का भी उल्लेख कर सकते हैं, जो प्रत्येक कमांड पर नेटवर्क पुष्टिकरण की प्रतीक्षा किए बिना परिवर्तनों की धाराओं को प्रसारित करने की अनुमति देकर वितरित डेटाबेस के प्रदर्शन को बढ़ाता है।
प्रबंधनीयता
PostgreSQL 14 बी-ट्री इंडेक्स ब्लोट के मुद्दे को भी संबोधित करता है; इंडेक्स जो समय के साथ अक्सर अपडेट होते रहते हैं क्योंकि मृत टुपल्स जिन्हें वैक्यूम चलाकर हटाया जा सकता है।
इसकी वजह से, जब पृष्ठ रिक्त स्थानों के बीच भर जाता है, तो एक इन्सर्ट या अपडेट के कारण एक अपरिवर्तनीय पृष्ठ विभाजन हो सकता है। इस संस्करण ने वैक्यूम के बीच में मृत ट्यूपल्स (INDEX_CLEANUP पैरामीटर ऑटो पर सेट) का पता लगाकर और हटाकर वैक्यूम प्रक्रिया को बढ़ाया है।
वैक्यूम सिस्टम में एक और सुधार है हटाए गए पृष्ठों को उत्सुकता से हटाना। पिछले संस्करणों में, हटाए गए पृष्ठों को हटाने में दो वैक्यूम चक्र लगे, पहले पृष्ठ को हटाए गए के रूप में चिह्नित करके और दूसरा चक्र वास्तव में उस स्थान को खाली कर रहा था।
क्वेरी और इंडेक्स परफॉर्मेंस ट्यूनिंग
एप्लिकेशन ट्यूनिंग में इंडेक्स प्रबंधन PostgreSQL 14 में एक और बड़ा सुधार है। विशेष रूप से, REINDEX CONCURRENTLY और CREATE INDEX CONCURRENTLY, कई कमांड को एक दूसरे के साथ हस्तक्षेप किए बिना एक साथ चलने की अनुमति देता है। इंडेक्स पर अधिक, BRIN इंडेक्स अधिक लचीले हो गए हैं क्योंकि वे प्रति रेंज कई न्यूनतम/अधिकतम मान रिकॉर्ड कर सकते हैं, जो प्रत्येक पेज रेंज में मूल्यों के समूहों के लिए मूल्यवान है। साथ ही, ब्लूम फ़िल्टर का उपयोग करके BRIN अनुक्रमणिका डेटा के साथ प्रभावी ढंग से काम करती है जो ढेर में अच्छी तरह से स्थानीयकृत नहीं है।
कॉपी कमांड में फ्रीज़ विकल्प को डेटा लोडिंग प्रदर्शन पर पृष्ठ दृश्यता बिट्स को अपडेट करके बढ़ाया गया है। बाइनरी मोड कॉपी भी अब तेज हो गया है।
PostgreSQL 14 ने रीफ़्रेश मैटेरियलाइज़्ड व्यू और रिटर्न क्वेरी में क्वेरी समांतरता को जोड़कर क्वेरी समांतरता को परिष्कृत किया है। इन सुधारों को नेस्टेड लूप जॉइन और समानांतर अनुक्रमिक स्कैन में रोल आउट किया गया है।
PostgreSQL 14 ने उन स्थानों की संख्या बढ़ा दी है जहां विस्तारित आंकड़ों का उपयोग अभिव्यक्तियों और OR खंड अनुमान के लिए किया जा सकता है। पहले के विपरीत, जहां आंकड़े केवल स्तंभों पर थे, अब इसे अभिव्यक्तियों के समूह पर अनुमति है। सिस्टम दृश्य pg_stats_ext_exprs ऐसे आँकड़ों की रिपोर्ट करता है।
उन्नत तार्किक प्रतिकृति
एपीआई या ग्राहकों के लिए लंबे समय से चल रहे लेनदेन की स्ट्रीमिंग की अनुमति देने के लिए तार्किक प्रतिकृति में सुधार किया गया है। पिछले संस्करणों में, logical_decoding_work_mem से बड़े लेन-देन को डिस्क पर तब तक लिखा जाता था जब तक कि ग्राहक को लेन-देन को दोहराने से पहले लेन-देन पूरा नहीं हो जाता। नए संवर्द्धन के साथ, तार्किक प्रतिकृति बड़ी मात्रा में डीडीएल स्टेटमेंट को अधिक कुशलता से संभालती है।
प्रत्येक कमांड के बाद, लॉजिकल रेप्लिकेशन कैश इनवैलिडेशन मैसेजेस को WAL को इन-प्रोग्रेस ट्रांजैक्शन स्ट्रीमिंग द्वारा प्रोसेसिंग के लिए लिखता है। यह प्रक्रिया महत्वपूर्ण प्रदर्शन लाभ पैदा करती है।
निगरानी
2022 के सबसे बड़े buzzwords में से एक निगरानी है, क्योंकि व्यवस्थापक और डेवलपर समय के साथ प्रदर्शन के बारे में अधिक जानकारी चाहते हैं। PostgreSQL 14 ने निगरानी में मदद के लिए नई सुविधाएँ पेश की हैं। उन सभी में सबसे महत्वपूर्ण परिवर्तन क्वेरी हैश सिस्टम को pg_stat_statement से कोर डेटाबेस में स्थानांतरित करना है। एक आईडी का उपयोग करके कई पोस्टग्रेएसक्यूएल सिस्टम और लॉगिंग फ़ंक्शन में क्वेरी मॉनिटरिंग की अनुमति दी गई है।
इस संस्करण ने निम्नलिखित नए निगरानी पैरामीटर भी पेश किए हैं:
-
Idle_session_timeout
-
विभाजित तालिका के चाइल्ड इंडेक्स पर REINDEX
-
Maintenance_io_concurrency
-
Pg_stat_progress_copy
-
Pg_stat_wal
PostgreSQL 14 में अपग्रेड करना
यदि आप अपने वर्तमान PostgreSQL संस्करण को संस्करण 14 में अपग्रेड करना चाहते हैं, तो आपके पास तीन मुख्य विकल्प हैं जो इस कार्य को करेंगे:
-
Pg_dumpall:यह एक तार्किक बैकअप टूल है जो आपको अपने डेटा को डंप करने और इसे नए PostgreSQL में पुनर्स्थापित करने की अनुमति देता है। संस्करण। यहां आपके पास एक डाउनटाइम अवधि होगी जो आपके डेटा आकार के अनुसार अलग-अलग होगी। आपको सिस्टम को रोकना होगा या प्राथमिक नोड में नए डेटा से बचना होगा, pg_dumpall चलाना होगा, जनरेट किए गए डंप को नए डेटाबेस नोड में ले जाना होगा, और इसे पुनर्स्थापित करना होगा। इस समय के दौरान, आप डेटा असंगति से बचने के लिए अपने प्राथमिक PostgreSQL डेटाबेस में नहीं लिख सकते।
-
Pg_upgrad:यह आपके PostgreSQL संस्करण को अपग्रेड करने के लिए एक PostgreSQL टूल है। यह उत्पादन के माहौल में खतरनाक हो सकता है, और हम उस मामले में इस पद्धति की अनुशंसा नहीं करते हैं। इस पद्धति का उपयोग करने से, आपके पास डाउनटाइम होगा, लेकिन यह संभवत:पिछली pg_dump विधि का उपयोग करने की तुलना में काफी कम होगा।
-
तार्किक प्रतिकृति:PostgreSQL 10 के बाद से, आप इस प्रतिकृति विधि का उपयोग कर सकते हैं जो आपको अनुमति देता है शून्य (या लगभग शून्य) डाउनटाइम के साथ प्रमुख संस्करण उन्नयन करें। इस तरह, आप पिछले PostgreSQL संस्करण में एक स्टैंडबाय नोड जोड़ सकते हैं, और जब प्रतिकृति अप-टू-डेट होती है, तो आप नए PostgreSQL नोड को बढ़ावा देने के लिए एक विफलता प्रक्रिया कर सकते हैं।
नई PostgreSQL 14 सुविधाओं के बारे में अधिक विस्तृत जानकारी के लिए, आप आधिकारिक दस्तावेज़ीकरण देख सकते हैं।
रैपिंग अप
PostgreSQL 14 ने वास्तव में इस लोकप्रिय ओपन-सोर्स डेटाबेस के उपयोगकर्ताओं के लिए गेम को आगे बढ़ाया है। अब डेवलपर्स और प्रशासकों ने उच्च प्रदर्शन और मापनीयता को बढ़ावा देने, वितरित डेटाबेस के लिए एन्हांसमेंट, बेहतर अवलोकन क्षमता, और अधिक के लिए क्षमताओं में सुधार किया है।
ClusterControl नवीनतम तकनीकी संस्करणों के उन्नयन को सरल और तनाव मुक्त बनाता है। यदि आप पहले से ClusterControl का उपयोग नहीं कर रहे हैं, तो आप 30 दिनों के लिए इसका निःशुल्क मूल्यांकन कर सकते हैं। ClusterControl 1.9.2 की नवीनतम रिलीज़ के बारे में अधिक जानकारी के लिए, पूर्ण रिलीज़ नोट देखें।
ट्विटर और लिंक्डइन पर हमें फॉलो करके और हमारे न्यूजलेटर की सदस्यता लेकर सबसे लोकप्रिय ओपन-सोर्स डेटाबेस के लिए सभी नवीनतम समाचारों और सर्वोत्तम प्रथाओं के साथ अद्यतित रहें।