Pour susciter l'intérêt des développeurs, l'entreprise de Boston, Akiban Technologies, propose désormais une version Open Source de son logiciel de base de données phare, Akiban Server. L'entreprise a également sorti un connecteur qui permet de répliquer une base de données MySQL dans Akiban, et a monté un partenariat avec Engine Yard, un fournisseur de Platform-as-a-Service (PaaS) dans le cloud. « Les données que nous récoltons sont de plus en plus nombreuses et de plus en plus compliquées. Nous avons créé une base de données capable de gérer des niveaux toujours plus importants de profondeur et de complexité », a déclaré Ori Herrnstadt, co-fondateur et Chief Technology Officer (CT0) de Akiban.

L'annonce a été faite lors de l'O'Reilly Open Source Conference (OSCON), qui se tient cette semaine (16-20 Juillet) à Portland, Oregon. « La base de données d'Akiban adopte non seulement une nouvelle approche pour consolider les données. Mais elle sait aussi effectuer ses calculs 10 fois plus rapidement que MySQL », selon l'éditeur. La méthode choisie par Akiban permet par ailleurs aux développeurs de multiples options pour faire travailler leurs applications avec Akiban Server.

Plus rapide que MySQL

Cela fait 18 mois que Akiban travaille sur cette technologie. L'éditeur a aussi consulté 120 entreprises pour comprendre ce qu'elles attendaient d'une base de données. Depuis janvier, l'éditeur vend une édition commerciale de sa base de données. Akiban destine son logiciel en priorité aux entreprises en ligne qui effectuent des transactions et maintiennent à jour les profils de leurs clients. « L'avantage essentiel de l'approche d'Akiban, c'est qu'elle réduit la nécessité de lier les tableaux croisés », fait remarquer dans un rapport Matt Aslett, analyste chez Research 451. Généralement, les administrateurs de base de données conçoivent leurs bases en fonction d'un processus dit de normalisation, dans lequel les éléments de données souvent dupliquées, comme les codes postaux, sont consolidés dans des tables séparées pour économiser de l'espace. Cependant, au fur et mesure que sont ajoutées des tables supplémentaires, le temps nécessaire pour répondre aux requêtes augmente.

Pour réduire l'impact de cette normalisation, Akiban a inséré une couche de « groupes de tables » dans l'architecture de sa base de données classique, un groupe de tables étant une série de tables hiérarchisée. La couche se situe entre les tables et le schéma général qui sert de socle à la base de données. Ainsi, chaque information qui entre dans la base est stockée dans un groupe de table comme une donnée propre. Pour un revendeur en ligne par exemple, toutes les informations concernant un client seront conservées dans un dossier unique comprenant plusieurs lignes, avec les informations de contact, les commandes passées par le client, etc. « Chaque ligne reste totalement indépendante », a expliqué Ori Herrnstadt. « Les programmeurs orientés objet peuvent imaginer que les groupes sont des objets, même si Akiban n'est pas, à proprement parler, une base de données objets », a précisé le CTO d'Akiban. « En langage de base de données, les données sont stockées dans la troisième forme normale (3NF) », comme l'a expliqué Curt Monash, analyste de Monash Research, spécialisé dans ce domaine.

Une compatibilité avec les différentes commandes SQL

Malgré cette modification apportée à son architecture, la base de données reconnaît la totalité des commandes SQL et répond à toutes les propriétés de l'ACID (atomicité, cohérence, isolation, durabilité) qui garantissent la fiabilité d'une base de données. En plus de supporter pleinement le SQL, Akiban sait aussi délivrer les données via une requête HTTP GET formatée en JSON (JavaScript Object Notation). La prise en charge d'autres langages, comme Ruby on Rails et Java Hibernate, est prévue pour plus tard. À l'heure actuelle, la base de données ne peut travailler qu'à l'échelle d'un serveur unique, sauf en cas de réplication. Cependant, Akiban travaille sur la mise au point d'une version distribuée de sa base de données.

Pour attirer davantage les développeurs, Akiban propose un outil de réplication, Replication Manager, qui reproduit le comportement de MySQL. L'objectif est clairement de séduire les utilisateurs actuels de la base de données Open Source d'Oracle. Replication Manager est un moteur de stockage MySQL fait pour la base MySQL et chargé de répliquer la base de données concurrente sur un serveur Akiban. L'éditeur espère que les entreprises utiliseront ce moteur pour mettre en place des copies masquées de bases de données MySQL, et, qu'au fil du temps, elles remplaceront les bases de données MySQL par celles d'Akiban. L'éditeur a également mis en place un partenariat avec le fournisseur de PaaS dans le Cloud Engine Yard, qui offrira une version hébergée de sa base de données.

L'édition Entreprise de Akiban Server est disponible depuis le début de cette année. Celle-ci comporte des fonctionnalités que l'on ne trouve pas dans la version Open Source. Le prix de la version commerciale varie entre 20 000 et 40 000 dollars, selon les fonctions utilisées. L'édition Open Source, est quant à elle disponible depuis mercredi sous la licence GPL (General Public License), version 3.