La cohérence des données

Quand les données sont copiées sur plusieurs machines, qui voit quoi, et quand ? Cohérence forte, cohérence à terme, théorème CAP, quorums et lecture de ses propres écritures, en définitions et en situations, chaque réponse expliquée.

  • 32 cartes
  • 3 thèmes
  • Gratuit

Le programme, thème par thème

Le poids de chaque thème suit celui que lui donne l'examen.

  1. Modèles de cohérence
  2. Le théorème CAP
  3. Réplicas et quorums

Quelques cartes du deck

  • Que désigne « cohérence forte » ?

    Voir la réponse

    Toute lecture voit la dernière écriture validée, comme s'il n'y avait qu'une seule copie des données

    C'est le plus simple à raisonner pour le développeur, mais chaque écriture doit être coordonnée entre les copies, ce qui coûte en latence et en disponibilité.

  • Pour quelle donnée la cohérence à terme convient-elle sans souci ?

    • Le nombre de « j'aime » sous une publication
    • Le solde d'un compte bancaire avant un retrait
    • Le stock restant du dernier billet d'un concert
    • Le verrou qui empêche deux personnes de réserver le même siège
    Voir la réponse

    Le nombre de « j'aime » sous une publication

    Afficher 1 203 au lieu de 1 205 pendant une seconde ne gêne personne. Un solde, un dernier billet ou une réservation exigent au contraire de voir la toute dernière valeur.

  • Toute lecture voit la dernière écriture validée, comme s'il n'y avait qu'une seule copie des données : comment s'appelle cette notion ?

    Voir la réponse

    cohérence forte

    C'est le plus simple à raisonner pour le développeur, mais chaque écriture doit être coordonnée entre les copies, ce qui coûte en latence et en disponibilité.

  • Un utilisateur modifie son pseudo, recharge la page et voit l'ancien. Les lectures partent sur une réplique en retard. Quelle garantie manque ?

    • Lire ses propres écritures
    • La disponibilité
    • La tolérance au partitionnement
    • Le chiffrement
    Voir la réponse

    Lire ses propres écritures

    On peut l'assurer sans tout rendre fortement cohérent : envoyer les lectures d'un utilisateur vers la base principale juste après ses écritures, ou attendre que la réplique ait rattrapé son retard.