Π’ ΠΌΠΈΡ€Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, особСнно Π² Ρ‚Π°ΠΊΠΎΠΉ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠΉ экосистСмС, ΠΊΠ°ΠΊ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅, понятиС ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ стоит Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΌ мСстС. Π‘Π΅Π· возмоТности ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ смогли Π±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, вСрсионный ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ ссылок Π½Π° записи. ИмСнно для этих Ρ†Π΅Π»Π΅ΠΉ Π² ядрС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ срСдС часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ GUID. ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ формируСтся этот ΠΊΠΎΠ΄, критичСски Π²Π°ΠΆΠ½ΠΎ для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ программистов, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠ΅ΠΉ.

МногиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ присваиваСтся случайным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΡ€ΠΈ создании записи, Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ процСсс Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈ строго Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ простых счСтчиков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΡΠ΅Ρ‡ΡŒΡΡ ΠΏΡ€ΠΈ слиянии Π±Π°Π·, Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ отсутствиС ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ Π΄Π°ΠΆΠ΅ Π² распрСдСлСнных систСмах. Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π°Π½Π°Ρ‚ΠΎΠΌΠΈΡŽ этого ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΎΡ‚ΠΊΡƒΠ΄Π° бСрутся эти 16 Π±Π°ΠΉΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хранятся Π² ΠΏΠΎΠ»Π΅ _IDRRef.

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π½Π΅ просто пСрСчислим Ρ„Π°ΠΊΡ‚Ρ‹, Π° Π³Π»ΡƒΠ±ΠΎΠΊΠΎ погрузимся Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ систСмы Π² нСстандартных ситуациях. Π—Π½Π°Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ ΠΊΡƒΡ…Π½ΠΈ 1Π‘ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ошибок ΠΏΡ€ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ высоконагруТСнных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. ΠœΡ‹ рассмотрим Π±ΠΈΡ‚ΠΎΠ²ΡƒΡŽ структуру, влияниС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ оборудования Π½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Π²Π΅Π΅ΠΌ популярныС ΠΌΠΈΡ„Ρ‹ ΠΎ «случайности» Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π² Π‘Π£Π‘Π”

На физичСском ΡƒΡ€ΠΎΠ²Π½Π΅ хранСния Π΄Π°Π½Π½Ρ‹Ρ…, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΈΠ»ΠΈ сСрвСр MS SQL / PostgreSQL, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Ρ€ΠΎΠ²Π½ΠΎ 16 Π±Π°ΠΉΡ‚. Π­Ρ‚ΠΎ фиксированная Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°, которая Π½Π΅ мСняСтся Π² зависимости ΠΎΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ часто отобраТаСтся ΠΊΠ°ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… символов, Π½ΠΎ для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ это Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ стандартный UUID (Universally Unique Identifier) ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρƒ ΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ создаСт иллюзию ΠΏΠΎΠ»Π½ΠΎΠΉ совмСстимости, ΠΎΠ΄Π½Π°ΠΊΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ формирования ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ.

Π’ систСмС 1Π‘ структура GUID Ρ€Π°Π·Π±ΠΈΡ‚Π° Π½Π° логичСскиС Π±Π»ΠΎΠΊΠΈ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… нСсСт свою ΡΠΌΡ‹ΡΠ»ΠΎΠ²ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Π±Π°ΠΉΡ‚Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Ρ…Π΅Ρˆ-сумму ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π° послСдниС Π±Π°ΠΉΡ‚Ρ‹ часто содСрТат ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ для обСспСчСния ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΎΠ΄Π½ΠΎΠΉ сСкунды. Если Π²Ρ‹ посмотритС Π½Π° сырыС Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ _Reference35 (Π³Π΄Π΅ 35 β€” это Ρ‚ΠΈΠΏ ссылки), Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ отсортированы Π½Π΅ Ρ…Π°ΠΎΡ‚ΠΈΡ‡Π½ΠΎ, Π° ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ структуру, Π·Π°Π²ΠΈΡΡΡ‰ΡƒΡŽ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ создания.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ стоит ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Ρ…Ρ€Π°Π½ΠΈΡ‚ эти Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Π‘Π£Π‘Π”. Π’ MS SQL для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΈΠΏ uniqueidentifier, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ для индСксации. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, Π² PostgreSQL это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ uuid ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ массив Π±Π°ΠΉΡ‚ΠΎΠ² bytea, Π² зависимости ΠΎΡ‚ настроСк кластСра. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ прямой Ρ€Π°Π±ΠΎΡ‚Π΅ с SQL (минуя ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ строго ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈΠ½Π°Ρ‡Π΅ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ станут Π±ΠΈΡ‚Ρ‹ΠΌΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΡΠΌΠ°Ρ модификация поля _IDRRef Ρ‡Π΅Ρ€Π΅Π· SQL-запросы Π±Π΅Π· использования ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ цСлостности Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ нСвозмоТности открытия ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Π Π°Π·ΠΌΠ΅Ρ€ Π² 128 Π±ΠΈΡ‚ (16 Π±Π°ΠΉΡ‚) Π²Ρ‹Π±Ρ€Π°Π½ Π½Π΅ случайно. Π­Ρ‚ΠΎ компромисс ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ индСкса Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈ. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΌ объСмС пространства Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π΅Π»ΠΈΠΊΠΎ, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ совпадСния Π΄Π²ΡƒΡ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ², сгСнСрированных ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ, стрСмится ΠΊ Π½ΡƒΠ»ΡŽ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄Π°Ρ… записСй. ИмСнно поэтому 1Π‘ полагаСтся Π½Π° этот Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ для обСспСчСния надСТности ссылок ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ справочниками.

Алгоритм Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ: Ρ€ΠΎΠ»ΡŒ Adler32 ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ

Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π² 1Π‘ β€” это Π½Π΅ просто Π²Ρ‹Π·ΠΎΠ² случайного Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° чисСл. Π­Ρ‚ΠΎ слоТный процСсс, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π² сСбя вычислСниС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… сумм. ΠšΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ здСсь ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Adler32, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Ρ…Π΅Ρˆ-суммы ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎΡ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ быстрСС CRC32 ΠΈ обСспСчиваСт Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΡƒΡŽ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ распрСдСлСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ индСксов Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ часто привязан ΠΊ систСмному Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π±Π΅Ρ€Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с высокой Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ (Π΄ΠΎ миллисСкунд ΠΈΠ»ΠΈ Ρ‚ΠΈΠΊΠΎΠ² процСссора) ΠΈ ΡΠΌΠ΅ΡˆΠΈΠ²Π°Π΅Ρ‚ Π΅Ρ‘ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, созданныС Π² Ρ€Π°Π·Π½ΠΎΠ΅ врСмя, Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π΄Π°ΠΆΠ΅ для ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Однако, Ссли Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ сСрвСрС, Π² ΠΈΠ³Ρ€Ρƒ Π²ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ раздСлСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ счСтчики ΠΈΠ»ΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ адрСса.

ВСхничСскиС Π΄Π΅Ρ‚Π°Π»ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Adler32

Алгоритм вычисляСт Π΄Π²Π΅ 16-Π±ΠΈΡ‚Π½Ρ‹Π΅ суммы, s1 ΠΈ s2. s1 являСтся суммой всСх Π±Π°ΠΉΡ‚ΠΎΠ², Π° s2 β€” суммой всСх ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ s1. Π Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ 32-Π±ΠΈΡ‚Π½ΠΎΠ΅ число формируСтся ΠΊΠ°ΠΊ (s2 << 16) | s1. Π’ 1Π‘ этот Ρ…Π΅Ρˆ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ основа для ΡΡ‚Π°Ρ€ΡˆΠΈΡ… Π±ΠΈΡ‚ GUID.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° создаваСмого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Для элСмСнтов справочников, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ рСгистров ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ Β«Π·Π΅Ρ€Π½Π°Β» (seed) для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ. НапримСр, ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта справочника НомСнклатура, систСма ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡŽ родитСля, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ физичСскоС Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, хотя логичСски это всС Ρ€Π°Π²Π½ΠΎ остаСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ.

ИспользованиС Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ позволяСт Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Β«Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉΒ» Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сцСнариях ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Если Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ (имя, ΠΊΠΎΠ΄, Π΄Π°Ρ‚Ρƒ), Π²Ρ‹ тСорСтичСски ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ воспроизвСсти GUID, Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ написании слоТных ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· сторонних систСм.

ВлияниС оборудования ΠΈ сСтСвого адрСса Π½Π° GUID

Π’ классичСских рСализациях стандарта UUID (вСрсия 1) для обСспСчСния ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² глобальной сСти ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ MAC-адрСс сСтСвой ΠΊΠ°Ρ€Ρ‚Ρ‹. Π’ экосистСмС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ этот ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ своС ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, особСнно Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Когда сСрвСр 1Π‘ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² состав GUID ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ физичСском ΠΈΠ»ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ хостС, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ выполняСтся процСсс.

Π­Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ Π² распрСдСлСнных систСмах. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° Π΄Π²Π° сСрвСра кластСра ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹. Π‘Π΅Π· привязки ΠΊ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΡƒ сСрвСра (Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ MAC-адрСс ΠΈΠ»ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ID ΡƒΠ·Π»Π° кластСра) сущСствовал Π±Ρ‹ риск Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ Π±Π°ΠΉΡ‚. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСрвСр ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… сСти прСдприятия.

  • πŸ–₯️ MAC-адрСс: ЀизичСский адрСс сСтСвой ΠΊΠ°Ρ€Ρ‚Ρ‹, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ устройства, часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ основа для послСдних Π±ΠΈΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°.
  • πŸ†” Process ID: Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ процСсса rphost ΠΈΠ»ΠΈ ragent ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Β«Π·Π΅Ρ€Π½ΠΎΒ» для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ сСрвСра.
  • ⏱️ Π’Π°ΠΉΠΌΡˆΡ‚Π°ΠΌΠΏ: ВысокоточноС врСмя создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… записСй Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Однако Π² соврСмСнных Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… срСдах, Π³Π΄Π΅ MAC-адрСса ΠΌΠΎΠ³ΡƒΡ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ΠΎΠΌ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ свои Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹. Она ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ риски. Π­Ρ‚ΠΎ особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Π³Π΄Π΅ физичСскоС Β«ΠΆΠ΅Π»Π΅Π·ΠΎΒ» абстрагировано ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

πŸ’‘

ΠŸΡ€ΠΈ пСрСносС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСрами с Ρ€Π°Π·Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ ΠΈΠ»ΠΈ сСтСвыми настройками, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Β«Π·Π°ΡˆΠΈΠ²Π°ΡŽΡ‚ΡΡΒ» Π² Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ создания ΠΈ большС Π½Π΅ зависят ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ оборудования.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ с RFC 4122 ΠΈ стандартами UUID

МногиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ вопросом: соотвСтствуСт Π»ΠΈ GUID Π² 1Π‘ ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΌΡƒ стандарту RFC 4122? На ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд, Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ совпадаСт (128 Π±ΠΈΡ‚), ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ отобраТСния (8-4-4-4-12 ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… Ρ†ΠΈΡ„Ρ€) ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½. Однако внутрСнняя структура Π±ΠΈΡ‚ΠΎΠ², ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π°Ρ Π·Π° Π²Π΅Ρ€ΡΠΈΡŽ ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ UUID, Π² 1Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ классичСских Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Windows API ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ… Java.

Π’ стандартС RFC 4122 ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ для указания вСрсии Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, вСрсия 1 β€” Π½Π° основС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, вСрсия 4 β€” случайная). Π’ 1Π‘ эти Π±ΠΈΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ строгой спСцификации, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ собствСнный ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄ свои Π·Π°Π΄Π°Ρ‡ΠΈ хранСния ΠΈ индСксации. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ прямой ΠΎΠ±ΠΌΠ΅Π½ GUID ΠΌΠ΅ΠΆΠ΄Ρƒ 1Π‘ ΠΈ внСшнСй систСмой, ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰Π΅ΠΉ строгого RFC, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ прСобразования ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

Π₯арактСристика Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ UUID (RFC 4122) GUID Π² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅
Π Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ 128 Π±ΠΈΡ‚ (16 Π±Π°ΠΉΡ‚) 128 Π±ΠΈΡ‚ (16 Π±Π°ΠΉΡ‚)
Алгоритм Π‘Ρ‚Ρ€ΠΎΠ³ΠΎ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ вСрсиСй ΠŸΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹ΠΉ (Adler32 + ВрСмя + MAC)
Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Π°Ρ (ΠΏΡ€ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ) Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Π°Ρ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… экосистСмы 1Π‘
Π—Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Зависит ΠΎΡ‚ вСрсии (v1 - Π΄Π°, v4 - Π½Π΅Ρ‚) ВсСгда зависит ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ создания

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π·Π°Π΄Π°Ρ‡ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ это Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ нСсущСствСнно. Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ остаСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΆΠΈΠ·Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… языков программирования для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ парсинга GUID, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΈΠ· Π±Π°Π·Ρ‹ 1Π‘, Ссли эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ТСстко ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ Π±ΠΈΡ‚Ρ‹ вСрсии.

πŸ’‘

Π₯отя Ρ€Π°Π·ΠΌΠ΅Ρ€ GUID Π² 1Π‘ совпадаСт со стандартом UUID, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ Π±ΠΈΡ‚Ρ‹ вСрсии ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ RFC 4122, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ строгой Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ Π½Π° сторонС Π²Π½Π΅ΡˆΠ½ΠΈΡ… систСм.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ формирования Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Ρ€Π΅ΠΆΠΈΠΌΠ΅

Π Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ Π½Π° процСсс Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ². Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅, ΠΊΠΎΠ³Π΄Π° Π±Π°Π·Π° находится Π½Π° локальном дискС ΠΈΠ»ΠΈ сСтСвой ΡˆΠ°Ρ€e, гСнСрация происходит нСпосрСдствСнно Π½Π° клиСнтском Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ мСстС ΠΈΠ»ΠΈ Π½Π° Ρ‚ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Π³Π΄Π΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Ρ„Π°ΠΉΠ» Π±Π°Π·Ρ‹. Π—Π΄Π΅ΡΡŒ риски ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ с Π±Π°Π·ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ»ΠΈ нСсколько ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

Π’ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ ситуация слоТнСС. Запрос Π½Π° созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ Π½Π° сСрвСр 1Π‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ Π±Π΅Ρ€Π΅Ρ‚ Π½Π° сСбя ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° присвоСниС GUID. Π‘Π΅Ρ€Π²Π΅Ρ€ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… всСго кластСра. Π­Ρ‚ΠΎ критичСски Π²Π°ΠΆΠ½ΠΎ для высоконагруТСнных систСм, Π³Π΄Π΅ сотни ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сСрвСра ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Ρ‹Π΄Π°Ρ‡Ρƒ Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ².

БущСствуСт нюанс с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ, Π΅Ρ‰Π΅ Π½Π΅ записанными Π² Π±Π°Π·Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ GUID, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π½Π° постоянныС Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ фиксации Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ записи. Π­Ρ‚ΠΎ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π² памяти, ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ слоТныС связи ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ физичСски появятся Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π‘Π£Π‘Π”. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π»ΠΎΠ³ΠΈΠΊΡƒ программирования, избавляя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΎΡ‚ нСобходимости Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΡΡ‚ΡŒΡŽ сохранСния.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π² ΠΊΠΎΠ΄Π΅, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ сохраняйтС ΠΈΡ… Π²ΠΎ внСшниС систСмы Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ записи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ.
πŸ“Š Π’ ΠΊΠ°ΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅?
Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° локальном ПК
Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° сСтСвом дискС
ΠšΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ (SQL)
ΠžΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвис 1Π‘

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с GUID Π² ΠΊΠΎΠ΄Π΅

Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° 1Π‘ Ρ€Π°Π±ΠΎΡ‚Π° с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· встроСнныС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Основной Ρ‚ΠΈΠΏ β€” Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ GUID ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ конструктор Ρ‚ΠΈΠΏΠ°, ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‡Π΅Ρ€Π΅Π· свойство .ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ (Π½Π΅Ρ‚, ΡˆΡƒΡ‚ΠΊΠ°) ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ‘ΡΡ‹Π»ΠΊΡƒ. На самом Π΄Π΅Π»Π΅, ссылка Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΡƒΠΆΠ΅ содСрТит Π² сСбС этот GUID.

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Π° ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ GUID для использования Π²ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… систСмах ΠΈΠ»ΠΈ для создания ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠΌΠ΅Π½ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ². Для этого Π² языкС 1Π‘ прСдусмотрСна функция Новый Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² строку для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Ρ‡Π΅Ρ€Π΅Π· HTTP-сСрвисы, JSON ΠΈΠ»ΠΈ XML. Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²ΠΎΠ΅ прСдставлСниС ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выглядит ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ€hex-символов, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… дСфисами.

ΠΠΎΠ²Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = Новый Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° = ΠΠΎΠ²Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.ToString;

// Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:"550e8400-e29b-41d4-a716-446655440000"

ΠŸΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников часто трСбуСтся ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ внСшний ΠΊΠ»ΡŽΡ‡ с Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ GUID 1Π‘. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях рСкомСндуСтся ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ Π² справочникС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π’Π½Π΅ΡˆΠ½ΠΈΠΉΠšΠΎΠ΄), Π³Π΄Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈΠ·ΠΎΠ²ΠΎΠΉ систСмы, Π° Π½Π΅ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ _IDRRef. Π­Ρ‚ΠΎ сохраняСт Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π±Π°Π·Ρ‹ ΠΈ позволяСт Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ нСобходимости.

  • πŸ” Поиск ΠΏΠΎ GUID: Поиск ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ являСтся самым быстрым способом обращСния ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.
  • πŸ”„ Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ссылок: Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ссылок Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° фактичСски являСтся сравнСниСм ΠΈΡ… GUID, Ρ‡Ρ‚ΠΎ выполняСтся ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ.
  • πŸ’Ύ Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅: Π’ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚ΠΈΠΏ Π₯ранСниСНастроСк часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ GUID для ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΈ настроСк ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

β˜‘οΈ Аудит Ρ€Π°Π±ΠΎΡ‚Ρ‹ с GUID

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ЧастыС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ

НСсмотря Π½Π° Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ. Одна ΠΈΠ· самых частых β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ GUID Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· SQL, Π½Π°Ρ€ΡƒΡˆΠΈΠ² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π² порядок Π±Π°ΠΉΡ‚, извСстный ΠΊΠ°ΠΊ Endianness). Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΠΎ ссылкС, ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Β«ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Β», хотя запись Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ физичСски сущСствуСт.

Другая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° связана с восстановлСниСм Π±Π°Π· ΠΈΠ· Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹Ρ… ΠΊΠΎΠΏΠΈΠΉ. Если ΠΏΡ€ΠΈ восстановлСнии ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Π‘Π£Π‘Π”, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… uniqueidentifier, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ искаТСниС Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ восстановлСния Π±Π°Π· 1Π‘ Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡˆΡ‚Π°Ρ‚Π½Ρ‹Π΅ срСдства ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (dbms.exe ΠΈΠ»ΠΈ интСрфСйс администрирования), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²ΡƒΡŽ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ слоТных сцСнариСв ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ GUID Π² Π»ΠΎΠ³ ΠΈΠ»ΠΈ Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ. Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Ρ… строк позволяСт быстро ΠΏΠΎΠ½ΡΡ‚ΡŒ, создались Π»ΠΈ Π½ΠΎΠ²Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈΠ»ΠΈ Π±Ρ‹Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅. Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ GUID мСняСтся ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ запускС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ логичСского ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π·Π½Π°Ρ‡ΠΈΡ‚, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ сопоставлСния Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈ вмСсто обновлСния происходит Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ записСй.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Алгоритмы Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ хранСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π² Π½ΠΎΠ²Ρ‹Ρ… вСрсиях. НС ΠΏΠΎΠ»Π°Π³Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ структуры GUID Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π΅.

FAQ: Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ ΠΏΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌ

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ GUID Ρƒ ΡƒΠΆΠ΅ созданного ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² 1Π‘?

НСт, это Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌΠΈ срСдствами. Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ присваиваСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ хранится Π² Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π΄ΠΎ Π΅Π³ΠΎ удалСния. ΠŸΡ€ΡΠΌΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² Π‘Π£Π‘Π” ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ ссылок Π½Π° этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ цСлостности Π±Π°Π·Ρ‹.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ GUID Π² 1Π‘ отличаСтся ΠΎΡ‚ GUID, сгСнСрированного Π².NET ΠΈΠ»ΠΈ Java?

Различия ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ (вСрсия UUID) ΠΈ порядкС Π±Π°ΠΉΡ‚ (Big Endian vs Little Endian). Π₯отя Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΡ…ΠΎΠΆΠΈ, Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ прСдставлСниС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ. 1Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ собствСнный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ для Π‘Π£Π‘Π”.

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ GUID элСмСнта справочника Π² запросС?

Π’ языкС запросов 1Π‘ ΠΏΠΎΠ»Π΅, содСрТащСС ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ссылки, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ доступно ΠΊΠ°ΠΊ Бсылка._IDRRef ΠΈΠ»ΠΈ просто ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ поля Бсылка ΠΊ Ρ‚ΠΈΠΏΡƒ Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Однако Ρ‡Π°Ρ‰Π΅ всСго Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ нСпосрСдствСнно с Ρ‚ΠΈΠΏΠΎΠΌ БправочникБсылка.

ВлияСт Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ использования Π΅Π³ΠΎ GUID?

НСт, GUID Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Π”Π°ΠΆΠ΅ Ссли ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ физичСски ΡƒΠ΄Π°Π»Π΅Π½ ΠΈΠ· Π±Π°Π·Ρ‹, Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ считаСтся «соТТСнным». ΠŸΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ сгСнСрирован ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄.

БСзопасно Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ GUID Π²ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… URL?

Π”Π°, это стандартная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° для построСния REST API. GUID Π½Π΅ содСрТит ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ структурС Π±Π°Π·Ρ‹ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ. Однако стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π½Π°Π½ΠΈΠ΅ GUID ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, Ссли Π½Π° сторонС сСрвСра Π½Π΅ настроСны ΠΏΡ€Π°Π²Π° доступа.