10.x शाखा की स्थापना के 10 साल बाद, MariaDB 11.0.0 जारी किया गया है, जिसमें कई महत्वपूर्ण सुधार और महत्वपूर्ण परिवर्तन शामिल हैं। शाखा वर्तमान में अल्फा रिलीज़ गुणवत्ता में है और स्थिरीकरण के बाद उत्पादन उपयोग के लिए तैयार होगी। अगली प्रमुख शाखा, MariaDB 12, जिसमें महत्वपूर्ण परिवर्तन शामिल हैं, कम से कम 10 साल (2032) तक आने की उम्मीद नहीं है।
MariaDB प्रोजेक्ट MySQL का एक फोर्क विकसित करता है, जो यथासंभव बैकवर्ड कम्पैटिबिलिटी बनाए रखता है और इसमें अतिरिक्त स्टोरेज इंजन और उन्नत सुविधाओं का एकीकरण शामिल है। MariaDB का विकास स्वतंत्र MariaDB फाउंडेशन द्वारा किया जाता है, जो व्यक्तिगत विक्रेताओं से स्वतंत्र एक खुली और पारदर्शी विकास प्रक्रिया का पालन करता है। MariaDB को कई डिस्ट्रीब्यूशन में MySQL के विकल्प के रूप में शामिल किया गया है। Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debianऔर इसे विकिपीडिया, गूगल क्लाउड एसक्यूएल और निंबज़ जैसी बड़ी परियोजनाओं में लागू किया गया है।
मारियाडीबी 11 शाखा में मुख्य सुधार क्वेरी ऑप्टिमाइज़र का एक नए लागत मॉडल में संक्रमण है, जो प्रत्येक क्वेरी निष्पादन योजना के भार का अधिक सटीक पूर्वानुमान प्रदान करता है। हालाँकि नया मॉडल कुछ प्रदर्शन बाधाओं को दूर करने में मदद करता है, लेकिन यह संभव है कि यह सभी परिदृश्यों में इष्टतम न हो और कुछ क्वेरी धीमी हो सकती हैं, इसलिए उपयोगकर्ताओं को परीक्षण में भाग लेने और समस्या होने पर डेवलपर्स को सूचित करने के लिए प्रोत्साहित किया जाता है।
पहले इस्तेमाल किया गया मॉडल इष्टतम इंडेक्स खोजने में अच्छा था, लेकिन टेबल स्कैन, इंडेक्स स्कैन या रेंज चयन संचालन की प्रयोज्यता के साथ समस्याएँ थीं। नया मॉडल स्टोरेज इंजन संचालन के आधार भार को बदलकर इस कमी को दूर करता है। डिस्क-निर्भर संचालन, जैसे अनुक्रमिक रिकॉर्ड स्कैन के प्रदर्शन का मूल्यांकन करते समय, अब यह माना जाता है कि डेटा एक SSD ड्राइव पर संग्रहीत है जो 400 एमबी प्रति सेकंड की रीड स्पीड प्रदान करता है। इसके अलावा, अन्य ऑप्टिमाइज़र वज़न मापदंडों को ट्यून किया गया, जिसने, उदाहरण के लिए, सबक्वेरीज़ में ORDER BY/GROUP BY संचालन के लिए इंडेक्स का उपयोग करने की क्षमता को लागू करना और बहुत छोटी तालिकाओं के साथ काम को गति देना संभव बना दिया।
यह ध्यान देने योग्य है कि नया वेट मॉडल निम्नलिखित स्थितियों में अधिक इष्टतम क्वेरी निष्पादन योजना चुनने की अनुमति देगा:
- 2 से अधिक तालिकाओं तक फैली क्वेरीज़ का उपयोग करते समय।
- बड़ी संख्या में समान मान वाले सूचकांकों की उपस्थिति में।
- जब ऐसी श्रेणियों का उपयोग किया जाता है जो तालिका के 10% से अधिक को कवर करती हैं।
- जब आपके पास जटिल क्वेरीज़ हों, जहां प्रयुक्त सभी कॉलम अनुक्रमित न हों।
- जब ऐसी क्वेरीज़ का उपयोग किया जाता है जिसमें विभिन्न स्टोरेज इंजन शामिल होते हैं (उदाहरण के लिए, जब एक ही क्वेरी InnoDB और मेमोरी इंजन में तालिकाओं तक पहुँचती है)।
- क्वेरी योजना को बेहतर बनाने के लिए FORCE INDEX का उपयोग करते समय।
- जब "ANALYZE TABLE" का उपयोग करते समय क्वेरी योजना ख़राब हो जाती है।
- जब कोई क्वेरी बड़ी संख्या में व्युत्पन्न तालिकाओं (बड़ी संख्या में नेस्टेड SELECTs) तक फैली होती है।
- ORDER BY या GROUP BY अभिव्यक्तियों का उपयोग करते समय जो अनुक्रमणिका को योग्य बनाते हैं।
मारियाडीबी 11 शाखा में प्रमुख संगतता मुद्दे:
- सुपर अधिकार अब आपको ऐसी क्रियाएँ करने की अनुमति नहीं देते हैं जिनके लिए अलग से सेट किए गए विशेषाधिकार उपलब्ध हैं। उदाहरण के लिए, बाइनरी लॉग प्रारूप को बदलने के लिए BINLOG ADMIN अधिकारों की आवश्यकता होती है।
- InnoDB में परिवर्तन बफर कार्यान्वयन को हटा दिया गया है।
- innodb_flush_method और innodb_file_per_table को हटा दिया गया है।
- mysql* नामों के लिए समर्थन समाप्त कर दिया गया है।
- explicit_defaults_for_timestamp को 0 पर सेट करना अप्रचलित कर दिया गया है.
- MySQL के साथ संगतता के लिए प्रतीकात्मक लिंक को एक अलग पैकेज में ले जाया गया है।
- innodb_undo_tablespaces पैरामीटर का डिफ़ॉल्ट मान 3 में बदल दिया गया है।
स्रोत: opennet.ru
