af83

Des Petabytes de données à gérer ? Cassandra est là

Quand on a des quantités très importantes de données à gérer dans une base de données, ce n'est que rarement facile. Aucun moteur de bases de données relationnelles n'est reputé pour sa capacité à monter facilement en charge. Fort de ce constat, certaines personnes ont commencé à sortir du modèle SQL pour chercher de nouvelles possibilités. Ceci est l'une des sources du mouvement NoSQL.

Pour les personnes que la théorie intéresse, sachez que le théorème CAP montre que les bases de données distribuées ne peuvent être parfaites et sont obligés de faire des compromis. Les bases de données SQL faisaient toujours les mêmes compris, mais celui-ci n'est pas idéal pour faire face à des problématiques de scalabilité. Il n'est donc pas étonnant de voir que les alternatives NoSQL ont décidé de rompre ce choix pour apporter de nouvelles solutions. Ce guide permet de visualiser les bases de données en fonction des compromis qu'elles ont choisis.

Et parmi ces bases de données, il y en a une qui semble sortir du lot quand on parle de gérer de grosses quantités de données : Cassandra. Cassandra a été initialement développé chez facebook, puis libéré sous licence Apache. Le projet a depuis trouvé sa place dans la fondation Apache et de nombreux contributeurs de différentes sociétés lui ont permis d'atteindre son statut actuel.

Ainsi, twitter est en train de passer à Cassandra. Dans une interview de Ryan King, on apprend que twitter a monté un cluster Cassandra avec 45 serveurs capable d'écrire les 50 millions de nouveaux tweets chaque jour, en plus du milliard de tweets déjà existants. Et les opérations de lecture sont progressivement en train d'être en mise en place. Pour le moment, cela semble concluant, mais il est encore trop tôt pour crier victoire.

D'autres sites sont plus avancés. Par exemple, Digg a récemment raconté sa Success Story avec Cassandra. Cassandra a prouvé son efficacité sur un problème spécifique, les badges sur les icones Digg pour indiquer qu'un ami a voté. Depuis son usage se généralise, faisant de Cassandra la base de données principale de Digg.

Si vous êtes convaincus de l'intérêt de Cassandra, il ne vous reste plus qu'à vous lancer dans l'aventure. Je ne saurais trop vous recommander de lire le guide d'Evan Weaver pour ça. C'est bien écrit, avec des informations à jour, et le Monsieur sait de quoi il parle : il travaille chez Twitter et a développé les bindings Ruby pour Cassandra.

blog comments powered by Disqus