16000 modifications de code par jour sur Google : vue chiffrée sur le moteur

Mathieu Chartier Autour du web 0 commentaire

Le blog de l'Association for computing machinery (ACM) a publié une étude chiffrée qui montre l'ampleur des développements effectués sur le moteur de recherche Google. John Mueller, le porte-parole en chef de la firme, s'est empressé de partager l'information sur Twitter. Il faut bien avouer que certains chiffres peuvent faire tourner la tête tant la plateforme centrale de Google reçoit de modifications...

L'étude de l'ACM montre que Google emploie environ 25000 ingénieurs qui publient jusqu'à 16000 changements de code par jour (sans compter les 24000 changements automatiques effectués par les machines). Ces chiffres sont impressionnants mais assez logiques en soi, puisque cela ne représente même pas un changement par ingénieur par jour. En revanche, d'autres informations peuvent faire tourner la tête... Depuis sa création officielle en 1998 (version beta de Google), le moteur de recherche a créé plus d'un milliard de fichiers pour environ 35 millions de mises à jour. Autant dire que les référenceurs ont dû en rater quelques-unes au passage. :D

Cette capture montre l'évolution exponentielle du nombre de mises à jour depuis la création du moteur de recherche. Ce "codebase" est appelé Google Piper et peut être utilisé partout dans le monde et avec tout système, à l'image de Github par exemple, et Google espère bien sûr le vendre en mettant en avant sa réussite (Google utiliserait ce référentiel unique et partagé depuis plus de 16 ans en réalité).

Evolution du nombre de mises à jour sur Google depuis sa création en 1998

Rien qu'en 2014, Google a publié près de 15 millions de lignes de code parmi 250000 fichiers créés ou existants de l'outil de recherche. L'étude fait une comparaison flatteuse avec le système d'exploitation Linux qui contient depuis sa création environ 15 millions de lignes de code pour 45000 fichiers. En somme, Google a fait bien mieux que Linux en une année (il faut dire que le nombre d'ingénieurs chez Google est bien plus important toutefois). La capture suivante montre l'évolution du nombre de mises à jour humaines ou automatiques effectuées par semaine de 2010 à 2015.

Nombre de mises à jour par semaine sur Google

Tous ces changements permettent de répondre aux 800000 requêtes par seconde en période de pointe ou 500000 requête par seconde en moyenne. Rien que d'y penser, cela donne le tournis et prouve que les datacenters de Google font partie des plus importants au monde, et se doivent d'être fiables.

Un des changements majeurs qui a sûrement permis cette évolution rapide date de 2012. En effet, Google a mis en place cette année-là un support vers le dépôt central du moteur (repository) compatible avec Windows et Mac (destiné uniquement à Linux auparavant). Si vous regardez à nouveau les courbes présentées ci-dessus, vous verrez de petits "boost" dès le début 2012, qui s'expliquent en partie par ce changement technologique. 2012 a aussi été une année charnière sur le plan de la lutte humains contre machines, car c'est depuis cette période que le nombre de mises à jour générées automatiquement outrepasse celui des updates réalisées par des humains. Google est donc plus automatisés que jamais !

Le schéma ci-dessous montre les étapes de fonctionnement et la méthode employée par Google pour effectuer leurs mises à jour. Pour les développeurs, cela n'a rien de surprenant, il faut d'abord réunir et synchroniser les fichiers, écrire du code, effectuer des ajustements puis soumettre au repository le changement, et ainsi de suite.

Méthode de développement et étapes chez Google