Это нормальный размер для MongoDB? - PullRequest
8 голосов
/ 07 февраля 2011

Я просто импортирую свою Mysql базу данных (размер 2,8 Mio) в мою новую Mongo базу данных с очень простым PHP-скриптом, который я строю, импорт был в порядке без ошибок, но когда я смотрю моя Mongo база данных (с RockMongo) я вижу это: Размер данных 8,01 м, Размер хранилища 13,7 м.

MongoDB больше Mysql для того же объема данных, это нормально?

Спасибо за вашу помощь и извините за мой английский.

1 Ответ

13 голосов
/ 07 февраля 2011

Да, это нормально, что «те же» данные занимают больше места в mongodb.Есть несколько вещей, которые вы должны принять во внимание:

1) документ _id, который хранится для каждого документа (если вы не указали для него свое собственное значение), составляет 12 байт на документ2) вы храните ключ для каждой пары ключ-значение в каждом документе, в то время как в MySql имя столбца не сохраняется для каждой отдельной строки, поэтому у вас есть дополнительные издержки и в ваших документах mongodb.Один из способов уменьшить это - использовать сокращенные имена ключей («имена столбцов») в ваших документах.3) mongodb автоматически добавляет отступы, чтобы позволить документам расти

В аналогичных тестах при загрузке данных из SQL Server в MongoDB с укороченными двухсимвольными именами ключей документов вместо полных имен согласно SQL Server, я вижу около 25-30% дополнительного пространства, используемого в MongoDB.

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