¿Cómo aumentar el tamaño de la base de datos mongodb?

¿Cómo aumentar el tamaño de la base de datos mongodb?

He estado subiendo fotos con informes a mongodb. Alcancé el límite de tamaño de la base de datos. ¿Cómo aumento el tamaño de la base de datos?

db.stats()
{
        "db" : "fieldops",
        "collections" : 6,
        "objects" : 20454,
        "avgObjSize" : 890464.9997066589,
        "dataSize" : 18213571104,
        "storageSize" : 18432802736,
        "numExtents" : 52,
        "indexes" : 4,
        "indexSize" : 809424,
        "fileSize" : 21398290432,
        "nsSizeMB" : 16,
        "extentFreeList" : {
                "num" : 0,
                "totalSize" : 0
        },
        "dataFileVersion" : {
                "major" : 4,
                "minor" : 22
        },
        "ok" : 1
}

Además, como acotación. Tengo 12.000 fotografías en este momento que se suben cada mes. Leí que el data filelímite de mongodb es 16.000. No pude encontrar cuál data filees la definición en el glosario. ¿Se refiere a las bufferedimágenes que subí a la base de datos? Entonces, una vez que eso suceda, ¿tengo que configurar un servidor separado con un fragmento? ¿O puedo crear un fragmento en la misma máquina?

Gracias de antemano.

Respuesta1

He estado subiendo fotos con informes a mongodb. Alcancé el límite de tamaño de la base de datos. ¿Cómo aumento el tamaño de la base de datos?

Suponiendo que tenga espacio en disco disponible, MongoDB asignará automáticamente espacio en disco adicional según sea necesario. Dado que está ejecutando el motor de almacenamiento MMAP (según su db.stats()salida), MongoDB preasignará espacio en incrementos crecientes hasta 2 GB por archivo nuevo (o un máximo de 512 MB por archivo si está utilizando el motor de almacenamiento MMAP).smallFilesopción). Dado que su base de datos actualmente tiene >18 GB, necesitará al menos 2 GB de espacio libre (más algo de espacio para el sistema operativo si su directorio temporal está en el mismo volumen).

No hay límite en el recuento de documentos para una colección a menos que esté utilizando una colección limitada con un límite específico.maxlímite(que debe ser menor que 2^32). Hay implementaciones de producción de MongoDB con billones de documentos (ref:MongoDB a escala).

MongoDB 3.0+ tiene una API de motor de almacenamiento, por lo que puede haber algunos límites que varían según el motor de almacenamiento. Por ejemplo, ellímite en el tamaño de los datospara uno mongodcon el motor de almacenamiento MMAPv1 clásico suele ser de 64 terabytes de datos con el registro en diario habilitado. El motor de almacenamiento WiredTiger (opcional en 3.0, predeterminado en 3.2+) no tiene esta limitación.

Insertar decenas de miles de documentos al mes no debería ser un problema.

Para más información, ver:Límites y umbrales de MongoDB.

información relacionada