DevToolPal
TR

ULID Oluşturucu

ULID oluşturun: güvenli rastgelelikle üretilen, 26 karakterlik, zamana göre sıralanabilir benzersiz kimlikler; tek seferde 1000’e kadar.

Yerelde çalışır, asla yüklenmez

Seçenekler

ULID’ler

0 karakter · 0 B

Ne işe yarar

Bu araç tarayıcınızda ULID oluşturur. ULID, UUID gibi 128 bitlik bir tanımlayıcıdır; ancak 26 karakterle yazılır ve oluşturulduğu zamana göre sıralanır. Bu da ULID’leri veritabanı birincil anahtarları, olay ve log ID’leri, dosya adları ve ayrı bir zaman damgası sütunu olmadan oluşturulma sırasına göre listelemek istediğiniz her şey için uygun kılar.

Bir ULID’nin iki kısmı vardır:

  • Zaman damgası (ilk 10 karakter): Unix epoch’undan bu yana geçen milisaniyeler, 48 bit. 10889 yılına kadar yeterlidir.
  • Rastgelelik (son 16 karakter): tarayıcının kriptografik rastgele sayı üretecinden gelen 80 bit.

ULID’ler Crockford’un Base32 alfabesini kullanır: 0123456789ABCDEFGHJKMNPQRSTVWXYZ. I, L, O ve U harflerini dışarıda bırakır; böylece kimlikler yüksek sesle okunması kolay ve yanlış yazılması zordur, ayrıca URL’lerde kaçış gerektiren hiçbir karakter içermez.

Nasıl kullanılır

  1. Kaç kimliğe ihtiyacınız olduğunu 1 ile 1000 arasında seçin.
  2. Aynı milisaniyede birden fazla kimlik oluşturulduğunda bile sıralarını korumaları gerekiyorsa Monoton seçeneğini açın. Bu durumda rastgele kısım her yeni kimlik için bir artırılır.
  3. Sisteminiz kimlikleri küçük harfle saklıyorsa Küçük harf seçeneğini açın. ULID’ler büyük/küçük harfe duyarsızdır ve standart biçim büyük harftir.
  4. Listeyi kopyalayın veya metin dosyası olarak indirin. Yeni bir grup için tekrar oluştur düğmesine basın.

Örnek

01ARZ3NDEKTSV4RRFFQ69G5FAV

Burada 01ARZ3NDEK, 1469922850259 zaman damgasıdır (2016-07-30 23:54:10.259 UTC); TSV4RRFFQ69G5FAV ise rastgele kısımdır. Bir saniye arayla oluşturulan iki ULID ilk birkaç karakterini paylaşır; basit bir metin sıralamasının onları zaman sırasına koymasının nedeni budur.

ULID ile UUID karşılaştırması

Rastgele bir UUID v4, yeni satırları bir B-tree indeksinin her yerine dağıtır; bu da büyük tablolarda eklemeleri yavaşlatır. ULID’ler çoğunlukla artan değerlerdir; bu yüzden yeni satırlar, auto-increment bir tam sayıda olduğu gibi indeksin sonuna yerleşir ve yine de koordinasyon olmadan makineler arasında benzersiz kalır. Bunun bedeli, bir ULID’nin yaklaşık olarak ne zaman oluşturulduğunu açığa vurmasıdır. Bu önemliyse UUID v4 kullanın.

SSS

› ULID nedir?

ULID (Universally Unique Lexicographically Sortable Identifier), 26 Crockford Base32 karakteriyle yazılan 128 bitlik bir kimliktir. İlk 10 karakter milisaniye cinsinden bir zaman damgasını kodlar, son 16 karakter ise rastgeledir.

› ULID mi UUID mi: hangisini kullanmalıyım?

Örneğin veritabanı anahtarları veya log ID’leri gibi oluşturulma zamanına göre sıralanan kimlikler istediğinizde ULID kullanın. Kimliğin ne zaman oluşturulduğunu açığa vurmaması gerektiğinde UUID v4 kullanın. UUID v7 de zamana göre sıralı, standart bir alternatiftir.

› Monoton mod ne işe yarar?

Aynı milisaniyede oluşturulan kimlikler normalde bağımsız rastgele kısımlar alır; bu yüzden o milisaniye içindeki sıraları rastgeledir. Monoton modda ise rastgele kısım bir artırılır; böylece gruptaki her kimlik bir öncekinden kesinlikle sonra sıralanır.

› Kimlikler güvenli şekilde mi oluşturuluyor?

Evet. Rastgele kısım tarayıcının kriptografik rastgele sayı üretecinden gelir ve bir sunucuya hiçbir şey gönderilmez.