Генерация вторичного Uniqie Id's Mongodb - PullRequest
1 голос
/ 10 октября 2011

Я пытался найти способ генерировать уникальные идентификаторы в mongodb.Я знаю, что у mongodb есть _id, который уникален в зависимости от времени, к какому серверу, среди прочего, добавлен его сервер.У меня проблема в том, что мне нужны простые идентификаторы для таких вещей, как пользователи.Я знаю, что у меня может быть коллекция только для отслеживания этих идентификаторов, которые я хочу, но я боюсь, что когда mongodb находится в кластере (совместное использование и отработка отказа), есть вероятность, что одно и то же число может быть сгенерировано дважды, и в этомдело к вещам будет иметь такой же идентификатор в моей системе.

Я думал о настройке сервера PostgreSQL только для генерации идентификаторов.Все, что он должен сделать, это вставить новую строку и вернуть идентификатор этой новой строки, а затем один раз в день он может легко стереть все даты, кроме того, что нужно для генерации следующего ключа.У кого-нибудь есть другие предложения.

Просто чтобы сообщить, что я использую PHP.

1 Ответ

1 голос
/ 10 октября 2011

bson ObjectId в mongodb будет уникальным для всего кластера.таким образом, это безопасно.

см. также порядковые номера на следующей странице;ObjectId является предпочтительным (лучше всего масштабируется): http://www.mongodb.org/display/DOCS/Object+IDs

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