Thèse soutenue

Amélioration des performances de MapReduce sur grappe de calcul

FR  |  
EN
Auteur / Autrice : Sylvain Gault
Direction : Frédéric Desprez
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 23/03/2015
Etablissement(s) : Lyon, École normale supérieure
Ecole(s) doctorale(s) : École doctorale en Informatique et Mathématiques de Lyon (Lyon ; 2009-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire de l'informatique du parallélisme (Lyon ; 1988-....) - AVALON / LIP Lyon / Inria Grenoble Rhône-Alpes
Jury : Président / Présidente : Christine Morin
Examinateurs / Examinatrices : Frédéric Desprez, Christine Morin, Vincent Breton, Jean-Marc Nicod, Michel Daydé, Christian Pérez
Rapporteurs / Rapporteuses : Vincent Breton, Jean-Marc Nicod

Mots clés

FR  |  
EN

Mots clés contrôlés

Résumé

FR  |  
EN

Beaucoup de disciplines scientifiques s'appuient désormais sur l'analyse et la fouille de masses gigantesques de données pour produire de nouveaux résultats. Ces données brutes sont produites à des débits toujours plus élevés par divers types d'instruments tels que les séquenceurs d'ADN en biologie, le Large Hadron Collider (LHC) qui produisait en 2012, 25 pétaoctets par an, ou les grands télescopes tels que le Large Synoptic Survey Telescope (LSST) qui devrait produire 30 pétaoctets par nuit. Les scanners haute résolution en imagerie médicale et l'analyse de réseaux sociaux produisent également d'énormes volumes de données. Ce déluge de données soulève de nombreux défis en termes de stockage et de traitement informatique. L'entreprise Google a proposé en 2004 d'utiliser le modèle de calcul MapReduce afin de distribuer les calculs sur de nombreuses machines.Cette thèse s'intéresse essentiellement à améliorer les performances d'un environnement MapReduce. Pour cela, une conception modulaire et adaptable d'un environnement MapReduce est nécessaire afin de remplacer aisément les briques logicielles nécessaires à l'amélioration des performances. C'est pourquoi une approche à base de composants est étudiée pour concevoir un tel environnement de programmation. Afin d'étudier les performances d'une application MapReduce, il est nécessaire de modéliser la plate-forme, l'application et leurs performances. Ces modèles doivent être à la fois suffisamment précis pour que les algorithmes les utilisant produisent des résultats pertinents, mais aussi suffisamment simple pour être analysés. Un état de l'art des modèles existants est effectué et un nouveau modèle correspondant aux besoins d'optimisation est défini. De manière à optimiser un environnement MapReduce la première approche étudiée est une approche d'optimisation globale qui aboutit à une amélioration du temps de calcul jusqu'à 47 %. La deuxième approche se concentre sur la phase de shuffle de MapReduce où tous les nœuds envoient potentiellement des données à tous les autres nœuds. Différents algorithmes sont définis et étudiés dans le cas où le réseau est un goulet d'étranglement pour les transferts de données. Ces algorithmes sont mis à l'épreuve sur la plate-forme expérimentale Grid'5000 et montrent souvent un comportement proche de la borne inférieure alors que l'approche naïve en est éloignée.