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
- Dapatkan timestamp Unix saat ini dalam milidetik (48 bit)
- Hasilkan 74 bit data acak yang kuat secara kriptografis
- Atur bit versi ke 0111 (versi 7)
- Atur bit varian ke 10 (standar RFC 4122)
- Susun sebagai 32 digit heksadesimal dengan tanda hubung: format 8-4-4-4-12
Keuntungan & Pertimbangan
Advantages | Considerations |
---|---|
|
|
Struktur UUID v7
Bits | Content |
---|---|
0-47 | Timestamp Unix (milidetik) |
48-51 | Versi (0111 untuk v7) |
52-63 | Data acak |
64-65 | Varian (10 untuk RFC4122) |
66-127 | Data acak |
UUID v7 vs. versi lain
Version | Berdasarkan | Kasus penggunaan | Privacy |
---|---|---|---|
UUID v1 | Waktu + MAC | ID berurutan waktu | ⚠️ Mengungkap MAC |
UUID v3 | Namespace + MD5 | ID Deterministik | ✅ Privat |
UUID v4 | Random | ID acak aman | ✅ Privat |
UUID v5 | Namespace + SHA-1 | ID Deterministik | ✅ Privat |
UUID v6 | Waktu (diurutkan ulang) | ID dapat diurutkan | ⚠️ Mengungkap MAC |
UUID v7 | Waktu + acak | ID 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.