Сколько уникальных идентификаторов может сгенерировать MongoDB для одного сервера? - PullRequest
2 голосов
/ 10 июля 2010

Сейчас я немного озадачен тем, сколько именно уникальных идентификаторов MongoDB может сгенерировать для одного сервера.

Конечно, с несколькими серверами раздел сервера их объекта id тоже может измениться, но сна одном сервере единственными частями, которые могли бы измениться, являются раздел pid (2 цифры) и увеличивающийся раздел (4 цифры).Поправьте меня, если я ошибаюсь по этому поводу.

Поскольку меняются только 6 из шестнадцатеричных цифр, я почти уверен, что для одного сервера будет только 16 777 216 возможных комбинаций.

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

Безопасно ли использовать MongoDB для этого типа работы?Извините, если я допустил какие-либо математические или логические ошибки.

Спасибо!

1 Ответ

3 голосов
/ 10 июля 2010

Вы должны быть в безопасности.Если вы получаете сам MongoDB для генерации идентификаторов, он сгенерирует 12-байтовое значение , из которых 4 байта являются секундами с начала эпохи, а 3 байта - счетчиком.Этого достаточно для более чем 7,20 * 10 ^ 16 (т. Е. 2 ​​^ (7 * 8)) документов на сервер и / или 16 миллионов (т. Е. 2 ​​^ (3 * 8)) на сервер в секунду.

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