MVCC

PostgreSQL 🔴 Senior

Définition

Multi-Version Concurrency Control : mécanisme ou chaque transaction voit un snapshot cohérent de la base. Les lectures ne bloquent jamais les écritures et vice-versa.

Analogie

Chaque client du restaurant reçoit sa propre copie du menu, même si le chef met a jour les plats en cuisine.

Exemple de code

-- Transaction A lit des donnees
BEGIN;
SELECT * FROM accounts WHERE id = 1;
-- Transaction B modifie en parallele
-- A ne voit pas les changements de B
COMMIT;

Cas d'usage

Comprendre pourquoi PostgreSQL gère si bien la concurrence sans verrouillage pessimiste.

#sgbd#interview#database#postgresql

← → au clavier pour passer d'une fiche à l'autre