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
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Conjecture 1.<br />
Parmi <strong>le</strong>s trois propriétés suivantes : consistance, haute disponibilité et tolérance à<br />
la partition, tout système <strong>de</strong> <strong>données</strong> distribué ne peut respecter, au plus, que <strong>de</strong>ux<br />
d’entre el<strong>le</strong>s.<br />
Consistency Availability<br />
To<strong>le</strong>rance to network<br />
Partitions<br />
You can have at most two<br />
of these properties for any<br />
shared-data system<br />
Figure 2.3 – CAP (reproduction <strong>de</strong> [18])<br />
CAP (représenté par la figure 2.3) introduit <strong>de</strong>ux propriétés relatives aux systèmes distribués<br />
qui nous sont inconnues. Nous allons maintenant <strong>le</strong>s décrire.<br />
La consistance <strong><strong>de</strong>s</strong> <strong>données</strong> 5 est un concept qui décrit <strong>le</strong>s mo<strong><strong>de</strong>s</strong> d’accès aux <strong>données</strong>,<br />
<strong>le</strong>ur intégrité et validée. Nous <strong>le</strong> verrons à la section 3.1.4, il existe plusieurs modè<strong>le</strong>s <strong>de</strong><br />
consistance <strong><strong>de</strong>s</strong> <strong>données</strong>. La consistance <strong><strong>de</strong>s</strong> <strong>données</strong>, tel<strong>le</strong> que CAP l’entend, décrit <strong>le</strong> fait<br />
que <strong>le</strong>s <strong>données</strong> auxquel<strong>le</strong>s on accè<strong>de</strong>ra seront toujours à jour.<br />
Pour <strong><strong>de</strong>s</strong> raisons <strong>de</strong> performance (passage à l’échel<strong>le</strong>) et <strong>de</strong> sécurité (réplication <strong><strong>de</strong>s</strong> <strong>données</strong>),<br />
<strong>le</strong>s systèmes distribués tirent profit du fait <strong>de</strong> pouvoir s’étirer <strong>sur</strong> plusieurs instances.<br />
Répartir un service <strong>sur</strong> <strong>de</strong> nombreuses instances augmente <strong>le</strong> risque <strong>de</strong> défaillance d’une partie<br />
du service et causer ainsi une partition du service en plusieurs sous-ensemb<strong>le</strong>s. Pour expliquer<br />
<strong>le</strong> phénomène <strong>de</strong> partition, imaginons notre service distribué <strong>sur</strong> <strong>de</strong>ux boites noires ; un phénomène<br />
<strong>de</strong> partition arrive lorsque <strong>le</strong> câb<strong>le</strong> reliant ces <strong>de</strong>ux boites noires est débranché ; <strong>le</strong>s <strong>de</strong>ux<br />
sous-systèmes ne sont plus capab<strong>le</strong>s <strong>de</strong> communiquer. Un service distribué tolérant à la partition<br />
est un système tel qu’un phénomène <strong>de</strong> partition n’altère pas son bon fonctionnement.<br />
Ou <strong>de</strong> manière plus pragmatique :<br />
5. Il faudrait par<strong>le</strong>r <strong>de</strong> la cohérence <strong><strong>de</strong>s</strong> <strong>données</strong> (data consistency en anglais) mais par abus <strong>de</strong> langage,<br />
nous parlons <strong>de</strong> la consistance <strong><strong>de</strong>s</strong> <strong>données</strong><br />
13