Decodificador de marca de tiempo UUID v7
Extrae la marca de tiempo en milisegundos incrustada en los primeros 48 bits de un UUID v7 y conviértela de nuevo a fecha y hora UTC simplemente pegando la cadena. Detecta versiones que no son v7 y anomalías en el variant, y funciona como el inverso de la herramienta hermana "Generador de UUID v7".
Distribución de bits del UUID v7
| Rango de bits | Campo | Descripción |
|---|---|---|
| 0-47 | unix_ts_ms | Milisegundos desde la época Unix, almacenados en big-endian. El valor que extrae esta herramienta. |
| 48-51 | version | El número de versión del UUID. Fijo en 0111 (7 en hexadecimal) para v7. |
| 52-63 | rand_a | 12 bits de datos aleatorios. Algunas implementaciones los usan para preservar el orden dentro del mismo milisegundo. |
| 64-65 | variant | Valor fijo 10 que indica el variant de RFC 4122/9562. El primer dígito hexadecimal resulta en 8/9/a/b. |
| 66-127 | rand_b | 62 bits de datos aleatorios que aportan entropía para evitar colisiones. |
Qué significa extraer la marca de tiempo de un UUID v7
El UUID v7, normalizado en el RFC 9562 en 2024, incrusta el instante de creación en sus primeros 48 bits como una marca de tiempo Unix en milisegundos. Por eso, al ordenar un conjunto de ellos quedan en orden de creación, y por eso usarlos como claves primarias mantiene baja la fragmentación de los índices. Pegue aquí un UUID y esta herramienta recupera esos 48 bits como fecha y hora en UTC.
También informa de la versión y de la variante. Si pega algo que no sea un v7, la marca de tiempo se calcula igualmente y se muestra acompañada de un aviso de que el valor no es un v7. Un v4 aleatorio dará una fecha sin sentido, pero verlo ocurrir es una buena manera de entender qué lleva realmente cada tipo de UUID. Una tabla de distribución de bits muestra qué viene después de esos primeros 48 bits. Todo se ejecuta en su navegador.
Cómo leer una marca de tiempo dentro de un UUID
- Pegue el UUID La forma estándar de 36 caracteres con guiones, 8-4-4-4-12. Sirve tanto en mayúsculas como en minúsculas.
- Compruebe la versión y la variante Un v7 no genera ningún aviso. Cualquier otra cosa se señala como que no es un v7.
- Lea la hora recuperada Aparece de tres formas: milisegundos Unix, ISO 8601 en UTC y la hora local de su propio dispositivo.
- Consulte la tabla de bits Puede ver qué ocupa cada rango de bits después de la marca de tiempo de 48 bits: la versión, la variante y la parte aleatoria.
Consejos para aprovecharla mejor
- Todo el proceso de decodificación ocurre por completo dentro del JavaScript de tu navegador; el UUID introducido nunca se envía al servidor de toolbase.cc.
- Si la clave primaria de tu base de datos usa UUID v7, puedes recuperar el momento de creación del registro simplemente pegando la clave aquí, incluso sin una columna created_at dedicada.
- Introducir un UUID que no sea v7 (como v4) genera una advertencia, pero el valor de referencia extraído mecánicamente de los primeros 48 bits se sigue mostrando, lo cual es útil para aprender en qué se diferencian los formatos.
- Si necesitas generar un UUID, usa la herramienta hermana "Generador de UUID v7": produce UUID que esta herramienta puede decodificar directamente de vuelta.
- Pegar aquí uno a uno los valores de UUID v7 encontrados en archivos de registro o respuestas de API es una forma práctica de estimar cuándo ocurrieron los eventos en un sistema externo durante la depuración.
Dónde resulta útil
Recuperar cuándo ocurrió un evento registrado
Incluso un registro sin columna de fecha puede datarse si sus claves primarias son v7, lo que ayuda a reconstruir el orden de los hechos durante una incidencia.
Confirmar que las claves se ordenan por creación
Introduzca los UUID de varios registros uno tras otro y compruebe que la implementación produce realmente valores ordenados en el tiempo.
Decidir si adoptar v7
Ver qué se puede extraer hace tangible el compromiso: cualquiera que tenga el valor puede leer el instante de creación, lo que es un inconveniente allí donde ese momento sea sensible.
Distinguir versiones
Saber a simple vista si un UUID recibido es un v4 o un v7 resulta difícil, y esto lo resuelve al instante.
Términos de los UUID
- UUID v7
- La versión normalizada en el RFC 9562, que lleva una marca de tiempo Unix en milisegundos en sus primeros 48 bits. Poder ordenarse por tiempo es lo que principalmente lo distingue del v4.
- Versión
- El dígito en la decimotercera posición hexadecimal, que indica cómo se generó el UUID. En un v7 es 7.
- Variante
- Un valor aparte que describe la disposición interna. En los UUID que siguen el RFC 9562, la decimoséptima posición es 8, 9, a o b.
- Milisegundos Unix
- Milisegundos transcurridos desde el 1 de enero de 1970 a las 00:00:00 UTC. Cuarenta y ocho bits bastan para llegar al año 10889.
- En qué se diferencia el v4
- Un v4 es esencialmente todo aleatorio y **no lleva ninguna información sobre cuándo se creó.** Por tanto no se ordena por creación, pero a cambio nadie puede leer su momento de origen.
Preguntas frecuentes
A propósito — Dotar al UUID de un reloj incorporado
Lo revolucionario de UUID v7 es que el propio identificador conserva permanentemente su momento de generación. Con el antiguo UUID v4, era imprescindible una columna created_at aparte para saber cuándo se creó un registro, pero si la clave primaria de una tabla usa UUID v7, el momento de generación puede recuperarse mecánicamente solo a partir de la cadena del ID. Esta herramienta ofrece ese proceso de recuperación como el inverso de la herramienta hermana "Generador de UUID v7".
Esta propiedad resulta especialmente útil en investigaciones de incidentes y migraciones de datos. Si el ID de un pedido enterrado en un registro antiguo, o un ID de evento recibido de un sistema externo, resulta estar en formato UUID v7, puedes saber al instante aproximadamente cuándo se creó el registro sin consultar una columna de marca de tiempo dedicada. Esto también aplica a sistemas heredados sin columna created_at, o al analizar valores UUID v7 emitidos por otra empresa.
Dicho esto, hay salvedades. Una marca de tiempo de UUID v7 depende por completo del reloj de la máquina que la genera, así que si el reloj de ese servidor está desajustado, el resultado extraído también lo estará. Además, ten en cuenta que esta herramienta extrae mecánicamente una "posible marca de tiempo" incluso de otras versiones de UUID como v4; eso es puramente una interpretación de posiciones de bits y no garantiza que el valor resultante tenga sentido.