фон: Я
быть_наст
везет над приложением (оригинал инженер выезжает), которые действуют как кэширование слой некоторыхов относительно медленных услуг серверных. Поскольку это URL-адрес стиля RESTful, каждый URL-адрес уникален. Приложение использует MongoDb в качестве хранилища для кеша и использует хэш-значение в качестве кеша. Хотя хеш-код должен быть довольно уникальным, но он не уникален.Есть ли ограничение на длину _id в MongoDB
Вопрос: Мне сказали, что причина использовать хеш-код (вместо URL-адреса) заключалась в том, что поле _id MongoDb имеет ограничение по длине, но я не могу найти на нем какой-либо документ. Все, что я могу найти в документации MongoDb, это «поле _id может быть чем угодно, кроме массива, пока оно уникально». Верно ли, что поле _id MongoDb имеет ограничение по длине? Если да, то какой размер лимита?
Приложение написано на Java. О, и я новичок в MongoDb.
Ах, спасибо. Да длинное строковое значение в _id тоже неудобно. Реальное решение заключается в обработке столкновений, но это и вся другая история. – Alvin
Ну по своей природе хеш-значения редко могут быть уникальными. Поэтому я не буду хранить хеши как _id-значения (которые должны быть уникальными), и проверка столкновений не требуется. При этом было бы вполне возможно создать сокращенные URL-адреса для ваших URI REST, это просто потребует некоторой информации об использовании вашего кода сокращения. –
Спасибо за совет! Ценить это. – Alvin