Shadow Paging
Le shadow paging est une technique de copie à l'écriture : les modifications vont dans de nouvelles copies de pages et le pointeur de la table des pages est basculé atomiquement, permettant une reprise sur incident sans journal.
Objectif
Comprendre le mécanisme alternatif de récupération sans WAL, utilisé dans des bases de données embarquées comme LMDB.
Mécanisme
Lors d'une modification, la page est copiée vers un nouvel emplacement et la table de pages fantôme est mise à jour. Au commit, le pointeur de la table fantôme est basculé atomiquement (une seule écriture atomique). Les anciennes pages peuvent être récupérées. Aucun WAL nécessaire, mais forte amplification d'écriture, adapté aux petites bases de données.
Cas d’usage
- Conception de bases embarquées
- Récupération sans journal
- Copie à l'écriture