2012-06-20 25 views

risposta

14

Utilizzo di gridfs sì.

Gridfs è una specifica di archiviazione. Non è incorporato nel DB ma nei driver.

È possibile trovare ulteriori informazioni qui: http://www.mongodb.org/display/DOCS/GridFS.

L'implementazione normale consiste nell'abbattere i tuoi grandi documenti in quelli più piccoli e archiviarli in una collezione di blocchi gestiti da una raccolta fs.files che richiede i tuoi file.

+0

+1 per aiutarmi a migliorare la mia risposta e scavare i dettagli! – jsalonen

+1

Se i file binari rientrano nel limite di dimensioni BSON (attualmente 16 MB), è consigliabile considerare anche la memorizzazione degli oggetti binari direttamente all'interno di singoli documenti. C'è una pagina wiki con alcuni suggerimenti su [Quando utilizzare GridFS] (http://www.mongodb.org/display/DOCS/When+to+use+GridFS). – Stennie

+0

In effetti, è completamente corretto poiché può causare query non necessarie e allocazione di spazio. – Sammaye

6

MongoDB è un database di documenti che memorizza documenti di tipo JSON (chiamati BSON). La dimensione massima di un oggetto BSON è 16 megabytes, che potrebbe essere insufficiente per alcuni casi d'uso.

Se si desidera memorizzare dati binari di dimensioni arbitrarie, è possibile utilizzare GridFS (http://www.mongodb.org/display/DOCS/GridFS+Specification). GridFS divide automaticamente i tuoi documenti (o qualsiasi dato binario) in diversi oggetti BSON (usually 256k in size), quindi devi solo preoccuparti di archiviare e rivedere i documenti completi (qualunque sia la loro dimensione).

Per quanto ne so, Mongoose non supporta GridFS. Tuttavia, è possibile utilizzare GridFS tramite its native driver's GridStore. Basta eseguire npm install mongodb e iniziare l'hacking!

+0

Lo so - è per questo che ho detto che c'era scherzo nel titolo - spiego che avrei dovuto aggirare quel scherzo. MongoDB ha la capacità di "suddividere" Word o Excel in BSON e riassemblare di nuovo su richiesta? – PinkElephantsOnParade

+1

MongoDB non è JSON e BSON non è JSON – Sammaye

+1

Dimensione documento Msx se in realtà 16Mb – Sammaye

Problemi correlati