MariaDB सर्वर 10.5, MariaDB का एक ताज़ा, नया और स्थिर संस्करण है, जिसे 24 जून, 2020 को रिलीज़ किया गया था। आइए उन विशेषताओं पर एक नज़र डालें जो यह हमें लाएगी।
अधिक विस्तृत विशेषाधिकार
MariaDB 10.5 के साथ विशेषाधिकारों के संबंध में कुछ बदलाव आ रहे हैं। मुख्य रूप से, SUPER विशेषाधिकार को कई नए विशेषाधिकारों में विभाजित किया गया है, जो इस बात पर अधिक बारीक नियंत्रण स्थापित करने की अनुमति देता है कि दिए गए उपयोगकर्ताओं के लिए किन क्रियाओं की अनुमति है और क्या नहीं। मारियाडीबी 10.5 में उपलब्ध नए विशेषाधिकारों की सूची नीचे दी गई है:
- बिनलॉग व्यवस्थापक
- बिनलॉग रीप्ले
- कनेक्शन एडमिन
- संघीय व्यवस्थापक
- READ_ONLY ADMIN
- प्रतिकृति मास्टर व्यवस्थापक
- प्रतिकृति दास व्यवस्थापक
- उपयोगकर्ता सेट करें
InnoDB प्रदर्शन सुधार
MariaDB 10.5 InnoDB के लिए प्रदर्शन सुधारों की सूची के साथ आता है। यह जानना महत्वपूर्ण है कि मारियाडीबी 10.5 ने मारियाडीबी 10.4 से इनो डीबी को एम्बेड किया है। प्रदर्शन संशोधन और सुधार होने जा रहे हैं लेकिन InnoDB का मूल मारियाडीबी 10.4 जैसा ही है। यह देखना बहुत दिलचस्प है कि मारियाडीबी ने जो रास्ता चुना है वह प्रदर्शन के मामले में कैसा होगा। एक ओर, पुराने संस्करण से चिपके रहने से मारियाडीबी के लिए तेजी से रिलीज चक्र की अनुमति मिलती है - मारियाडीबी को पूरी तरह से नए इनो डीबी को पोर्ट करना काफी चुनौती भरा होगा और, ईमानदार होने के लिए, वास्तव में पूरा करना संभव नहीं हो सकता है। कृपया ध्यान रखें कि मारियाडीबी अपस्ट्रीम के साथ अधिक से अधिक असंगत हो जाती है। पिछले निर्माण के बाद से कुछ समय हो गया है जहां आप केवल बायनेरिज़ को स्वैप कर सकते हैं और सब कुछ बिना किसी समस्या के काम करेगा।
MariaDB ने एन्क्रिप्शन या कम्प्रेशन जैसी सुविधाओं के अपने सेट को विकसित किया है, जिससे वे कार्यान्वयन संगत नहीं हैं। दूसरी ओर, नए InnoDB ने MariaDB 10.4 की तुलना में काफी बेहतर प्रदर्शन किया है। पिछले संस्करण की तुलना में इसे और अधिक स्केलेबल बनाने के लिए कोड की बहुत सारी लाइनें लिखी गई हैं (और कोड की बहुत सारी लाइनें हटा दी गई हैं)। यह देखना बहुत दिलचस्प होगा कि क्या मारियाडीबी 10.5 अपने समवर्ती से बेहतर प्रदर्शन कर पाएगी।
हम विवरण में नहीं जा रहे हैं क्योंकि यह वही है जो आप मारियाडीबी वेबसाइट पर पा सकते हैं, हम कुछ परिवर्तनों का उल्लेख करना चाहते हैं। InnoDB रीडो लॉग ने कुछ कामों को उन्हें और अधिक कुशल बनाते हुए देखा है। इनो डीबी बफर पूल में भी इस हद तक सुधार किया गया है कि कई बफर पूल बनाने के विकल्प को हटा दिया गया है क्योंकि अब इसकी आवश्यकता नहीं है - प्रदर्शन चुनौतियों को ठीक करने का लक्ष्य 10.5 में पहले ही तय कर दिया गया था, इस प्रकार यह विकल्प आवश्यक नहीं है।
यह भी ध्यान रखना महत्वपूर्ण है कि 10.5 में InnoDB, परिवर्तनों के कारण, 10.4 में InnoDB के साथ असंगत होगा। अपग्रेड केवल एकतरफा होगा, आपको तदनुसार अपनी अपग्रेड प्रक्रिया की योजना बनानी चाहिए।
गैलेरा क्लस्टर के लिए पूर्ण GTID समर्थन
गैलेरा क्लस्टर मारियाडीबी 10.5 में पूर्ण जीटीआईडी सपोर्ट के साथ आएगा। यह गैलेरा क्लस्टर और एसिंक्रोनस प्रतिकृति के मिश्रण को अधिक सहज और कम समस्याग्रस्त बनाना चाहिए।
प्रतिकृति और बाइनरी लॉग के लिए अधिक मेटाडेटा
प्रतिकृति के बारे में बात करते हुए, मारियाडीबी 10.5 ने बाइनरी लॉग मेटाडेटा में सुधार किया है। यह दोहराए जा रहे डेटा के बारे में अधिक जानकारी के साथ आता है:
- संख्यात्मक स्तंभों का हस्ताक्षर
- कैरेक्टर कॉलम और बाइनरी कॉलम का कैरेक्टर सेट
- कॉलम का नाम
- SET कॉलम का स्ट्रिंग मान
- ENUM कॉलम का स्ट्रिंग मान
- प्राथमिक कुंजी
- SET कॉलम और ENUM कॉलम का कैरेक्टर सेट
- ज्यामिति प्रकार
इससे मास्टर और स्लेव पर अलग-अलग स्कीमा होने पर प्रतिकृति समस्याओं से बचने में मदद मिलनी चाहिए।
सिंटैक्स
MariaDB 10.5 में SQL सिंटैक्स में कई बदलाव किए गए हैं। INTERSECT हमें एक क्वेरी लिखने की अनुमति देता है जिसके परिणामस्वरूप दो SELECT स्टेटमेंट द्वारा वापस आने वाली पंक्तियाँ होंगी। MariaDB में 10.5 INTERSECT ALL जोड़ा गया है, जो डुप्लिकेट मानों के साथ परिणाम सेट को वापस करने की अनुमति देता है। इसी तरह, EXCEPT को EXCEPT ALL की अनुमति देने के लिए बढ़ाया गया है।
ALTER सिंटैक्स में कुछ बदलाव किए गए हैं - अब आप ALTER TABLE… RENAME COLUMN के साथ कॉलम का नाम बदल सकते हैं। ALTER TABLE… RENAME KEY सिंटैक्स का उपयोग करके अनुक्रमणिका का नाम बदलना भी संभव है। महत्वपूर्ण बात यह है कि ALTER TABLE और RENAME TABLE दोनों को IF EXISTS के लिए समर्थन मिला, यह निश्चित रूप से प्रतिकृति प्रबंधन के मामले में मदद करेगा।
MySQL 5.7 से मिलान करने के लिए प्रदर्शन स्कीमा अपडेट
प्रदर्शन स्कीमा तालिकाओं को अपडेट कर दिया गया है ताकि वे MySQL 5.7 से प्रदर्शन स्कीमा के बराबर हो जाएं। इसका मतलब है कि मेमोरी, मेटाडेटा लॉकिंग, तैयार स्टेटमेंट, स्टोर की गई प्रक्रियाओं, लॉकिंग, लेनदेन और उपयोगकर्ता चर से संबंधित इंस्ट्रूमेंटेशन में बदलाव।
मारीडब नाम की बायनेरिज़
अंतिम लेकिन कम से कम, बायनेरिज़ को 'mysql' से 'mariadb' में बदल दिया गया है। हालांकि, पुराने नामकरण परंपरा का उपयोग अभी भी मौजूदा लिपियों और उपकरणों के साथ संगतता बनाए रखने के लिए किया जा सकता है।
उसके ऊपर, कई अन्य परिवर्तन पेश किए गए हैं। JSON ऐरे और ऑब्जेक्ट एग्रीगेशन फ़ंक्शन, कनेक्शन पूल के लिए बेहतर इंस्ट्रूमेंटेशन, क्वेरी ऑप्टिमाइज़र में सुधार या रेगुलर एक्सप्रेशन के लिए लाइब्रेरी के नए संस्करण में माइग्रेशन। S3 के साथ एकीकरण भी शुरू किया गया है - आप मारियाडीबी 10.5 के भीतर से S3 बकेट से डेटा पढ़ सकते हैं।
हम यह देखने के लिए उत्सुक हैं कि यह नया मारियाडीबी संस्करण उत्पादन वातावरण में कैसा दिखेगा। यदि आप प्रयास करने में रुचि रखते हैं, तो माइग्रेशन निर्देश मारियाडीबी वेबसाइट पर उपलब्ध हैं