Voglio usare mongodb per il mio nuovo progetto. il problema è che mongo utilizza i file pre-allocati:mongo db --smallfiles switch svantaggi
Ogni file di dati è preallocato per una dimensione particolare. (Questo è fatto per prevenire la frammentazione del file system, tra le altre ragioni.) Il primo nome file per un database è .0, quindi .1, ecc .0 sarà 64 MB, .1 128 MB, ecc., Fino a 2 GB. Una volta che i file raggiungono 2 GB di dimensione, ogni file successivo è anche 2 GB. Pertanto, se l'ultimo file di dati presente è, ad esempio, 1 GB, il file potrebbe essere vuoto al 90% se è stato creato di recente.
da qui: http://www.mongodb.org/display/DOCS/Excessive+Disk+Space
E la sua normale avere molti file da 2 GB con niente dentro. c'è un interruttore --smallfiles, per limitare questo file a 512MB
--smallfiles => Utilizzare una dimensione più piccola iniziale del file (16 MB) e la dimensione massima (512 MB)
voglio sapere usare i file piccoli è un bene per la produzione? e quali sono i suoi inconvenienti.
c'è uno switch noprealloc ma non è buono in produzione. ma non ci sono annotazioni sui piccoli file.
Un'altra nota qui è che --smallfiles è buono per gli arbitri - un arbitro spesso prealloca molti file (giornale per esempio) all'avvio, perché all'avvio non lo fa ma so che è un arbitro. –
@AdamC Un buon punto, ma puoi anche girare di journaling (nojournal = true) per un arbitro. – Mattias