ПредишенСледващото

Какво е GUID или уникалния идентификатор на обекта?
GUID (глобално уникален идентификатор) - статичен уникален 128-битов идентификатор. Основната му функция - уникалност, която ви позволява да създавате мащабируеми услуги и приложения, без страх от конфликти, причинени от съвпадението на идентификатори. Въпреки, че всеки индивид е уникален GUID не е гарантирано, общият брой на уникални ключове е толкова голям, (2128 или 3.4028? 1038), вероятността, че двете съответни ключове са независимо генерирани в света, е изключително малка.
GUID има четири части, разделени от тире и съдържащ общо 32 символи, които са шестнадесетично представяне на 16 байта (128 бита). Т.е. два знака в GUID (октет) - един байт в шестнадесетичен. Пример GUID: b0d4ce5d-2757-4699-948c-cfa72ba94f86
[1]

Защо да използваме GUID, а не просто автоматично увеличение (идентификационен)?
За да използвате Гуиди има 2 причини:
- искате да база данни или някакъв друг сървър (клъстер) не са имали централизирано управление на ключове поколение
- да се отърве от проблема за създаване на един и същ идентификатор към различни производствени сървъри
Тези проблеми възникват обикновено в разпределена среда за изпълнение, и се позиционира като съвкупност от сървъри, разпределени и за предпочитане да се избегне напълно единен център за издаване на уникалните ключовете.
Ако системата ви не разполага с тези изисквания, вие не се нуждаете от UUID.
[1] [2]

Каква е разликата между UUID и GUID?
UUID е термин от стандартния rfc4122, който ще публикува на Световната организация по стандартизация eitf.
Грубо GUID е това, което се е случило на практика за Microsoft. Теорията се различава от практиката, както и XML с HTML.
[1] [2]

Това, което е GUID?
Това зависи от вида:
- Random: Просто използвайте генератор на случайни числа на системата за създаване на номер 128-битово.
- Срочен: Създаване на GUID въз основа на текущото време.
- Хардуерно базирано: Направете GUID с определени части на базата на хардуерните характеристики, като например MAC адреса на мрежовата карта.
- Content-базирани (MD5 или SHA-1 хеш на данни): Създаване на GUID на базата на хеш на съдържанието на файла. Файлове с едно и също съдържание ще получат една и съща GUID.
[1]

Как да определите версията на GUID?
Guida версия е определено в високо байт 7 октета.
b0: d4: вд: 5d-27: 57-4 6: 99-94: 8в-CF: а7: 2b: A9: 4f: 86
[1]

Защо не мога да си поръчате от връзката, ако той съдържа датата на създаването?
Както вече беше описано, GUID първоначално е бил въведен за разпределителната система, в която проблемите на уникалните идентификатори на решен цялостно отхвърляне на autoincrement в полза на случайни числа и специални техники. GUIDy случаен и не-повторяемост, по дефиниция, и това е неговото предимство и недостатък. Например, елементи в предварително определени и произволни идентификатори използвани Случайни GUIDs (версия 4). В "напечатани", както въз основа на време GUIDs (версия 1).

Те използват различни стандарти?
Да, но когато базата данни на индекс за работа с произволни стойности на ключа (вж. B-Tree Включване) проблеми.
[1] [2]

Това е само за справка може да бъде създаден от Random GUID?
Само предварително определени елементи и ръчно създаден от Гуидо.

И все пак?
Случайни UUIDs предизвикат разграждане на операциите по поставяне. Такъв индекс Гуидо е слабо струпани, търсенето дърво възможно най-широко. За да преодолеят този недостатък е въведен от COMB GUID - Комбиниран GUID за комбинирането на дата и час. Ето защо, когато се използват въз основа на време GUIDs за първични ключове, те са по-групирана, но не и последователни. "Генериращи механизъм връзки осигурява само тяхната уникалност. Увеличаването последователност когато тяхното поколение не е предвидено." (С) Bg
[1]

Но Гуидо има същата последователност? Нещо има около MomentVremeni?
Да, колкото можете? Не Гуидо в последователност! Кой първи искания - да се издават и басейн. И като свършат си сесия - това зависи от него. Прочетете повече за експеримента MomentomVremeni.
//1c.ruboard.ru/public/84177/

Защо е "назад-напред" време на движение?
"Това се случи";)
Например, тъй като GUID се появи много преди да стигна до ръцете на IETF и бази данни.
Или защото платформата е написан на C, а не в Java, но както знаем от asemblera x86 архитектура е малко къс байт ред.
Или както казва Уикипедия, използван 2 варианта: за п Прехвърляне на мрежата "на тел" "мрежа" (голям къс) байт ред и да държат "родната" (малко-къс) байт ред.
Във всеки случай, аз не знам как е било, и можем само да гадаем.
[1] [2] [3] [4]

Защо не се използва по време на GUID?
На първо място, РЪКОВОДСТВО може да е случайно, и няма причина по това време.
На второ място, на басейна на Guida, издаден на 32 парчета за всяка сесия.
На трето място, на случаен принцип GUID в своята стандартна и докато това е само начин да се групират основните ключове за да се намали ширината на B-дървото и да ускори вмъквания на струпани индекс!
[1] [2] [3]

Защо да използваме един "обърнат" на UUID в рамките на 1 сек формат?
<Объект не найден> (26: 80f408002771598b11e7a3f0a3a64c3b)
Не знам. Знам само, че първата цифра съответства на името на таблицата в SQL: Reference26 -> VidyNomenklatury

Готови решения за 1С

[1]

7 минути от средата 1 година, част от хай да се представляват сами.

Версия - горните 4 бита в седмия октет съдържат тип Guida.
0x0001 1 версия времево
0x0010 2 версия DCE сигурност (POSIX идентификаторите)
3 0x0011 име-базирана версия (MD5 хеширане)
0x0100 4 случайно генерирани версия
5 0x0101 име-базирана версия (SHA-1 хеширане)


Часовник Последователност - използва се за да се избегнат дублиращи се, когато часовника се движи напред или да се променя възел ID. Ако предишната стойност на брояча е добре известно - той се увеличава с, в противен случай се приема на случайни числа.

Примери? Аз ги нося със себе си.
Ние "програмисти" nakodil функции:

Вижте връзка конвенционален документ:

Проверете връзките образувани от ръка:

Проверете операция "уникалността" на тезгяха:

Надявам се, че сега идеята е да се "организира връзката" Аз изпразни напълно.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!