Generatore di UUID v7
Genera in blocco nel navigatore gli UUID di versione 7, i nuovi identificativi ordinabili cronologicamente standardizzati dalla norma RFC 9562, che recano nei primi 48 bit una marca temporale al millesimo di secondo. Sono previsti i formati standard, maiuscolo, senza trattini, fra parentesi graffe e in forma di nome uniforme di risorsa, e si possono salvare così come sono nelle colonne di tipo UUID esistenti.
Confronto fra UUID v7, UUID v4 e ULID
| Formato | Lunghezza | Ordinabile per generazione | Compatibilità con le colonne di tipo UUID | Descrizione |
|---|---|---|---|---|
| UUID v7 | 36 caratteri (compresi quattro trattini) | Sì (i primi 48 bit sono una marca temporale al millesimo di secondo) | Sì (tipo UUID standard, notazione esadecimale invariata) | Standardizzato dalla norma RFC 9562. Composto di marca temporale Unix e valori casuali, concilia l'ordinabilità cronologica con la compatibilità con il patrimonio esistente di UUID. È il formato generato da questo strumento. |
| UUID v4 | 36 caratteri (compresi quattro trattini) | No (del tutto casuale) | Sì (tipo UUID standard) | Identificativo a 128 bit del tutto casuale, standardizzato dalla norma RFC 9562. Non contiene informazioni sull'origine ed è il formato più diffuso. |
| ULID | 26 caratteri | Sì (i primi dieci caratteri sono la marca temporale) | No (essendo in Base32 richiede una conversione di tipo) | Specifica indipendente dallo standard UUID, in Base32 di Crockford. Più breve dell'UUID v7, ma non memorizzabile direttamente in una colonna di tipo UUID. |
Consigli per l'uso
- Gli UUID v7 generati sono elaborati dal JavaScript del navigatore, tramite l'interfaccia crittografica, e non giungono mai ai serventi di toolbase.cc.
- Poiché i primi 48 bit sono una marca temporale Unix al millesimo di secondo, basta ordinare gli identificativi come stringhe per disporli secondo l'ordine cronologico di generazione.
- Si possono memorizzare così come sono nelle colonne già predisposte per gli UUID v4, per esempio di tipo carattere a lunghezza fissa o del tipo UUID nativo, e la migrazione non richiede modifiche di tipo nell'applicazione.
- Il formato senza trattini è comodo per i segmenti di percorso di un indirizzo web e per i nomi di file. Quello fra parentesi graffe coincide con la notazione usata nel registro e nei componenti di Windows.
- Se esitate fra UUID v7 e ULID, che è in Base32 di Crockford e conta ventisei caratteri, scegliete il primo quando il sistema esistente presuppone colonne di tipo UUID e il secondo quando conta la brevità della stringa.
Domande frequenti
A proposito — l'UUID v7 che ha restituito il tempo agli identificativi
L'UUID v7 è stato standardizzato nel maggio del 2024 con la norma RFC 9562: la prima revisione di ampia portata dopo circa vent'anni dalla RFC 4122 del 2005, con l'aggiunta delle versioni 6 e 7, ordinabili cronologicamente, e della versione 8, che ammette campi personalizzati. All'origine sta un problema segnalato da anni: la totale casualità dell'UUID v4 penalizza l'efficienza degli indici delle basi di dati.
La progettazione dell'UUID v7 somiglia moltissimo a quella dell'ULID, cui è dedicato un altro strumento di questo sito. Entrambi recano in testa una marca temporale al millesimo di secondo e riempiono il resto con valori casuali; la differenza decisiva è la notazione. L'ULID adotta ventisei caratteri in Base32 di Crockford, come specifica indipendente dallo standard UUID, mentre l'UUID v7 conserva i trentasei caratteri esadecimali della tradizione: da qui il grande vantaggio di poter continuare a usare colonne, librerie e specifiche di interfaccia esistenti.
Non a caso il sostegno all'UUID v7 si è diffuso rapidamente fra le principali basi di dati e i principali ambienti di esecuzione. PostgreSQL lo ha incluso di serie nella versione 18 con una funzione dedicata, e le librerie capaci di generarlo si moltiplicano negli altri linguaggi e nei sistemi di corrispondenza fra oggetti e tabelle. Conciliare la comodità dell'ordinabilità cronologica con la conservazione del patrimonio esistente di UUID è la ragione per cui, accanto all'ULID, la sua adozione cresce così rapidamente.