L'équipe de développement du site de partage de contenus Digg a arrêté d'utiliser la base de données MySQL. Il emboîte ainsi le pas à Twitter qui vient de prendre une orientation similaire. Dans un billet de blog, John Quinn, le vice-président du développement de Digg explique l'abandon de la base Open Source en faveur d'un environnement 'NoSQL', Cassandra en l'occurrence, en raison des difficultés croissantes à construire une application exigeante en ressources (écriture intensive) sur un volume de données qui grossit rapidement, à l'infini. Digg procède à plusieurs autres changements et refond le code de son application en s'éloignant du modèle Open Source LAMP (Linux, Apache, MySQL, PHP, Python et Perl).

Mais c'est l'abandon de MySQL qui constitue le revirement le plus significatif. « Pour quelqu'un qui, comme moi, a travaillé quasiment exclusivement sur des bases de données relationnelles depuis près de vingt ans, c'est une démarche plutôt audacieuse », concède John Quinn. [[page]]MySQL est passé sous le contrôle d'Oracle, depuis que ce dernier a été autorisé à racheter Sun, ce qui soulève un certain nombre d'inquiétudes. Le créateur de la base Open Source, Michael Widenius, s'en est particulièrement ému, parmi d'autres. Toutefois, cet état de fait n'a pas été mentionné par John Quinn comme un facteur déterminant dans la décision de Digg.  

Cassandra, créée par Facebook et versée dans l'Open Source

Le site communautaire a donc jeté son dévolu sur Cassandra, un SGBD distribué, originellement mis au point par Facebook, qui l'a versé dans l'Open Source en 2008, et désormais développé par la communauté Apache. Dès à présent, Digg a redéveloppé la plupart de ses fonctionnalités avec Cassandra, tout en procédant à ses propres améliorations sur la base de données, explique John Quinn. « Digg s'est engagé dans l'utilisation et le développement d'outils Open Source et nous préférons éviter d'investir dans les coûteuses solutions propriétaires capables de supporter de gros volumes.

Cassandra est orientée colonnes et permet de stocker des données relativement structurées. Elle propose un modèle entièrement décentralisé et présente une forte tolérance aux pannes. Les données sont répliquées sur de multiples noeuds et entre les datacenters. Elle est également très flexible, ses capacités de lecture/écriture augmentent linéairement au fur et à mesure de l'ajout de nouveaux serveurs. » Digg se focalise désormais sur la finalisation de sa prochaine version.