Shadow Paging
El shadow paging es una técnica de copia al escribir: las modificaciones van a copias nuevas de las páginas y el puntero de la tabla de páginas se conmuta atómicamente, permitiendo recuperación ante fallos sin registro (log).
Propósito
Comprender el mecanismo alternativo de recuperación sin WAL, usado en bases de datos embebidas como LMDB.
Mecanismo
Al modificar, se copia la página a una nueva ubicación y se actualiza la tabla de páginas sombra. En el commit, se conmuta atómicamente el puntero de la tabla sombra (una única escritura atómica). Las páginas viejas se pueden reclamar. No necesita WAL, pero tiene alta amplificación de escritura y conviene a bases de datos pequeñas.
Casos de uso
- Diseño de bases de datos embebidas
- Recuperación sin log
- Copia al escribir