ScyllaDB, la nouvelle base de données NoSQL basée sur Cassandra est disponible
avec des performances 10 fois supérieures à Apache Cassandra

Le sommet rassemblant les utilisateurs de la base de données NoSql Cassandra vient de débuter et déjà on connait le concurrent ou plutôt le successeur de Cassandra. Avi Kivity et Dor Laor qui ont développé KVM (le noyau de la machine virtuelle Linux) et OSv (le système d’exploitation open source pour le Cloud) viennent de présenter une nouvelle base de données NoSQL nommée ScyllaDB.

ScyllaDB est une réécriture en C++ de la base de données Cassandra avec pour objectif de surpasser les performances de la base de données source. Selon les auteurs, « ScyllaDB est la base de données la plus rapide au monde orientée colonne » intégrant « les fonctionnalités d’Apache Cassandra avec une vitesse de stockage léger de clé-valeur ».

Étant actuellement disponible en version 0.90, ScyllaDB peut être considérée comme une base de données déjà opérationnelle. Plusieurs fonctionnalités de la version 2.19 de Cassandra ont déjà été intégrées.

Nom : ScyllaDB.gif
Affichages : 6594
Taille : 25,9 Ko

Ainsi, nous avons déjà l’intégration des formats de données SSTable, de la technologie JMX pour gérer les services et les applications Java, du langage de requête Cassandra (CQL) ainsi que plusieurs interfaces de configuration. Il peut donc être utilisé comme un substitut direct à Cassandra.

Cette base de données permet de gérer plus d’un million de transactions par seconde par serveur et n’a pas besoin de pauses sous le compactage et pendant les traitements effectués par le ramasse-miettes. Il supporte deux modes de pile réseau à savoir la pile réseau native Seastar et la pile réseau traditionnelle Linux. L’avantage avec Seastar est qu’elle offre une faible latence et un haut débit réseau.

Pour communiquer, il n’est nul besoin de faire des appels système. Selon les concepteurs, c’est le choix préféré pour de meilleures performances. Aussi, pour mieux apprécier les performances de cette base de données, plusieurs tests ont été mis en œuvre.

Après avoir exécuté la version 3.0 de Cassandra et la version 0.8 de ScyllaDB sur deux serveurs partageant les mêmes caractéristiques (2x Xeon E5-2695v3 : 2.3 GHz base, 35 M cache, 14 cœurs, 64 GB de RAM, 2x 400 GB Intel NVMe P3700 SSD, Intel Ethernet CNA XL710-QDA1 et Fedora serveur 21), ScyllaDB affichait une latence inférieure à 1 milliseconde comme latence maximum alors que Cassandra enregistrait une latence de plus de 6 millisecondes pour la latence maximum.

Nom : ScyllaDBvsCassandra.gif
Affichages : 5800
Taille : 18,0 Ko

Dans un autre test mis en œuvre pour déterminer laquelle base de données est la plus performante en termes de lecture et écriture, alors que ScyllaDB permettait d’écrire 1 300 000 transactions par seconde, Cassandra écrivait 300 000 transactions par seconde.

De même, tandis que ScyllaDB lisait 1 180 000 transactions par seconde, Cassandra lisait 140 000 transactions par seconde. Enfin pour les tests de lecture/écriture, ScyllaDB est parvenu à effectuer 1 180 000 transactions par seconde là où Cassandra effectuait 140 000 transactions par seconde.

Il faut également noter que plusieurs systèmes peuvent être utilisés avec cette base de données. Ce sont par exemple CentOS, Fedora, les systèmes basés sur RHEL, Ubuntu, les systèmes basés sur Debian, les conteneurs et le service Web d’Amazon EC2.

Toutefois, il faut également souligner que malgré les belles performances affichées par cette base de données, plusieurs fonctionnalités restent encore à mettre en œuvre avant la sortie de la première version stable prévue pour janvier 2016. Ce sont par exemple les opérations des tables telles que les mises à jour, les suppressions, les tronquages ou encore la prise en charge de centres de données multiples, l’authentification, l’autorisation, etc.

Source : ScyllaDB

Et vous ?

Que pensez-vous de cette nouvelle base de données NoSQL ?

Pourra-t-elle se faire une place face à cette base de données assez utilisée ?

Voir aussi
Forum NoSQL