Ces dernières semaines, le site de micro-blogging a modifié, , en profondeur son moteur de recherche. Ce dernier reposant sur un système basé sur MySQL créé par Summize, une société acquise par Twitter à la mi-2008. Cependant, cette technologie a atteint ses limites. L'équipe d'ingénieurs en charge du projet a décidé une transformation radicale du moteur de recherche en recourant une technologie différente: Lucene, une solution de recherche textuelle Open Source, écrite en Java.

Twitter a réalisé des modifications sur certains aspects de Lucene, notamment sur la gestion des fuites mémoires,  la terminaison des requêtes, le listage des posts et des structures de données, et des algorithmes. Ces changements améliorent sensiblement le temps de réponses des requêtes. Le site de micro-blogging gère 12 000 requêtes par seconde, soit plus de 1 milliard par jour, sur les tweets. Ces derniers sont indexés dans le moteur de recherche en moins de 10 secondes après publication.

Un outil essentiel pour la valorisation

« Nous utilisons aujourd'hui seulement 5% des ressources disponibles dans notre architecture, ce qui signifie que nous avons beaucoup d'espace libre. Avec Lucene, nous allons pouvoir indexer 50 fois plus de tweets qu'auparavant » écrait Michael Busch sur le blog officiel de Twitter. Celui-ci va contribuer en retour au projet Lucene en apportant des modifications et améliorations au code. Le site rappelle que s'il met à la disposition de Google ou de Bing l'indexation des « tweets », son moteur de recherche interne est un élément clé de son service de micro-blogging. Afin de valoriser les « tweet », l'entreprise doit disposer d'un moteur de recherche rapide, complet et évolutif. C'est d'autant plus important, que Google envisage d'intégrer les fils twitter au sein de sa page Google News.