ULID ジェネレーター
並べ替えできる ULID を作り、そこに入っている時刻を読み出し、主キーとして UUID v4 とどう違うかを比べます。
ブラウザ内だけで処理無料で利用
乱数部分を引き直さず1つ繰り上げます。
ULID を読む
ULID と UUID v4
| ULID | UUID v4 | |
|---|---|---|
| 長さ | 26文字 | 36文字 |
| 時刻順に並ぶ | はい | いいえ |
| 乱数のビット数 | 80 | 122 |
| 大文字小文字の区別 | なし | なし |
| 作成時刻が見える | はい | いいえ |
ファイルはサーバーに送信されず、ブラウザ内だけで処理されます。
使い方
登録もインストールも不要、回数制限もなく無料で使えます。
ULID は26文字です。先頭48ビットがミリ秒の時刻、残り80ビットが乱数で、Crockford Base32 で書きます。文字列をそのまま並べ替えると作った順になります。この形式がある理由がそこです。
いちばん差が出るのは主キーです。UUID v4 は新しい行が索引のどこにでも入るため書き込みが散らばります。ULID は末尾近くに付くので索引が詰まったまま保たれます。
文字表から I・L・O・U を外しています。画面から書き写すときも読み上げるときも別の文字に読み違える余地がなく、意図しない語ができることもありません。
同じミリ秒内の順序を入れると、乱数部分を引き直さずに1つ繰り上げます。1ミリ秒に複数作っても作った順が残ります。入れない場合、同じミリ秒の2つは任意の順に並びます。
既存の ULID を下に貼ると時刻を読み出します。先頭10文字が時刻で、戻すのに他のものは要りません。
乱数はブラウザの暗号用乱数生成器から取ります。サーバーに要求もせず、送りもしません。