Я разрабатываю приложение, создающее постоянные ссылки. Я не уверен, как сохранить документы в MondoDB. Две стратегии:Генерация _id vs. ObjectId автогенерации в MongoDB
ObjectId автогенерацию
MongoDB autogenerates
_id
. Мне нужно создать индекс в полеpermalink
, потому что я получаю информацию по постоянной ссылке. Также я могу получить доступ к времени создания ObjectId, используя методgetTimestamp()
, поэтому поляdatetime
кажутся избыточными, но если я удалю это поле, мне нужно два вызова MongoDB, чтобы взять информацию, а другую - временную метку.{ "_id": ObjectId("5210a64f846cb004b5000001"), "permalink": "ca8W7mc0ZUx43bxTuSGN", "data": "a lot of stuff", "datetime": ISODate("2013-08-18T11:47:43.460+-100") }
Сформировать _id
Я генерировать
_id
с Permalink.{ "_id": "ca8W7mc0ZUx43bxTuSGN", "data": "a lot of stuff", "datetime": ISODate("2013-08-18T11:47:43.460+-100") }
Я не вижу каких-либо преимуществ использования ObjectIds. Я что-то упускаю?
Я не вижу реального вопроса? autogenerated _id имеет некоторую приятную информацию, как временную метку, поэтому вам не нужно будет хранить дату и время в отдельном поле, как в настоящее время. И, кстати, _id генерируется автоматически, он гарантирует уникальность – Dukeatcoding