Twitter souffre de la coupe du monde

Le célèbre service de microblog digère très mal la coupe du monde. Non ce n'est pas à cause — pour une fois — des @vuvuzela. Cela vient d'un autre bruit de fond, plus tenace encore pour le site : celui de millions de supporters pressé de publier au plus vite messages d'encouragement, de dépit, d'insultes ou autre.

Moyennant quoi, de l'aveu même de Twitter, le site subit son pire mois d'instabilité depuis octobre dernier, et les « fail whales » se multiplient.

Mais pourquoi tant de haine ?

D'après Twitter, les chutes de performances sont dues à un ensemble d'erreurs humaines, et à l'impossibilité de prévoir une telle charge.

Il parait peut probable que Twitter n'ait pas eu les moyens d'anticiper une telle montée en charge au moment de la coupe du monde, eux qui se revendique « moyen d'information innovant ». À moins que...

We have a system in place based on shared mysql + memcache but its quickly becoming prohibitively costly (in terms of manpower) to operate.

Ryan King, responsable datastore chez Twitter

À moins de rapprocher les problèmes actuels du site avec l'annonce faite au mois de février que Twitter allait passer de MySQL à Cassandra. D'un simple modèle relationnel au NoSQL.

Mais c'est la mode ou quoi ?

Le NoSQL (pour Not Only SQL) est un terme regroupant différentes technologies illustrée par le célèbre BigTable de Google. Il s'agit de nouveaux SGBD répondant aux problématiques apportées par le besoin de stocker massivement de la donnée, et d'y accéder rapidement. Leur principal moyen de réponse est de supprimer toute dimension relationnelle entre les données, et de les stocker sous forme de simple entité « clé, valeur » rapidement récupérable via leur clé unique sur l'ensemble du datastore.

De ce fait, les données ne sont plus « emprisonnées » au sein d'un datastore binaire difficilement scalable. On passe donc d'un modèle d'expansion exponentiel, ou presque, difficilement maitrisable avec le relationnel à un modèle linéaire, permettant de gérer souplement son datastore.

La coupe du monde est donc tombée au plus mauvais moment pour Twitter, en pleine restructuration de son datastore. Leur vrai erreur aura peut-être été de ne pas plus anticipé la montée en puissance de leur service, et migrer plus tôt vers du NoSQL. À moins qu'ils n'attendaient plus de maturité de la part de ces technologies.