Qu'est-ce que le partitionnement d'une bdd ?
répartir les données sur plusieurs serveurs
fait avec une consistent method
ranges: A-L, M-Q, R-Z
listes:
hashes: function qui retourne une valeur pour déterminer l'appartenance.
Pourquoi partitionner ?
limites de stockage : l'ensemble de donnée est trop gro spour le serveur
performances : répartir la charge sur plusieurs partitions permet d'améliorer les performances.
disponibilité : assure que les données sont disponibles même si un serveur est indisponible/occupé
Pourquoi éviter de partitionner ?
quand l'enseble de donnée est petit
peut augmenter la complexité de manière non nécessaire
Le partitionnement dans les bdd relationneles VS NoSQL
similaire
les bases de données relationnelles peuvent être partitionnées horizontalement ou verticalement
le partitionnement horizontal met les différents rangs sur différents partitions
le partitionnelent vertical met les différentes colonnes sur différentes partitions
le partitionnement de bases de données non relationnelles dépend du type (key/value, document…).