MongoDB MMAP


Esempio

MMAP è un motore di archiviazione innestabile che è stato chiamato dopo il comando mmap() Linux. Associa i file alla memoria virtuale e ottimizza le chiamate di lettura. Se hai un file di grandi dimensioni ma devi leggerne solo una piccola parte, mmap() è molto più veloce di una chiamata read() che porta l'intero file alla memoria.

Uno svantaggio è che non è possibile avere due chiamate in scrittura elaborate in parallelo per la stessa raccolta. Quindi, MMAP ha il blocco a livello di raccolta (e non il blocco a livello di documento come offerte WiredTiger). Questo blocco di raccolta è necessario perché un indice MMAP può fare riferimento a più documenti e se tali documenti potrebbero essere aggiornati contemporaneamente, l'indice sarebbe incoerente.