Depuis 2003 la contribution de Google aux technologies de BigData a été fondamentale. Andrea Mostois divise ces contributions en deux périodes [classification proposée en 2013 par Andrea Mostosi].
Première période (2003-2008)
Cette première série de contributions constitue les fondements de tous les systèmes BigData actuels. De nombreux projets OpenSource l’ont rendu accessible à tous. Ils représentent la première génération des outils de BigData qui permettent de travailler sur des “Data Lakes” :
- Google File System (GFS) (The Google File System - 2003), est un système de fichiers distribués à destination des applications gourmandes en données. Il existe une implémentation OpenSource : HDFS
- MapReduce (MapReduce: Simplified Data Processing on Large Clusters - 2004), est un modèle de programmation pour traiter de grands volumes de données réparties sur de gros clusters. Hadoop est une implémentation OpenSource de ce concept. Hadoop s’appuie sur HDFS.
- BigTable (Bigtable: A Distributed Storage System for Structured Data - 2006), est une base de données orientée colonne. Elle est conçue pour stocker des pétaoctet de données. Il existe une implémentation OpenSource HBase.
Deuxième période (depuis 2010)
Google brassant de plus en plus de données, la première génération de technologie BigData montraient ses limites. Google a donc travaillé sur une nouvelle génération de technologies. Les résultats de ces travaux ont été publiés à partir de 2010 et ouvre la possibilité de traiter des “Data Streams” :
- Colossus (Google Remakes Online Empire With ‘Colossus’ - 2012), anciennement connu sous le nom Google FileSystem 2, nouvelle génération de GFS.
- Pregel (Large-scale graph computing at Google - 2009), est un outil qui permet de manipuler simplement des graphes complexes. Par exemple, Google annonce qu’avec Pregel 15 lignes de code permettent de coder l’algorithme de PageRank.
- Caffeine (Google search index splits with MapReduce - 2010, Our new search index: Caffeine - 2010), une nouvelle infrastructure de recherche qui utilisent GFS2.
- Percolator (Large-scale Incremental Processing Using Distributed Transactions and Notifications - 2010), (Google Percolator – global search jolt sans MapReduce comedown - 2010), un système de mise à jour incrémental de gros volume de données. Percolator est utilisé en conjonction avec Caffeine
- Spanner (Spanner: Google’s Globally-Distributed Database - 2012), une base de données fortement distribuée supportant les transactions. Avec Spanner, il est possible de lire des données consistantes par rapport à un timestamp. Spanner conserve toutes les évolution d’une donnée dans le temps.
- Dremel (Dremel: Interactive Analysis of Web-Scale Datasets - 2010), est un système interactif et scalable permettant de requêter des petaoctets de données. Les réponses sont de l’ordre de la seconde quelque soit le volume de données brassé. Dremel est maintenant accessible à travers une offre cloud : BigQuery.
- MillWheel (Fault-Tolerant Stream Processing at Internet Scale), est un système qui permet de faire de l’analyse de flux d’information à l’échelle de l’internet
- PowerDrill (Processing a trillion cells per mouse click) : est un système encore plus puissant que Dremel qui permet de traiter des milliards d’informations en quelques secondes.
- Photon (Fault-tolerant and Scalable Joining of Continuous Data Streams) : est un système qui permet de fusionner des sources de données provenant d’interactions utilisateurs différentes. Par exemple fusion des recherches de l’utilisateur et des clicks sur les publicités affichées.