Что такое Генератор UUID v7
UUID v7 начинается с 48-битной метки времени Unix в миллисекундах, затем добавляет 74 случайных бита. Поскольку время находится в старших позициях, значения v7 сортируются хронологически при хранении как строки или двоичные — идеально для первичных ключей и журналов только для добавления.
v7 стандартизирован в RFC 9562 (2024) вместе с v6 и v8. Он лишён проблем с утечкой MAC, присущих v1, и проще v6, поэтому большинство новых проектов выбирают v7 для сортируемых ID.
Как использовать
- Укажите, сколько UUID нужно (1–1000).
- Включите верхний регистр, дефисы и фигурные скобки.
- Нажмите Сгенерировать; первые значения будут иметь одну начальную метку времени.
Сценарии
- Первичные ключи в реляционных и NoSQL базах (без фрагментации индекса).
- Сортируемые публичные ID, не раскрывающие общее число строк.
- Журналы событий и аудита, упорядоченные по времени создания.
Сравнение Генератор UUID v7 с другими форматами
| Option | When to use |
|---|---|
UUID v7 | Время в миллисекундах + случайность; современный выбор |
UUID v6 | Метка в стиле v1 переупорядочена; совместимо со старым |
UUID v4 | Случайный; без времени |
Code examples
JavaScript
import { v7 } from 'uuid';
const id = v7(); // '018f6e2a-1c3d-7abc-8def-0123456789ab'
Python
from uuid6 import uuid7
id = uuid7()
Frequently asked questions
Почему v7 рекомендуется для новых проектов?
Он сочетает упорядоченность по времени (хорошо для индексов) с простотой. Метка времени читается в первых 12 шестнадцатеричных цифрах, а случайный хвост делает совпадения пренебрежимо малыми.
Могут ли значения v7 совпасть?
74 случайных хвостовых бита делают совпадения практически невозможными в реальных масштабах, даже для значений, созданных в одну миллисекунду.
Хранить v7 с дефисами?
Храните каноническую форму с дефисами для читаемости и совместимости; свойство сортируемости сохраняется, так как метка времени в начальных байтах.