ブラウザ内ツール
UUID / ULID生成
UUID v4(完全ランダム)と、UUID v7・ULID(先頭が生成時刻でソート可能)を生成します。crypto.getRandomValues を使い、すべてブラウザ内で生成します。
UUID v4 — 完全ランダム(最も一般的)
UUID v7 — 先頭48bitが時刻
ULID — 時刻+乱数・26文字
v4 は完全ランダムで衝突しにくい反面、生成順の情報を持たないためDBのインデックスでは挿入位置が飛び散り断片化しやすい。v7・ULID は先頭が生成時刻なので文字列順=時刻順にソートでき、主キーにするとB木への追記が末尾に寄って有利。すべてブラウザ内で生成(送信なし)。
主キーに何を選ぶか
- v4はランダム:推測されにくいが、B木インデックスへの挿入位置が飛び散りページ分割・断片化を招く。
- v7・ULIDは時刻先頭:文字列順=生成時刻順。挿入が末尾に寄り、範囲検索やページングにも有利。
- 連番(AUTO_INCREMENT)は最速だが件数が漏れる。分散生成が要るならv7/ULIDが折衷案。