UUID ジェネレーター

UUID とランダム ID を生成

10

ツール説明

UUID ジェネレーターについて

UUID v4 Generator は、request ID、データベース key、テストデータ、相関 ID に使えるランダムな 128-bit ID を生成します。

複数件生成、大文字化、ハイフン除去に対応し、時間順に並べやすい UUID v7 も選べます。

UUID v4 Generator の使い方

  1. ランダム ID には UUID v4、時系列で並べたい場合は UUID v7 を選びます。
  2. テストデータやシードデータが必要なときは、生成前に件数を設定します。
  3. 大文字は旧システムが要求する場合だけ使い、通常は小文字で十分です。
  4. 32 文字のコンパクト形式が必要な場合だけハイフンを外します。

よくある利用場面

  • API リクエストの correlation ID を作り、複数サービスのログをつなげる。
  • データベース sequence に頼らずテストレコード ID を作る。
  • mock JSON、OpenAPI 例、フロントエンド fixture 用の ID を用意する。
  • イベントや監査レコードを作成時刻順に近い形で並べたいとき UUID v7 を使う。

UUID の形式と注意点

標準 UUID はハイフン込みで 36 文字、8-4-4-4-12 の 16 進グループで表示されます。UUID v4 はランダム、UUID v7 は timestamp とランダム値を組み合わせます。

  • UUID v4: 多くのアプリ ID や request ID に向くランダム ID。
  • UUID v7: 時間順に近い ID。挿入順が効く DB index に向きます。
  • ハイフンなし: 同じ 128-bit 値を区切りなしで表します。
  • 大文字小文字: 通常の比較では同じ値として扱えます。

UUID ジェネレーターのよくある質問

UUID v4 は本当に一意ですか?
確率的に一意です。安全な乱数源を使えば、通常のアプリ ID で衝突する可能性は極めて低いです。
UUID v7 はいつ使いますか?
ログ、イベント、DB index など、作成時刻に近い順序で並べたいときに使います。
UUID は大文字と小文字どちらがよいですか?
Web や JSON では小文字が一般的です。大文字は互換性や表示要件がある場合に使います。
ハイフンを削除してもよいですか?
はい、値は同じです。ただし API 契約や保存形式が求める場合以外は標準形式を推奨します。
生成した UUID は送信されますか?
いいえ。生成と整形はブラウザー内で行われ、wetool.site には送信されません。

UUID と auto-increment ID

auto-increment ID は短く読みやすい一方、中央の DB sequence が必要です。UUID は長いですが、分散環境やキュー経由の作成に向いています。

UUID v4 が適した場面

UUID v4 はオフラインでの生成、システム間の統合、連番を見せたくない外部公開 ID に向いていますが、すべての ID の既定解ではありません。

  • クライアント側の一時 ID、分散タスク ID、テストデータ、公開共有リンクにはランダムな UUID が向いています。
  • データベースの主キーでインデックスの局所性が重要なら、UUID v7、ULID、データベースの自動採番 ID も検討します。
  • UUID を認可トークンとして扱わないでください。Guess しにくいことはアクセス制御と同じではありません。

衝突確率と乱数源

UUID v4 は高品質な乱数に依存します。ブラウザーでの生成は Math.random() ではなく Web Crypto 水準の乱数を使うべきです。

  • 標準の v4 UUID は約 122 ビットのランダム性を持ち、通常の利用規模では衝突確率は非常に低いです。
  • 一括生成後の重複確認はコピー&ペーストの誤りやスクリプト再利用の誤りを見つけられます。
  • UUID v4 に時刻情報は含まれません。時刻順の並べ替えや追跡が必要なら created_at を別に保存するか、時刻順の ID を使います。