DevToolPal
ID

Generator ULID

Buat ULID: ID unik 26 karakter yang dapat diurutkan menurut waktu, dengan keacakan aman, hingga 1000 sekaligus.

Berjalan lokal, tidak pernah diunggah

Opsi

ULID

0 karakter · 0 B

Fungsinya

Alat ini membuat ULID di browser Anda. ULID adalah identifier 128-bit, seperti UUID, tetapi ditulis sebagai 26 karakter dan terurut berdasarkan waktu pembuatannya. Itulah sebabnya ULID cocok untuk primary key database, ID event dan log, nama file, dan apa pun yang ingin Anda tampilkan sesuai urutan pembuatan tanpa kolom timestamp terpisah.

ULID terdiri dari dua bagian:

  • Timestamp (10 karakter pertama): milidetik sejak epoch Unix, 48 bit. Berlaku hingga tahun 10889.
  • Keacakan (16 karakter terakhir): 80 bit dari generator bilangan acak kriptografis milik browser.

ULID memakai alfabet Base32 Crockford 0123456789ABCDEFGHJKMNPQRSTVWXYZ. Alfabet ini tidak memuat I, L, O, dan U sehingga ID mudah dibacakan dan sulit salah ketik, dan tidak berisi karakter yang perlu di-escape di URL.

Cara menggunakan

  1. Pilih berapa banyak ID yang Anda perlukan, dari 1 sampai 1000.
  2. Aktifkan Monoton jika ID harus tetap berurutan meskipun beberapa dibuat dalam milidetik yang sama. Bagian acaknya lalu ditambah satu untuk setiap ID baru.
  3. Aktifkan Huruf kecil jika sistem Anda menyimpan ID dalam huruf kecil. ULID tidak peka huruf besar/kecil, dan bentuk kanoniknya huruf besar.
  4. Salin daftarnya atau unduh sebagai file teks. Tekan buat lagi untuk mendapatkan batch baru.

Contoh

01ARZ3NDEKTSV4RRFFQ69G5FAV

Di sini 01ARZ3NDEK adalah timestamp 1469922850259 (2016-07-30 23:54:10.259 UTC), dan TSV4RRFFQ69G5FAV adalah bagian acaknya. Dua ULID yang dibuat berselang satu detik memiliki beberapa karakter awal yang sama, itulah sebabnya pengurutan string biasa menempatkannya sesuai urutan waktu.

ULID dibandingkan dengan UUID

UUID v4 acak menyebarkan baris baru ke seluruh indeks B-tree, yang memperlambat insert pada tabel besar. ULID sebagian besar terus naik, jadi baris baru masuk di ujung indeks, seperti pada integer auto-increment, sambil tetap unik di berbagai mesin tanpa koordinasi. Konsekuensinya, ULID mengungkap kira-kira kapan ia dibuat. Jika hal itu penting, gunakan UUID v4.

FAQ

› Apa itu ULID?

ULID (Universally Unique Lexicographically Sortable Identifier) adalah ID 128-bit yang ditulis sebagai 26 karakter Crockford Base32. 10 karakter pertama meng-encode timestamp dalam milidetik dan 16 karakter terakhir bersifat acak.

› ULID atau UUID: mana yang sebaiknya saya pakai?

Gunakan ULID saat Anda ingin ID yang terurut berdasarkan waktu pembuatan, misalnya sebagai key database atau ID log. Gunakan UUID v4 saat ID tidak boleh mengungkap kapan dibuat. UUID v7 adalah alternatif standar yang juga berurutan waktu.

› Apa fungsi mode monoton?

ID yang dibuat dalam milidetik yang sama biasanya mendapat bagian acak yang independen, jadi urutannya di dalam milidetik itu acak. Dalam mode monoton, bagian acak justru ditambah satu, sehingga setiap ID dalam satu batch selalu terurut tepat setelah ID sebelumnya.

› Apakah ID dibuat dengan aman?

Ya. Bagian acaknya berasal dari generator bilangan acak kriptografis milik browser, dan tidak ada yang dikirim ke server.