Pull to refresh

Comments 3

Так что делать, если нужен упорядоченный айди внутри без раскрытия метки времени наружу?

В статье как раз есть блок про разделение внутреннего _id и публичного public_id:

Если нужен упорядоченный ID внутри — оставляем его внутренним ключом: ObjectId, UUIDv7 или другой вариант, отсортированный по временной метке, чтобы индексу было удобно.

А наружу отдаём отдельный public_id: случайный UUIDv4 или что-то, что не раскрывает время создания.

ObjectId ценен монотонностью, не размером: timestamp в первых байтах даёт последовательную вставку в B-tree. UUIDv4 фрагментирует индекс, UUIDv7 решает проблему, но миграция болезненна.

Sign up to leave a comment.

Articles