Les coulisses informatiques de Criteo Criteo : un supercalculateur Hadoop réparti sur sept centres de données

Spécialiste mondial du retargeting publicitaire, Criteo s'est doté d'un cloud de données répartis sur sept datacenters à travers le monde pour supporter ses processus techniques. Quels sont les principaux traitements mis en œuvre via cette infrastructure de Big Data ? En amont, les informations liées aux visites des internautes sont collectées en provenance des sites clients de Criteo. Elles sont ensuite déversées dans un système de stockage centralisé. "Nous réalisons des analyses statistiques sur ces données pour concevoir des profils de comportement que nous enrichissons ensuite au fil des mises à jour de cette base", explique Julien Simon, vice-président ingénierie chez Criteo.

vue de l'un des sept datacenters de criteo. ces centres de données sont
Vue de l'un des sept datacenters de Criteo. Ces centres de données sont notamment situés en Europe, aux Etats-Unis et au Japon. Criteo est présent dans 33 pays. © Criteo

C'est sur ces profils que Criteo s'appuie à l'autre bout de la chaine pour afficher à un internaute particulier visitant un site la publicité qu'il considère la plus adaptée. Pour ce faire, la société rapproche en temps réel sa session du profil comportemental qui lui parait le plus proche.

"Plus de 90% des traitements sont réalisés en amont, au moment de la constitution des profils", explique Julien Simon. Cette analyse préalable n'en reste pas moins effectuée de manière très régulière, plusieurs fois par jour, les profils devant être enrichis pour prendre en compte les évolutions de comportement. Elle ne repose donc pas sur un système de Business Intelligence traditionnel, mais bien sur une infrastructure que Criteo qualifie lui-même de HTC (pour Hight Performance Computing).

Hadoop : un choix naturel

Face à une croissance forte de son activité, Criteo fait face courant 2010 à une explosion de ses volumes de données. L'architecture technique existante atteint alors ses limites. "Le dimensionnement reposant sur un découpage des tâches entre un nombre de plus en plus grand de serveurs, nous risquions d'aboutir à un Hadoop maison, et donc réinventer la roue", analyse-t-on chez Criteo qui s'oriente donc vers l'infrastructure Open Source de la fondation Apache. Une solution considérée comme "tout à fait adaptée" pour analyser des masses de données à plat non-structurées dans ce contexte de système de production. Sa mise en place débute durant l'été 2011.

Un an après, le cluster Open Source de traitement de données est utilisé pour la majorité des calculs de back office de Criteo.