Oracle a posté une preview de son futur système de gestion de base de données MySQL, histoire d'offrir aux administrateurs un aperçu des nouvelles fonctionnalités auxquels ils auront accès dans peu de temps. Cette version intermédiaire dite Development Milestone Release (DMR) de MySQL 5.6 apporte en effet un certain nombre de nouveautés au système de gestion de base de données Open Source, certaines encore expérimentales, dont une fonction de réplication améliorée et la possibilité de contourner le framework SQL pour accéder plus rapidement aux données. En tant qu'élément de la pile Open Source LAMP - qui inclut également Linux, Apache et Perl, Python et PHP - MySQL est largement utilisé dans les applications Web. Par exemple, les grands sites populaires comme Twitter, Facebook et Flickr, utilisent MySQL. Dans cette version 5.6 à venir, Oracle et les développeurs extérieurs ont renforcé la manière dont le logiciel gère la réplication des données, de même qu'ils ont potentiellement raccourci les temps de réponse à des requêtes complexes. En ce qui concerne la réplication, MySQL introduit les Global Transactions Identifiers (GTIDs), qui permettent au système de trouver les données quand elles sont répliquées sur différents serveurs. Les GTIDs vont aussi faciliter la commutation automatique vers un serveur miroir en cas de défaillance du serveur principal. Certains logiciels tiers offrent déjà cette fonction, mais ce sera la première fois que MySQL lui-même pourra faire le travail.

Des fonctions expérimentales à découvrir

MySQL 5.6 arrive aussi avec un certain nombre de fonctionnalités qui devraient accélérer les requêtes. Par exemple, le système sait maintenant consolider plusieurs requêtes ou regrouper des ensembles de résultats sur une seule unité de travail. Il peut affecter la date et l'heure par défaut pour les colonnes DATETIME, ce qui évite à l'application de le faire elle-même. Le logiciel peut également accélérer le temps de traitement en optimisant l'ordre d'exécution des requêtes « Filesort » et « ORDER BY ». Autre avantage pour les développeurs, MySQL peut aussi fournir des résultats dans le format JSON (JavaScript Object Notation), très répandu et utile pour l'intégration de données aux applications Web.

En plus de ces fonctions, qui seront totalement opérationnelles dans la version finale de MySQL 5.6, le logiciel inclut également des fonctionnalités expérimentales susceptibles de faire leur apparition dans les futures versions du logiciel, avec l'accord du MySQL Labs d'Oracle, et soumises dès maintenant aux développeurs qui peuvent les tester et voir si elles fonctionnent correctement. Le composant le plus intéressant est sans doute une API qui permet aux applications d'accéder directement aux données du moteur de la base de données InnoDB, sans passer par l'interface SQL. L'API reproduit l'interface de la technologie de mise en cache open source memcache utilisée par Facebook et d'autres pour accélérer l'accès à de grandes quantités de données. « Ce genre d'API peut mettre MySQL à pied d'égalité avec des bases de données NoSQL, qui permettent cette facilité d'accès et gagnent actuellement du terrain dans les applications Web, » avait déclaré l'an dernier dans une interview Tomas Ulin, vice-président de l'ingénierie de MySQL chez Oracle.

Rendre MySQL plus proche de NoSQL

Une autre amélioration expérimentale visant à rendre MySQL plus adapté aux fonctions des bases de données NoSQL, concerne un ensemble d'opérations ADD qui permettent à une application d'écrire des données vers la base de données sans empêcher d'autres opérations d'accéder à l'index de la base de données quand elles inscrivent leurs propres données. Selon Oracle, ce genre de caractéristique pourrait être appréciée par les services Web.

L'éditeur n'a pas révélé à quel moment il envisageait de livrer la version finale de MySQL 5.6. La dernière mise à jour majeure de MySQL, la version 5.5, date de décembre 2010.