La version de la base de donnĂ©es MariaDB 12.1.2 a Ă©tĂ© publiĂ©e, marquĂ©e comme le premier lancement stable de la branche 12.1. La branche MariaDB 12.1 est considĂ©rĂ©e comme des versions intermĂ©diaires (rolling), continue de dĂ©velopper progressivement des fonctionnalitĂ©s et remplace la branche MariaDB 12.0. En mĂȘme temps, la version MariaDB 12.2.1 a Ă©tĂ© publiĂ©e, ayant le statut de candidate Ă la version. La branche MariaDB 12.1 sera supportĂ©e jusqu'Ă la formation de la version 12.2.2.
Le projet MariaDB développe une bifurcation de MySQL, préservant la rétrocompatibilité et se distinguant par l'intégration de moteurs de stockage supplémentaires et de fonctionnalités avancées. Le développement de MariaDB est supervisé par l'organisation indépendante MariaDB Foundation conformément à un processus de développement ouvert et transparent, sans dépendance vis-à -vis de fournisseurs individuels. MariaDB est fourni à la place de MySQL dans de nombreuses distributions Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) et est intégré dans d'importants projets tels que Wikipedia, Google Cloud SQL et Nimbuzz.
Parmi les changements dans la branche MariaDB 12.1 :
- Le moteur de stockage Aria implĂ©mente un cache de clĂ©s segmentĂ©, oĂč les clĂ©s sont regroupĂ©es et stockĂ©es dans des segments de cache distincts. Ce nouveau cache a permis d'amĂ©liorer les performances de l'exĂ©cution parallĂšle des requĂȘtes par diffĂ©rents utilisateurs. Le nombre de segments est dĂ©fini par la variable aria_pagecache_segments, qui peut prendre des valeurs de 1 (par dĂ©faut) Ă 128.
- Amélioration de la scalabilité des verrous MDL (Metadata Lock).
- Autorisation de l'utilisation de la réplication en mode parallÚle lors de la réplication asynchrone des données entre deux clusters Galera.
- Ajout du support de la mise en mémoire tampon pour l'opération d'enregistrement dans le plugin de journalisation d'audit. La taille du tampon est définie via la variable server_audit_file_buffer_size.
- Les opérations de recherche pour les données de type VECTOR ont été accélérées de 30 à 50 %.
- Un nouveau plugin d'authentification caching_sha2_password a Ă©tĂ© ajoutĂ©, utilisant l'algorithme de hachage SHA2 au lieu de SHA1. Le plugin est compatible avec le plugin du mĂȘme nom introduit dans MySQL 9.0.
- En mode de compatibilité avec les bases de données Oracle, le support des tableaux associatifs (INDEX BY) et de la syntaxe « ( + ) » pour définir des jointures externes (outer join) a été implémenté, par exemple : SELECT * FROM table1, table2 WHERE table1.rec_num = table2.fk_table1( + ); TYPE type_name TABLE OF rec_type_name INDEX BY idx_type_name;
- De nouvelles options de gestion de l'optimiseur ont été ajoutées : [NO_]JOIN_INDEX, [NO_]GROUP_INDEX, [NO_]ORDER_INDEX, [NO_]INDEX, [NO_]SPLIT_MATERIALIZED, [NO_]DERIVED_CONDITION_PUSHDOWN, [NO_]MERGE.
- Ajout Ă l'outil mariadb-dump de la possibilitĂ© de spĂ©cifier des masques (par exemple, «database_*»), en utilisant l'option «-L» (âwildcards).
- Suppression de l'exigence d'unicité des identifiants des clés étrangÚres (foreign key) dans le contexte de toute la base de données (il suffit de l'unicité au niveau de la table).
- Ajout de la possibilité d'utiliser des index basés sur des fonctions (functional index) pour améliorer les performances des opérations GROUP/ORDER BY.
- Les résultats du traçage de l'optimiseur montrent les définitions des tables et des vues.
Source : opennet.ru
