Exemplo de UUID v7
UUID v7: — Temos que olhar para isso através das lentes do RFC 9562.
Este ID específico codifica um momento preciso: UTC.
Layout de caracteres
| Segmento |
Valor Hex |
Descrição |
Detalhes técnicos |
| Timestamp |
|
Unix Epoch (ms) |
Os primeiros 48 bits. Esta é a parte 'ordenável'. |
| Versão |
|
Versão do UUID |
Fixado em 7. |
| Entropia A |
|
Aleatório/Sub-ms |
12 bits de dados aleatórios. |
| Variante |
|
Variante RFC |
Normalmente 8, 9, a ou b. |
| Entropia B |
|
Preenchimento aleatório |
62 bits de aleatoriedade segura. |
O que é UUID v7?
O UUID v7 é um identificador de próxima geração definido no RFC 9562. Ao contrário do UUID v4 aleatório, ele incorpora um timestamp Unix de 48 bits no início. Isso o torna ordenável por tempo e altamente otimizado para desempenho de banco de dados.
Principais vantagens
- 🚀 Eficiência do banco de dados: O layout ordenado por tempo do UUID v7 pode fornecer uma melhor localidade de índice em comparação com valores UUID v4 totalmente aleatórios, embora o impacto real no desempenho dependa do banco de dados, esquema, carga de trabalho e formato de armazenamento do UUID.
- 📅 Ordenável por tempo: Os valores de UUID v7 podem ser ordenados pelo seu timestamp de criação incorporado, o que pode reduzir a necessidade de um timestamp separado quando tudo o que você precisa é ordenar pelo horário de criação.
- 🛡️ Privacidade segura: Ao contrário do UUID v1, o v7 não vaza o endereço MAC da sua máquina.
- 🌐 Amigável para sistemas distribuídos: Gere IDs em vários servidores sem risco de colisão.
Como usar
- Selecionar quantidade: Escolha quantos UUIDs gerar.
- Gerar: Nosso servidor cria IDs em conformidade com os padrões usando relógios de alta precisão.
- Copiar: Use o botão de um clique para colá-los em seu projeto.
Usos comuns para o UUID v7
-
Chaves primárias de banco de dados:
Identificadores ordenados no tempo podem ser úteis para bancos de dados onde a ordem de inserção importa.
-
Sistemas distribuídos:
O UUID v7 pode ser gerado de forma independente em vários serviços sem a necessidade de um servidor de ID central.
-
IDs de eventos:
O timestamp incorporado torna a ordenação cronológica conveniente.
-
Recursos de API:
O UUID v7 fornece identificadores globalmente exclusivos, mantendo um componente de timestamp.
-
Logs e registros:
A ordenação temporal pode facilitar a inspeção e a ordenação dos identificadores.
UUID v7 vs UUID v4
| Recurso |
UUID v7 |
UUID v4 |
| Aleatoriedade |
Parcialmente aleatório |
Aleatório |
| Timestamp |
Incorporado |
Nenhum |
| Ordenável pela hora de criação |
Sim |
Não |
| RFC |
RFC 9562 |
RFC 9562 |
| Útil para |
IDs de banco de dados/aplicativo |
Identificadores aleatórios |
Perguntas frequentes
Os valores de UUID v4 são distribuídos aleatoriamente, enquanto o UUID v7 incorpora um timestamp e é naturalmente ordenado pelo horário de criação. Isso pode melhorar a localidade do índice para algumas cargas de trabalho de banco de dados.
O UUID v7 contém um timestamp juntamente com bits aleatórios ou baseados em contador dependentes da implementação. Quando gerado usando uma fonte aleatória criptograficamente segura, seu componente aleatório é difícil de prever e pode ser adequado para identificadores públicos.
Não. No ToolGK, os UUIDs gerados não são armazenados como dados persistentes pela ferramenta.
UUID v7 contém um timestamp. Para tokens que devem ser anônimos, use
UUID v4 .
Sim. O UUID v7 é projetado para que seus bits mais significativos contenham um timestamp Unix, permitindo que os valores de UUID v7 sejam ordenados aproximadamente pela hora de criação.