MongoDB созданные файлы - PullRequest
       5

MongoDB созданные файлы

14 голосов
/ 29 февраля 2012

Я пытаюсь использовать MongoDB, но я не понимаю созданные ею файлы.

Если я создаю документ в своей коллекции БД, скажем, пользователи , он создаст эти файлына моем / data / db /

_tmp (folder)
mongod.lock
users.0 - 16.8MB
users.1 - 33.6MB
users.ns - 16.8MB

Я добавил несколько документов, и размер файлов не изменился .. Я немного потерян здесь ... кто-нибудьзнаете, как работают эти файлы?Я пытался открыть их с помощью gedit / vim и ничего.

Заранее благодарен за любую помощь.

Ответы [ 2 ]

43 голосов
/ 29 февраля 2012

Файлы .0, .1 являются файлами данных. Каждый файл данных предварительно выделен для определенного размера. (Это сделано для предотвращения фрагментации файловой системы, среди других причин.) Первое имя файла для базы данных: .0, затем .1 и т. Д. 0 будет 64 МБ, .1 128 МБ и т. Д., До 2 ГБ. Как только размер файла достигает 2 ГБ, каждый последующий файл также имеет размер 2 ГБ. Информацию о файлах данных можно найти здесь:

http://www.mongodb.org/display/DOCS/Excessive+Disk+Space

Файлы ".ns" являются файлами пространства имен. Каждая коллекция и индекс будут считаться пространством имен. Каждое пространство имен составляет 628 байт, файл .ns по умолчанию составляет 16 МБ.

Таким образом, если у каждой коллекции был один индекс, мы можем создать до 12 000 коллекций. Параметр --nssize позволяет увеличить этот предел.

Максимальный размер файла .ns составляет 2 ГБ.

1 голос
/ 29 февраля 2012

Mongo предварительно выделяет пространство в чанках, поэтому размер вашего файла будет оставаться на уровне 16 Мб, пока у вас не будет более 16 Мб данных, и он не перевернется на новый чанк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...