Генератор UUID

Генерация UUID и случайных ID

10

Описание инструмента

О Генератор UUID

UUID v4 Generator создает случайные 128-битные идентификаторы для запрос ID, ключей БД, тестовых записей и correlation ID.

Инструмент умеет генерировать пачки ID, менять регистр, убирать дефисы и использовать UUID v7 для сортировки по времени.

Как пользоваться UUID v4 Generator

  1. Выберите UUID v4 для случайных ID или UUID v7, если нужна хронологическая сортировка.
  2. Укажите количество перед генерацией, если нужны тестовые данные, начальные данные или ручное тестирование.
  3. Верхний регистр включайте только для старых систем; обычно в web и JSON используют нижний.
  4. Удаляйте дефисы только если поле или протокол требует компактный формат из 32 символов.

Когда это полезно

  • Создать correlation ID для API-запросов и связать логи разных сервисов.
  • Сгенерировать тестовые записи без зависимости от sequence в базе.
  • Подготовить ID для mock JSON, OpenAPI-примеров или интерфейс fixtures.
  • Использовать UUID v7 для событий или аудита, где важен порядок создания.

Формат UUID и детали

Стандартный UUID содержит 36 символов с дефисами и группы 8-4-4-4-12. UUID v4 случайный; UUID v7 объединяет timestamp и случайные байты.

  • UUID v4: случайный ID для большинства приложений и запрос ID.
  • UUID v7: ID, сортируемый по времени, полезен для индексов и событий.
  • Без дефисов: то же 128-битное значение без разделителей.
  • Регистр: в обычном сравнении верхний и нижний регистр обозначают одно значение.

Частые вопросы: Генератор UUID

UUID v4 действительно уникален?
Он уникален вероятностно. При безопасном источнике случайности коллизии в обычных приложениях крайне маловероятны.
Когда использовать UUID v7?
Когда ID должны примерно сортироваться по времени создания, например для логов, событий или индексов БД.
UUID писать в верхнем или нижнем регистре?
В web и JSON обычно используют нижний регистр. Верхний нужен только если система этого требует.
Можно убрать дефисы?
Да, значение эквивалентно. Но стандартный формат лучше сохранять, если API или хранилище не требует компактный ID.
Сгенерированные UUID отправляются на сервер?
Нет. Генерация и форматирование выполняются локально в браузере и не отправляются на wetool.site.

UUID и auto-increment ID

Auto-increment ID короткие, но требуют центральной sequence в БД. UUID длиннее, зато удобнее для распределенных сервисов, клиентов и очередей.

Когда подходит UUID v4

UUID v4 хорош, когда ID нужно генерировать офлайн, объединять между системами или показывать снаружи без раскрытия последовательности. Это не ответ по умолчанию для любого ID.

  • Используйте случайные UUID для временных ID на клиенте, идентификаторов распределённых задач, тестовых данных и публичных ссылок.
  • Для первичных ключей базы данных, где важна локальность индекса, оцените UUID v7, ULID или автоинкрементные ID базы данных.
  • Не считайте UUID токен авторизации; hard to guess не равно контроль доступа.

Вероятность коллизий и источник случайности

UUID v4 зависит от качественной случайности. В браузере генерация должна использовать случайность уровня Web Crypto, а не Math.random().

  • Стандартный UUID v4 содержит около 122 случайных бит, поэтому вероятность коллизий крайне низкая при обычных объемах.
  • После массовой генерации проверка дубликатов помогает найти ошибки копирования и вставки или ошибки повторного использования скриптов.
  • UUID v4 не содержит информации о времени; сохраняйте created_at отдельно или используйте ID с временным порядком, если важны сортировка или трассировка по времени.