UUIDとGUIDの違いは?
GUIDはMicrosoftの用語で、実質的に同じ128ビット識別子の規格です。
v4 UUIDを即座に生成。一括生成対応
理論的には可能ですが確率は天文学的に低く(約5.3×10^36分の1)、実用上は無視できます。
GUIDはMicrosoftの用語で、実質的に同じ128ビット識別子の規格です。
はい。16進数(0-9、a-f)とハイフンのみで構成されており、URLエンコード不要です。
UUID(Universally Unique Identifier)はソフトウェアでオブジェクトを一意に識別するための128ビットの識別子です。データベースの主キー・セッションID・ファイル名など、ID衝突を避けたい場面で広く活用されています。RESTful APIのリソース識別にも欠かせない存在です。
v4は完全にランダムな数値から生成されるため、最もシンプルで広くサポートされているバージョンです。122ビットのランダム性を持つv4は、毎秒10億個生成し続けても100年間で重複が発生する確率は事実上ゼロです。
v1は現在のタイムスタンプとMACアドレスから生成されソート可能ですが、ネットワーク情報が漏洩します。v4は完全ランダムで汎用的に利用されます。v5はSHA-1ハッシュを用いた決定論的生成、v7はミリ秒精度のタイムスタンプとランダム性を組み合わせデータベースで自然にソート可能です。
UUIDを主キーにすると複数サーバーが中央カウンターなしに同時レコードを作成できます。ただしv4のランダムUUIDはB-treeインデックスを断片化します。v7を使うと挿入が時系列順になりパフォーマンスが改善され、PostgreSQLではuuid型として16バイトで保存するのが効率的です。
UUIDの標準形式は8-4-4-4-12の16進数文字をハイフンで区切ったものです(例:550e8400-e29b-41d4-a716-446655440000)。ハイフンなしの32文字形式も一部のシステムで使用されます。大文字小文字は区別されません。