VT2017 Vitess

=Présentation=


 * Sujet : Vitess
 * Auteur : Oriane Dalle
 * Enseignants : Didier Donsez, Georges-Pierre Bonneau
 * Date : 29/09/2017

=Résumé=

Les bases de donnée des sites web deviennent de plus en plus importante, cela entraîne des complications comme la perte de performance lors d'appel de requête mais aussi la gestion de la base devient de plus en plus ingérable. Vitess est une technologie qui permet de mettre à l'échelle une base de donnée MySQL, ce qui lui permet de rester performante et gérable. Elle regroupe les grands avantages du MySQL en y alliant la mise à l'échelle du NoSQL, cela se base sur un découpage de la base de données de façon organisé mais aussi sur une topologie de la base de données qui permet de mieux orienter les requêtes. Vitess propose aussi un grand nombre d'outils .. [TODO]

=Abstract= =Synthèse=

Contexte
Vitess est un projet open-source qui a vu le jour en 2011 suite à l’expansion de YouTube. La taille de la base de donnée de Youtube ainsi que le nombre de connexion journalière étaient devenu trop important pour assurer la performance de la base de donnée et la gérer convenablement.

Deux solutions s'offrait à eux : Faire de la "scalabilité verticale" ou de la "scalabilité horizontale".

La scalabilité verticale revient à acheter une machine encore plus puissante afin de pouvoir gérer plus de données et plus de requêtes. Cette solution à évidement des limites visibles. La deuxième solution, qui est celle de Vitess, est la scalabilité horizontale, utilise le "Sharding" ou autrement dit la "distribution des données". Cette technique vise à repartir la base de données sur plusieurs machines de façon ordonné afin de mieux redirigé les requêtes faites sur la base. De cette façon Vitess à pu augmenter 50 fois la taille de la base de donné de Youtube, tout en la rendant plus facilement administrable.

Sharding
=Conclusion=