Web ToolBox

ULIDジェネレーター

タイムスタンプ付きでソート可能なULIDを生成

設定

生成

結果

読み取り専用

ULIDジェネレーターとは?

UUIDより短く読みやすい一意なIDが必要、時系列順にソート可能な識別子を作りたい――そんな時に役立つツールです。ULID(Universally Unique Lexicographically Sortable Identifier)は、タイムスタンプとランダム性を組み合わせた26文字の一意な識別子を生成します。

  • UUIDと互換性のある128ビット形式
  • 辞書順でソート可能(タイムスタンプベース)
  • 26文字でURLセーフ(UUIDの36文字より短い)
  • デフォルト、タイムシード、単調増加の3つの生成方法に対応

データベースの主キー、ログの追跡、分散システムでの識別子など、UUIDの代替としてさまざまな場面で活用できます。

使い方

生成方法を選択し、必要に応じてシードタイムを入力してから、「ULID生成」ボタンをクリックしてください。生成されたULIDが結果エリアに表示されます。

生成数を指定すれば、複数のULIDを一度に作成できます(1〜100個)。

ULIDの特徴

UUIDとの違い

  • 短い: 26文字(UUIDは36文字)
  • ソート可能: タイムスタンプベースで時系列順に並べられる
  • URLセーフ: 特殊文字を含まない
  • 読みやすい: Base32エンコーディングで可読性が高い
  • 大文字小文字を区別しない: 入力エラーに強い

構造

ULIDは48ビットのタイムスタンプ(ミリ秒)と80ビットのランダムビットで構成されています。

01ARZ3NDEKTSV4RRFFQ69G5FAV
|------------|------------|
  Timestamp      Random
  (10 chars)    (16 chars)

生成方法

デフォルト

タイムスタンプとランダムビットを組み合わせて生成します。最も一般的な使い方です。

タイムシード

指定したシードタイムを使って生成します。同じシードタイムで生成すると、タイムスタンプ部分(先頭10文字)は同じになりますが、ランダム部分は異なるため、異なるULIDが生成されます。

単調増加

同じミリ秒内で生成されるULIDを、最下位ビットを1ずつ増やして生成します。厳密な順序付けが必要な場合に使用します。

ULIDのメリット

時系列でソート可能

タイムスタンプベースのため、生成順にソートできます。ログやイベントの時系列管理に最適です。

データベースに優しい

順序性があるため、UUIDv4よりもデータベースインデックスの効率が良くなります。

短くて読みやすい

26文字でURLセーフのため、URLやファイル名としても使いやすく、人間にも読みやすい形式です。

詳細は ULID仕様 をご覧ください。