Portrait Olivier Duffez

Olivier Duffez

Créateur de WebRankInfo,
consultant en référencement

Informations sur l'infrastructure technique de Google

Jeff Dean, ingénieur chez Google, a donné une conférence dans l'Université de Washington au cours de laquelle il a abordé plusieurs thèmes axés sur l'infrastructure technique de Google, qui sont résumés ici.

Infrastructure technique de Google en 2004

Voici quelques points abordés par Jeff Dean, fournis ici un peu en vrac... Notez que vous pouvez également retrouver l'intégralité de la conférence sous forme de vidéo (environ 1h, en anglais).

Sur l'ensemble des 4 milliards de pages, la taille moyenne est de 10 Ko. Cela signifie que Google doit gérer une quantité de données gigantesque, de l'ordre de plusieurs dizaines de téra octets (environ 40 000 Go)

Google récupère énormément de données pour mieux analyser l'expérience utilisateur, qu'ils souhaitent évidemment toujours améliorer. Ces données sont par exemple les clics dans les pages de résultats. Google travaille actuellement sur de nouvelles interfaces utilisateur complètement différentes de l'interface actuelle...

Pour stocker les données et répondre aux requêtes, Google avait le choix entre des très gros serveurs ou un grand nombre de PC traditionnels. Voici une comparaison des coûts de deux solutions étudiées, qui explique pourquoi Google a choisi la seconde :

  • Serveur IBM eServer xSeries 440
    • 8 processeurs Xeon de 2 GHz
    • 65 Go de RAM
    • 8 To de disque
    • 758 000 $
  • Rack de 88 machines
    • 176 processeurs Xeon de 2 GHz (88 x 2)
    • 176 Go de RAM (88 x 2)
    • 7 To de disque
    • 278 000 $

Chaque jour dans les data centers de Google, plusieurs machines tombent en panne ! Tous les développements d'applications sont donc conçus pour être tolérants aux pannes.

L'index de Google est découpé en petits bouts afin qu'ils puissent être stockés sur chaque machine. Chacun de ces bouts est appelé un shard. La répartition des documents en shards se base entre autres sur le PageRank.Chaque shard est dupliqué pour être sur plusieurs machines (il y a d'autant plus de duplicatas que le PageRank est élevé).

Google accorde beaucoup d'importance au temps de réponse à chaque requête. Pour ne pas excéder 0,5 seconde, Google déploie des data centers dans le monde entier afin de rapprocher les serveurs des utilisateurs.

Schéma des serveurs de Google utilisés pour répondre aux requêtes

En moyenne 1000 machines sont utilisées pour chaque requête, dont le temps moyen de réponse est de 0,25 seconde. Sachant qu'il y a plus de 250 millions de requêtes par jour sur le réseau des sites de Google...

Google développe ses propres applications afin de s'adapter entièrement à ses contraintes particulières. Voici quelques exemples d'applications :

  • Google File System (GFS) : pour le stockage. Gestion de plusieurs Po (1 Peta octets = 1024 Tera octets = 1 048 576 Giga octets). Les performance sont de 2 Go/s en lecture et écriture malgré les pannes
  • Global Work Queue (GWQ) : plannificateur de tâches
  • MapReduce : système simplifié de traitement de données à grande échelle, tolérant aux pannes

Discutez de l'article Informations sur l'infrastructure technique de Google dans le forum

Infrastructure technique de Google en 2006

Le New York Times a publié un article décrivant l'infrastructure de Google, abordant entre autres la tradition du secret des data centers, les systèmes MapReduce, Google File System et Google Work Queue. Voici un résumé en français...

Selon le NYT, Google devrait investir 1,5 milliards de dollars en 2006 pour ses centres opérationnels et la technologie. Une grosse partie de cet investissement est consacrée à la construction d'un énorme data center en Oregon.

D'après Martin Reynolds, un analyste du Gartner Group cité par le NYT, le métier de Google est autant l'infrastucture que les moteurs de recherche. Il pense que Google est le 4ème constructeur (maker) mondial de serveurs après Dell, Hewlett-Packard et IBM !

En parallèle de la guerre visible du grand public, sur le front de la recherche web et ses dérivés, Google mène également une guerre sans merci avec Microsoft et Yahoo sur le plan des serveurs et des logiciels qui les accompagnent. Chacun estime que son architecture est optimale et que l'autre n'a pas une réelle avance technologique...

Même si Google est très secret, nous savons que plusieurs innovations ont vu le jour afin d'optimiser leur infrastructure technique, aussi bien matérielle que logicielle. MapReduce permet de découper une tâche en sous-tâches qui peuvent être traitées par des milliers de processeurs simultanément (Bill Gates prétend que son système Dryad est meilleur...). Le système de fichiers de Google, appelé Google File System, conserve des copies de données en plusieurs endroits, si bien qu'une panne d'un des serveurs ne perturbe pas l'ensemble. Google Work Queue permet d'affecter à un grand ensemble de serveurs (pool) des tâches selon les besoins, changeant sans cesse ces assignations, évitant d'avoir des serveurs coûteux dédiés à seulement certaines tâches.

Google utilise surtout des processeurs Opteron d'AMD, mais aussi des processeurs de Sun spécialement conçus pour optimiser leur consommation électrique (ce développement spécifique de Sun n'est pas étranger au fait qu'Eric Schmidt, PdG de Google, était dirigeant de Sun avant de venir chez Google). Il semblerait même que Google se prépare à créer ses propres puces électroniques !

L'article du NYT est accessible ici : page 1 / page 2

Via Google Blogoscoped

Cet article vous a-t-il plu ?

Cliquez pour voter !

Laisser un commentaire

Remarques :

  • Si vous souhaitez poser une question ou détailler un problème technique, il ne faut pas utiliser le formulaire ci-dessous qui est réservé aux avis. Posez votre question directement dans le forum Gmail de WebRankInfo. L'inscription est gratuite et immédiate.

  • En postant un avis, vous acceptez les CGU du site WebRankInfo. Si votre avis ne respecte pas ces règles, il pourra être refusé. Si vous indiquez votre adresse email, vous serez informé dès que votre avis aura été validé (ou refusé...) ; votre adresse ne sera pas utilisée pour vous envoyer des mailings et ne sera pas revendue ou cédée à des tiers.