UUIDは何ですか?
全UUID:汎用一意識別子、すなわちユニバーサル固有識別子。
UUIDは32桁の16進数字の組、約3.4×10 ^ 38に等しい理論上の実際の発生UUID 16 ^ 32 ^ 2 = 128の合計数、により構成されています。UUIDは、ナノ秒あたり1000000000000を生成する場合には、それはすべてのUUIDを実行するために、100億年かかります。
550e8400-e29b-41d4-a716-446655440000:標準バージョンのような、UUID 32桁の16進数、5つのセクションに分けハイフン、8-4-4-4-12 32の文字のフォームを含みます。
UUID構図
UUIDは、機械生成の数字を指し、同じ空間と時間内のすべてのマシンが一意であるため、それが保証します。通常、プラットフォームは、生成されたAPIを提供します。基準を開発するオープンソフトウェア財団(OSF)に基づいて算出した、イーサネットカードアドレス、ナノ秒の時間、チップのIDコードと可能な番号の数を使用します。
次のコンポーネントのUUID組み合わせ:
- 現在の日付と時刻は、時間に関連し、あなたはUUIDを生成し、その後場合は、数秒間の最初の部分をUUIDとUUID、異なるの最初の部分、残りの部分と同じように生成します。
- クロックシーケンス。
- ネットワークカードは、MACアドレスがカードから得られた場合IEEEグローバルにユニークなマシン識別番号は、カードが他の方法では得られません。
唯一の欠点は、UUIDの文字列を生成した結果が長くなるということです。この上のUUID標準は、最も広く使用されているMicrosoftのGUID(グローバル一意識別子)です。
符号化規則
UUID(汎用一意識別子)グローバル一意識別子は、文字列が主キー16進数で符号化された32ビット数として定義され、それが完全に固有のシステム情報の時間及び空間の両方で定義されています。
UUID標準フォーマット:xxxxxxxx-xxxx-Axxx-Bxxx-xxxxxxxxxxxx
その位置、バージョン番号を表すUUID標準的な実装は、5つのバージョンを持っているので、それだけ1,2,3,4,5になり
、その位置Bのみ8,9、B
5つのバージョンで、その結果、さまざまなニーズを満たすために、開発プロセスのUUID、:
- UUID1:マシンのMACアドレスに基づいてタイムスタンプを生成します。MACアドレスを使用しているので、我々は、世界中の一意性を保証することができます。
- UUID2:唯一のタイムスタンプに基づいて、一般的に使用されていません。
- uuid3:名前空間の文字列とカスタム基礎は、一般的に使用されていません。
- uuid4:のみ、乱数に基づいて、最も一般的に使用されますが、お勧めできません、繰り返しのチャンスを受け付けることができません。
- uuid5:唯一のベースの名前空間は、一般的に使用されていません。
UUID役割
UUIDは、固有の識別情報を有することができ、分散システムのすべての要素を取得することである中央制御を介して識別情報を行うためにエンドを指定しなくても。このように、誰もが他の人と競合しないUUIDを作成することができます。このケースでは、データベース作成の名前を検討する際に質問を繰り返す必要はありません。UUIDは、Microsoft Corporationのグローバル一意識別子(GUID)、およびその他の重要なアプリケーションである、ようにそこのLinuxのext2 / ext3ファイルシステム、LUKS暗号化パーティション、GNOME、KDE、Mac OS Xがあり、かつ、現在最も広く使用されています。
**以降の議論の内容UUID Baiduの百科事典**
作製および使用UUIDでのJava
デフォルトUUID Java生成は、バージョン4を使用しています。
public class GenerateUUID {
public static void main(String[] args) {
UUID uuid = UUID.randomUUID();
String str = uuid.toString();
// 去掉“-”
String s = str.replaceAll("-", "");
System.out.println(str);
System.out.println(s);
}
}
ボリューム生成されたUUIDウェブサイト:http://www.uuid.online/