Using NodeUnderstanding the CAP theorem

Qu'est-ce que le partitionnement d'une bdd ?

  1. répartir les données sur plusieurs serveurs
  2. fait avec une consistent method
    1. ranges: A-L, M-Q, R-Z
    2. listes:
    3. hashes: function qui retourne une valeur pour déterminer l'appartenance.

Pourquoi partitionner ?

  1. limites de stockage : l'ensemble de donnée est trop gro spour le serveur
  2. performances : répartir la charge sur plusieurs partitions permet d'améliorer les performances.
  3. disponibilité : assure que les données sont disponibles même si un serveur est indisponible/occupé

Pourquoi éviter de partitionner ?

  1. quand l'enseble de donnée est petit
  2. peut augmenter la complexité de manière non nécessaire

Le partitionnement dans les bdd relationneles VS NoSQL

  1. similaire
  2. les bases de données relationnelles peuvent être partitionnées horizontalement ou verticalement
  3. le partitionnement horizontal met les différents rangs sur différents partitions
  4. le partitionnelent vertical met les différentes colonnes sur différentes partitions
  5. le partitionnement de bases de données non relationnelles dépend du type (key/value, document…).