En primer lugar, esto se plantea en la próxima versión para 8MB
o 16MB
... pero creo que para poner esto en perspectiva, Eliot de 10gen (que desarrolló MongoDB) lo expresa mejor:
EDITAR: El tamaño ha sido oficialmente 'elevado' a16MB
Entonces, en el ejemplo de su blog, 4 MB es en realidad mucho. Por ejemplo, el texto completo sin comprimir de "La guerra de los mundos" es solo 364k (html):
http://www.gutenberg.org/etext/36
Si tu publicación de blog es tan larga con tantos comentarios, por mi parte no la voy a leer :)
Para los trackbacks, si les dedicó 1 MB, fácilmente podría tener más de 10k (probablemente más cerca de 20k)
Entonces, excepto en situaciones realmente extrañas, funcionará muy bien. Y en el caso de excepción o spam, realmente no creo que quieras un objeto de 20mb de todos modos. Creo que limitar los trackbacks como 15k más o menos tiene mucho sentido, sin importar el rendimiento. O al menos una carcasa especial si alguna vez sucede.
-Eliot
Creo que sería muy difícil llegar al límite ... y con el tiempo, si actualizas ... tendrás que preocuparte cada vez menos.
El punto principal del límite es que no use toda la RAM en su servidor (ya que necesita cargar todos MB
los documentos en la RAM cuando lo consulta).
Entonces, el límite es un% de la RAM utilizable normal en un sistema común ... que seguirá creciendo año tras año.
Nota sobre el almacenamiento de archivos en MongoDB
Si necesita almacenar documentos (o archivos) más grandes de lo 16MB
que puede, use la API de GridFS que dividirá automáticamente los datos en segmentos y los transmitirá de nuevo a usted (evitando así el problema con los límites de tamaño / RAM).
En lugar de almacenar un archivo en un solo documento, GridFS divide el archivo en partes o fragmentos, y almacena cada fragmento como un documento separado.
GridFS usa dos colecciones para almacenar archivos. Una colección almacena los fragmentos de archivo y la otra almacena los metadatos del archivo.
Puede usar este método para almacenar imágenes, archivos, videos, etc. en la base de datos de la misma manera que lo haría en una base de datos SQL. Lo he usado incluso para almacenar archivos de video de varios gigabytes.