L’ architecture technique du site DailyMotion

Dailymotion L’architecture de DailyMotion est assez impressionnante. Les volumes de données, le nombre de requêtes simultanées ainsi que les upload et download continuels sont un véritable défit en terme de disponibilité.

Un post n’est pas suffisant pour décrire en détail cette architecture, mais esquissons déjà quelques contours.

Pour ce type de site les problématiques sont multiples :

- Tout d’abord la gestion d’un trafic réseau colossal : avec un backbone interne à 10Gb et des peering tout aussi impressionnant la structure du réseau et la communication entre les data center sont déjà un challenge.

Dailymotion peering

- Les applicatifs : plusieurs serveurs, de l’apache pour les proxy vidéo et du lighttpd pour les images, style et contenus statique. Le tout, comme d’habitude, en cluster sous PHP et MySQL.

Sphinx search – La recherche est gérée sur des serveurs dédiés équipé de Sphinx (en version SE). Les performances de ce moteur full text sont bien plus impressionnantes que le moteur de MySql ou encore qu’un couple Lucene/Java. Mais même avec cette application ultra performante il faut plusieurs dizaines 9 serveurs pour traiter le flot de recherche permanent (tout en indexant les nouveautés rapidement)

- Le stockage est lui aussi gourmand, une vidéo c’est quelques dizaines de Mo, même avec la baisse drastique des coûts des disques des volumétries de cet ordre sont très couteuses.

- L’encodage des vidéos qui arrivent sans cesse consomme également beaucup de CPU.
- Mais il y a aussi : Le load balancing sur le niveau réseau, le Round Robin DNS, les serveurs proxy, BDD, Search, etc….

- J’arrête la pour le moment…

Pour cette année cette architecture va devoir traiter la livraison de plusieurs dizaines de millions de vidéos par jour, soit quelques centaines de vidéos par seconde !

Chez Google l’architecture de YouTube est assez comparable, vous trouverez plus d’info sur cette vidéo. Mais l’avantage pour YouTube c’est que la gestion de la croissance est désormais gérée avec Google, qui avec une bonne trentaine de data center et son GFS peut mutualiser une bonne partie des dépenses d’infrastructure.

datacenter Google

Mais dans les deux cas pour ce type de service les tuyaux restent un éléments clef. Car au delà des problèmes commerciaux la gestion de ces autoroutes représente des couts très important et l’empilement des clusters de serveur n’est efficace que si le trafic est correctement régulé (et cela jusque dans les couches les plus bases des réseaux)

Dernier défit, et non des moindre pour DailyMotion atteindre les 20, voir 30 millions d’euros de revenus en 2008. Car à ce rythme la levée de fond de 25 millions de l’année dernière va vite se consumer. Il va donc falloir du chiffre pour lui permettre de payer de cette colossale infrastructure (en plus de la petite centaine de personnes qui compose la société).

Bref, en plus de l’expertise technique, il va falloir maintenant de sacré CPM !

Sur le même thème :

7 Responses to “L’ architecture technique du site DailyMotion”

  1. [...] C’est à lire dans : l’architecture du site DailyMotion [...]

  2. [...] fournir des Google Box par exemple, l’hébergeur Typhon (en charge de Netvibes ), ou encore les serveurs de Dailymotion (qui collectionne les baies DELL, pour ces serveurs web, proxy et [...]

  3. tanj says:

    Il y a une information inexacte dans votre présentation, en effet DM dispose seulement de 9 serveurs Sphinx (qui sont des blades DELL pour le côté hardware) pour faire tourner sa ferme Sphinx. Le délai d’indexation lui, est de seulement 10 minutes, ce qui est bien plus performant que sur bien d’autres sites, et ceci grâce à la puissance et à la simplicité d’exécution du Sphinx Engine.

  4. Marc says:

    Merci tanj, c’est corrigé !

  5. Luro says:

    Et quid de l’infra serveur pour servir les vidéos ? Quels sont les technos ? seulementdu pur HTTP ou est-ce qu’il y a des serveurs (ou pseudo serveurs) de stream ?

  6. [...] Pour les autres détails sur l’architecture je vous conseille de regarder cette vidéo : l’architecture de YouTube. Sur le même thème vous pourrez aussi consulter cette page : l’architecture technique de dailymotion [...]

  7. [...] Voici d’autres informations sur ce service COCORICCO : à lire sur Haute-Disponibilité [...]

Leave a Reply