Установить квоту базы данных MongoDB (SIZE)

Я хочу разрешить своим сайтам общего хостинга использовать MongoDB, однако, поскольку все они находятся на одном сервере VPS, я могу заставить mongo создавать базы данных и назначать их пользователям, но я, похоже, не могу ограничить размер базы данных только размер коллекции. Который можно изменить.

Есть ли в качестве администратора, чтобы ограничить размер базы данных.


person RussellHarrower    schedule 20.03.2012    source источник


Ответы (2)


MongoDB выделяет фрагменты базы данных, начиная с 64 МБ (dbname.0), затем следуют 128 МБ (.1), 256 и т. д. до 2 ГБ, после чего каждый файл имеет размер 2 ГБ.

Если вы используете --smallfiles в параметрах командной строки mongod.exe, выделение файла начинается с 16 МБ вместо 64 МБ и достигает максимума в 512 МБ вместо 2 ГБ.

Объедините это с --quotaFiles 1, и ваша база данных не сможет вырасти за пределы одного файла или... 16 МБ. Я всегда использую --quotaFiles в сочетании с --quota согласно справочной документации.

person David Makogon    schedule 03.04.2012

Я не верю, что это можно сделать с MongoDB. Если это вообще возможно, вы можете захотеть создать тома на своем сервере, на которых установлены квоты, и запустить несколько экземпляров mongod.

Однако следует помнить, что MongoDB пытается сохранить в памяти как можно больше данных. Это может создать проблемы с производительностью для клиентов, когда их данные будут заменены на диск чужими данными.

person Bryan Migliorisi    schedule 20.03.2012