UUID Version 7 Generator (Unix Epoch Time)

Lumikha ng Unix timestamp UUIDs na may millisecond precision para sa time-ordered sorting

Subukan ang mga halimbawang ito:

Ano ang UUID v7?

UUID bersyon 7 ay isang time-ordered 128-bit identifier (36-char string) na iminungkahi sa bagong draft ng UUID specification. Binubuo ito ng:

  • Unix timestamp: 48 bits ng millisecond precision Unix time
  • Random data: 74 bits ng random data
  • Bersyon at variant bits: 6 bits para sa format identification

Halimbawa ng format: 017f22e2-79b0-7cc3-98c4-dc0c0c07398f

Paano gumagana ang UUID v7

  1. Kunin ang kasalukuyang Unix timestamp sa milliseconds (48 bits)
  2. Gumawa ng 74 bits ng cryptographically strong random data
  3. Itakda ang version bits sa 0111 (bersyon 7)
  4. Itakda ang variant bits sa 10 (RFC 4122 standard)
  5. I-assemble bilang 32 hex digits na may hyphens: 8-4-4-4-12 na format

Mga Bentahe at Pagsasaalang-alang

AdvantagesConsiderations
  • Lexicographically sortable
  • Walang mga isyu sa privacy
  • Naka-embed na Unix timestamp
  • Pinadali para sa mga database
  • Kalagayan ng draft specification
  • Limitadong resolution ng timestamp (ms)
  • Limitadong suporta sa mga legacy system
  • Hindi maaaring bumalik bago ang 1970

Istruktura ng UUID v7

BitsContent
0-47Unix timestamp (milliseconds)
48-51Bersyon (0111 para sa v7)
52-63Random data
64-65Variant (10 para sa RFC4122)
66-127Random data

UUID v7 kumpara sa ibang mga bersyon

VersionBatay saGamitPrivacy
UUID v1Oras + MACTime-ordered IDs⚠️ Ipinapakita ang MAC
UUID v3Namespace + MD5Deterministic IDs✅ Pribado
UUID v4RandomSecure random IDs✅ Pribado
UUID v5Namespace + SHA-1Deterministic IDs✅ Pribado
UUID v6Oras (reordered)Sortable IDs⚠️ Ipinapakita ang MAC
UUID v7Oras + randomSortable IDs✅ Pribado

Karaniwang Gamit

  • Mga pangunahing susi ng database: Epektibong mga index
  • Distributed systems: Time-ordered nang walang koordinasyon
  • Mga modernong aplikasyon: Mga identifier na nakatuon sa privacy
  • Microservices: Sortable cross-service IDs
  • Event sourcing: Chronological event IDs
  • Data warehousing: Time-ordered analytics IDs

Mga Madalas Itanong

Ano ang bentahe ng UUID v7 kumpara sa v1 o v6?

Gumagamit ang UUID v7 ng Unix timestamp milliseconds at random data sa halip na MAC addresses, na nag-aalok ng proteksyon sa privacy habang pinapanatili ang kakayahang maayos ayon sa oras ng paglikha.

Opisyal na ba ang UUID v7 na standard?

Ang UUID v7 ay kasalukuyang isang draft specification sa iminungkahing dokumento ng RFC 4122bis. Hindi pa ito opisyal na RFC standard ngunit naipapatupad na sa maraming UUID libraries.

Maaari ko bang kunin ang oras ng paglikha mula sa UUID v7?

Oo. Ang Unix timestamp sa milliseconds ay maaaring kunin mula sa unang 48 bits at i-convert sa karaniwang datetime.

Ang mga UUID v7 ba ay maayos ayon sa oras ng paglikha?

Oo. Dinisenyo ang UUID v7 upang maging lexicographically sortable, na may Unix timestamp sa pinaka-makabuluhang bits, na nagpapahintulot ng direktang paghahambing ng string upang tumugma sa kronolohikal na pagkakasunod-sunod.

Ipinapakita ba ng UUID v7 ang anumang impormasyon ng sistema?

Hindi. Hindi tulad ng v1/v6, hindi gumagamit ang UUID v7 ng MAC addresses. Pinagsasama nito ang timestamp sa random data, na pinoprotektahan ang privacy habang pinapanatili ang kakayahang maayos.

Resources