Thèse soutenue

Allocation de ressources élastique pour l'optimisation de requêtes

FR  |  
EN
Auteur / Autrice : Mohamed Mehdi Kandi
Direction : Abdelkader HameurlainShaoyi Yin
Type : Thèse de doctorat
Discipline(s) : Réseaux, télécoms, systèmes et architecture
Date : Soutenance le 29/11/2019
Etablissement(s) : Toulouse 3
Ecole(s) doctorale(s) : École doctorale Mathématiques, informatique et télécommunications (Toulouse)
Partenaire(s) de recherche : Laboratoire : Institut de Recherche en Informatique de Toulouse (1995-....)

Résumé

FR  |  
EN

Le Cloud Computing est devenu un moyen largement utilisé pour l'interrogation de bases de données. Les fournisseurs de cloud actuels proposent une variété de services implémentés sur des architectures parallèles. Les objectifs de performances et les éventuelles pénalités dans le cas de violation sont établis au préalable dans un contrat appelé Service-Level Agreement (SLA). Le but du fournisseur est de maximiser son bénéfice tout en respectant les besoins des locataires. Avant la naissance des systèmes cloud, plusieurs travaux ont considéré le problème d'allocation de ressources pour l'interrogation de bases de données sur des architectures parallèles. Le plan d'exécution de chaque requête est un graphe de tâches dépendantes. L'expression "allocation de ressources" dans ces travaux sous-entend souvent le placement des tâches sur les ressources disponibles et aussi leur ordonnancement qui tient compte des liens de dépendance. Le but consistait principalement à minimiser le temps d'exécution de requêtes et maximiser l'utilisation de ressources. Par contre, dans le cloud ce but ne garantit pas nécessairement le meilleur bénéfice économique pour le fournisseur. Afin de maximiser le bénéfice et satisfaire les besoins des locataires, il est essentiel d'inclure le modèle économique et les SLAs dans le processus d'allocation de ressources. En effet, les besoins des locataires en terme de performances sont différents, il serait donc intéressant d'allouer les ressources d'une façon qui favorise les locataires les plus exigeants en assurant quand même une certaine qualité de service pour les locataires les moins exigeants. De plus, dans le cloud le nombre de ressources attribuées peut augmenter/diminuer selon la demande (élasticité) et le coût monétaire dépend du nombre de ressources attribuées, il devient donc intéressant de mettre en place un mécanisme pour choisir automatiquement le moment adéquat pour ajouter ou supprimer des ressources en fonction de la charge (dimensionnement automatique). Nous nous intéressons dans le cadre de cette thèse à la conception de méthodes d'allocation de ressources élastique pour les services d'interrogation de bases de données dans le cloud : (1) une méthode d'allocation de ressources statique en deux phases pour assurer un bon compromis entre le bénéfice du fournisseur et la satisfaction des locataires, tout en garantissant un coût d'allocation raisonnable, (2) une méthode de réallocation de ressources dirigée par les SLAs pour limiter l'impact des erreurs d'estimation sur le bénéfice et (3) une méthode de dimensionnement automatique basée sur l'apprentissage par renforcement qui répond aux spécificités de l'interrogation de bases de données. Afin d'évaluer nos contributions, nous avons implémenté nos méthodes dans un environnement cloud simulé et nous les avons comparées à des méthodes de l'état de l'art en terme de coût monétaire de l'exécution de requêtes ainsi que le coût d'allocation.