Aller au contenu
uencoder

CAP Theorem

Le théorème CAP énonce qu'en cas de partition réseau, un système distribué ne peut satisfaire qu'une seule des deux propriétés entre cohérence (C) et disponibilité (A) ; les trois ne peuvent tenir simultanément.

Objectif

Révéler le compromis fondamental des systèmes distribués et guider le choix du magasin de données.

Mécanisme

Cohérence (tous les nœuds voient la même vue), disponibilité (toute requête reçoit une réponse), tolérance au partitionnement (le fonctionnement continue malgré les partitions). Les partitions étant inévitables, le choix pratique se fait entre CP (forte cohérence) et AP (haute disponibilité). CP : ZooKeeper, Spanner ; AP : Cassandra, DynamoDB.

Cas d’usage

  • Choix du stockage distribué
  • Architecture des données en microservices
  • Stratégie de déploiement multirégion
  • Compromis entre cohérence et disponibilité

Exemples

  • entrée
    During a network partition
    Output
    Choose C (reject inconsistency) or A (allow it)

    CP vs AP

Erreurs courantes

Believing all three of CAP can be satisfied simultaneously
Partitions are unavoidable; choose between CP and AP

Termes associés

References