Generator Versi 7 UUID (Waktu Unix Epoch)

Hasilkan UUID timestamp Unix dengan presisi milidetik untuk pengurutan berdasarkan waktu

Coba contoh ini:

Apa itu UUID v7?

Versi UUID 7 adalah pengenal 128-bit berurutan waktu (string 36 karakter) yang diusulkan dalam draft spesifikasi UUID baru. Ini terdiri dari:

  • Timestamp Unix: 48 bit waktu Unix dengan presisi milidetik
  • Data acak: 74 bit data acak
  • Bit versi dan varian: 6 bit untuk identifikasi format

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

Cara kerja UUID v7

  1. Dapatkan timestamp Unix saat ini dalam milidetik (48 bit)
  2. Hasilkan 74 bit data acak yang kuat secara kriptografis
  3. Atur bit versi ke 0111 (versi 7)
  4. Atur bit varian ke 10 (standar RFC 4122)
  5. Susun sebagai 32 digit heksadesimal dengan tanda hubung: format 8-4-4-4-12

Keuntungan & Pertimbangan

AdvantagesConsiderations
  • Dapat diurutkan secara leksikografis
  • Tidak ada masalah privasi
  • Timestamp Unix tertanam
  • Disederhanakan untuk basis data
  • Status draft spesifikasi
  • Resolusi timestamp terbatas (ms)
  • Dukungan terbatas pada sistem lama
  • Tidak dapat mundur sebelum 1970

Struktur UUID v7

BitsContent
0-47Timestamp Unix (milidetik)
48-51Versi (0111 untuk v7)
52-63Data acak
64-65Varian (10 untuk RFC4122)
66-127Data acak

UUID v7 vs. versi lain

VersionBerdasarkanKasus penggunaanPrivacy
UUID v1Waktu + MACID berurutan waktu⚠️ Mengungkap MAC
UUID v3Namespace + MD5ID Deterministik✅ Privat
UUID v4RandomID acak aman✅ Privat
UUID v5Namespace + SHA-1ID Deterministik✅ Privat
UUID v6Waktu (diurutkan ulang)ID dapat diurutkan⚠️ Mengungkap MAC
UUID v7Waktu + acakID dapat diurutkan✅ Privat

Kasus Penggunaan Umum

  • Kunci utama basis data: Indeks efisien
  • Sistem terdistribusi: Berurutan waktu tanpa koordinasi
  • Aplikasi modern: Pengenal berfokus privasi
  • Microservices: ID lintas layanan yang dapat diurutkan
  • Event sourcing: ID event kronologis
  • Data warehousing: ID analitik berurutan waktu

Pertanyaan yang Sering Diajukan

Apa keuntungan UUID v7 dibanding v1 atau v6?

UUID v7 menggunakan timestamp Unix dalam milidetik dan data acak daripada alamat MAC, menawarkan perlindungan privasi sambil mempertahankan kemampuan pengurutan berdasarkan waktu pembuatan.

Apakah UUID v7 merupakan standar resmi?

UUID v7 saat ini adalah draft spesifikasi dalam dokumen RFC 4122bis yang diusulkan. Belum menjadi standar RFC resmi tetapi sudah diimplementasikan di banyak pustaka UUID.

Bisakah saya mengekstrak waktu pembuatan dari UUID v7?

Ya. Timestamp Unix dalam milidetik dapat diekstrak dari 48 bit pertama dan dikonversi ke datetime standar.

Apakah UUID v7 dapat diurutkan berdasarkan waktu pembuatan?

Ya. UUID v7 dirancang agar dapat diurutkan secara leksikografis, dengan timestamp Unix di bit paling signifikan, memungkinkan perbandingan string langsung untuk mencocokkan urutan kronologis.

Apakah UUID v7 mengungkap informasi sistem?

Tidak. Berbeda dengan v1/v6, UUID v7 tidak menggunakan alamat MAC. Ini menggabungkan timestamp dengan data acak, melindungi privasi sambil mempertahankan kemampuan pengurutan.

Resources