Как увеличить размер базы данных mongodb?

Как увеличить размер базы данных mongodb?

Я загружал фотографии с отчетами в mongodb. Достигнут предел размера базы данных. Как увеличить размер базы данных?

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
}

Также, в качестве отступления. У меня сейчас 12 000 фотографий, которые загружаются каждый месяц. Я читал, что data fileограничение mongodb составляет 16 000. Я не смог найти определение data fileв глоссарии. Это относится к bufferedфотографиям, которые я загружал в базу данных? Так что, как только это произойдет, мне придется настроить отдельный сервер с шардом? Или я могу создать шард на той же машине?

Заранее спасибо.

решение1

Я загружал фотографии с отчетами в mongodb. Достигнут предел размера базы данных. Как увеличить размер базы данных?

Если у вас есть доступное дисковое пространство, MongoDB автоматически выделит дополнительное дисковое пространство по мере необходимости. Поскольку вы используете механизм хранения MMAP (на основе вашего db.stats()вывода), MongoDB будет предварительно выделять пространство с увеличивающимися приращениями до 2 ГБ на новый файл (или максимум 512 МБ на файл, если вы используетеsmallFilesвариант). Учитывая, что размер вашей базы данных в данный момент >18 ГБ, вам понадобится не менее 2 ГБ свободного места (плюс немного места для ОС, если ваш временный каталог находится на том же томе).

Ограничений по количеству документов в коллекции нет, если только вы не используете ограниченную коллекцию с указаннымmaxпредел(которое должно быть меньше 2^32). Существуют производственные развертывания MongoDB с триллионами документов (ссылка:MongoDB в масштабе).

MongoDB 3.0+ имеет API движка хранения, поэтому могут быть некоторые ограничения, которые различаются в зависимости от движка хранения. Например,ограничение на размер данныхдля одного mongodс классическим движком хранения MMAPv1 обычно составляет 64 терабайта данных с включенным журналированием. Движок хранения WiredTiger (опционально в 3.0, по умолчанию в 3.2+) не имеет этого ограничения.

Загрузка десятков тысяч документов в месяц не должна стать проблемой.

Более подробную информацию см. здесь:Ограничения и пороговые значения MongoDB.

Связанный контент