Qué es UUID y cómo funciona
UUID (Universally Unique Identifier) es un formato estandarizado de identificador de 128 bits, definido en RFC 9562 (anteriormente RFC 4122). La idea principal es la posibilidad de generar identificadores únicos en cualquier dispositivo, en cualquier momento, sin necesidad de verificar su unicidad a través de un servidor central.
Formato de escritura
Un UUID se escribe como 32 caracteres hexadecimales separados por cuatro guiones en cinco grupos: 8-4-4-4-12. Por ejemplo: 550e8400-e29b-41d4-a716-446655440000. El carácter en la posición 13 indica la versión (1–7), y el primer carácter del cuarto grupo determina la variante (8, 9, a o b para un UUID estándar).
Por qué UUID v4 es el más popular
UUID v4 utiliza un generador criptográficamente seguro de números aleatorios (CSPRNG). De 128 bits, 6 están reservados para versión y variante, dejando 122 bits de entropía. Esto da 5.3 × 10^36 combinaciones posibles. UUID v4 no está vinculado al tiempo ni al hardware, lo que garantiza el anonimato total de la generación.
UUID en bases de datos
Usar UUID como clave primaria tiene ventajas: fusión segura de datos de distintas fuentes, posibilidad de generar ID en el cliente sin consultar la base de datos, ausencia de información sobre el orden de creación de registros. Desventajas: mayor tamaño (16 bytes frente a 4–8 de INT), fragmentación del índice para v4. UUID v7 resuelve el problema de fragmentación gracias al prefijo temporal.
UUID v7 — nuevo estándar
UUID v7, estandarizado en RFC 9562 (2024), combina las ventajas de UUID v1 (ordenación por tiempo) y v4 (aleatoriedad). Los primeros 48 bits son un timestamp Unix en milisegundos, el resto son aleatorios. Esto hace que v7 sea ideal para claves primarias en bases de datos donde importa la secuencia de inserción.