各 ULID の先頭10文字はミリ秒タイムスタンプを Crockford Base32 で表し、続く16文字はランダム値です。同じミリ秒内に複数生成された場合はランダム部分を増分し、作成順で並べられるようにします。
このページは一度に最大1,000件の ULID を生成でき、紛らわしい文字を避けたアルファベットを使います。ソート可能なテストデータやデータベースキーには便利ですが、本番サービス間で ID を調整する中央レジストリではありません。
このテーマに関するよくある疑問と回答をまとめました。
ULID(Universally Unique Lexicographically Sortable Identifier)は、ミリ秒タイムスタンプとランダム性を組み合わせた一意の識別子で、作成時刻順にソート可能です。
ULID は時間順にソート可能でコンパクトな Crockford Base32 エンコーディングを使用し、UUID v4 は完全ランダムで16進数を使用します。時間順が重要な場合は ULID が理想的です。
データベースの主キーやイベントログなど、時間順が重要な場合は ULID を使用します。既存システムとの互換性が重要な場合は UUID を使用します。
いいえ、ULIDの生成はすべてブラウザ内で行われます。識別子はJavaScriptでローカルに作成され、どこにも送信されません。