L'élasticité des bases de données sur le cloud computing - CoDE
L'élasticité des bases de données sur le cloud computing - CoDE
L'élasticité des bases de données sur le cloud computing - CoDE
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapitre 4<br />
Bases <strong>de</strong> <strong>données</strong> et élasticité<br />
Dans ce chapitre, après un passage par l’état <strong>de</strong> l’art (section 4.1) qui est assez pauvre,<br />
nous débattrons <strong>de</strong> l’élasticité <strong><strong>de</strong>s</strong> BDs <strong>sur</strong> <strong>cloud</strong> : nous listerons <strong>le</strong>s problèmes liés à son<br />
étu<strong>de</strong> et aux moyens pouvant être mis en place pour l’étudier (section 4.2). Nous proposerons<br />
ensuite <strong><strong>de</strong>s</strong> scénarios <strong>de</strong> test et une série <strong>de</strong> paramètres pouvant caractériser cette élasticité<br />
d’une BD pour <strong>cloud</strong> (section 4.3). A la section 4.4, nous soumettrons ensuite Cassandra à ses<br />
scénarios afin <strong>de</strong> mieux comprendre comment ses choix techniques influencent son élasticité.<br />
Enfin, nous résumerons <strong>le</strong>s travaux <strong>de</strong> T. Dory [41] qui apportent une autre méthodologie<br />
pour tester et comparer l’élasticité <strong><strong>de</strong>s</strong> BDs <strong>sur</strong> <strong>cloud</strong> (section 4.5). Cette méthodologie<br />
est très intéressante mais possè<strong>de</strong>, toute comme notre métho<strong>de</strong>, <strong><strong>de</strong>s</strong> points faib<strong>le</strong>s. A la section<br />
4.6, nous tenterons <strong>de</strong> tirer parti <strong><strong>de</strong>s</strong> points forts et faib<strong>le</strong>s <strong><strong>de</strong>s</strong> <strong>de</strong>ux approches pour<br />
mieux appréhen<strong>de</strong>r l’élasticité <strong><strong>de</strong>s</strong> BDs.<br />
4.1 Etat <strong>de</strong> l’art<br />
Il n’existe à l’heure actuel<strong>le</strong> et à notre connaissance aucune étu<strong>de</strong> similaire à notre approche.<br />
Néanmoins, nous nous <strong>de</strong>vons <strong>de</strong> souligner <strong>le</strong>s travaux <strong>de</strong> B. Cooper qui peuvent<br />
servir <strong>de</strong> première approche : Yahoo ! Cloud Serving Benchmark (YCSB) [17] qui propose un<br />
framework et une étu<strong>de</strong> installant <strong>le</strong>s <strong>bases</strong> pour une nouvel<strong>le</strong> méthodologie <strong>de</strong> bancs d’essais<br />
(benchmark en anglais) pour <strong>le</strong>s BDs <strong>sur</strong> <strong>cloud</strong>.<br />
YCSB utilise <strong>le</strong> terme elastic speedup pour par<strong>le</strong>r <strong>de</strong> l’élasticité qu’ils définissent comme la<br />
capacité d’ajouter <strong>de</strong> nouvel<strong>le</strong>s instances à un système en cours d’exécution. Cette définition<br />
est fort similaire à la nôtre mais ne considère que l’ajout <strong>de</strong> nouvel<strong>le</strong>s instances (et ne considère<br />
pas <strong>le</strong>ur retrait).<br />
Le scénario proposé par YCSB est <strong>le</strong> suivant : soit un système composé <strong>de</strong> 2 serveurs (chargés<br />
<strong>de</strong> 120GB <strong>de</strong> <strong>données</strong>) soumis à une charge <strong>de</strong> travail (Workload en anglais) constante.<br />
Une fois, <strong>le</strong>s temps <strong>de</strong> réponse du système stabilisés 1 , une nouvel<strong>le</strong> instance est ajoutée au<br />
système. Cette opération est répétée jusqu’à atteindre un système <strong>de</strong> 6 instances. Durant l’entièreté<br />
du test, la charge est constante et estimée à 80% <strong>de</strong> la charge maxima<strong>le</strong> que supporte<br />
<strong>le</strong> système (composé <strong>de</strong> 6 instances).<br />
Par exemp<strong>le</strong>, observons <strong>le</strong>s résultats d’une tel<strong>le</strong> expérience <strong>sur</strong> Cassandra (figure 4.1).<br />
Dans cette figure, <strong>le</strong>s 10 premières minutes représentent <strong>le</strong>s temps <strong>de</strong> réponses d’un système<br />
<strong>de</strong> 5 instances. Après ces 10 minutes <strong>le</strong> système est stab<strong>le</strong> et un sixième serveur est ajouté au<br />
1. Ils supervisent l’opération pour voir si ses temps <strong>de</strong> réponses sont plus ou moins constants<br />
39