PostgreSQLLa base de données la plus sophistiquée au monde.

54.4. Carte de visibilité

Chaque relation a une carte de visibilité (VM acronyme de Visibility Map) pour garder trace des pages contenant seulement des lignes connues pour être visibles par toutes les transactions actives. Elle est stockée en dehors du fichier de données dans un fichier séparé nommé suivant le numéro relfilenode de la relation, auquel est ajouté le suffixe _vm. Par exemple, si le relfilenode de la relation est 12345, la VM est stockée dans un fichier appelé 12345_vm, dans le même répertoire que celui du fichier de données. Notez que les index n'ont pas de VM.

La carte de visibilité enregistre un bit par page. Un bit à 1 signifie que toutes les lignes de la page sont visibles par toutes les transactions. Cela signifie que le page ne contient pas de lignes nécessitant un VACUUM ; dans le futur, cela pourra aussi être utilisé pour éviter de visiter la page lors de vérifications de visibilité. Chaque fois qu'un bit est à 1, la condition est vraie à coup sûr. Par contre, dans le cas contraire, la condition peut être vraie comme fausse.