Soluții gata pentru întreprinderea 1c

Ce este un GUID sau un identificator de obiect unic?
GUID (Global Unique Identifier) ​​este un identificator static unic pe 128 biți. Caracteristica principală este unicitatea, care vă permite să creați servicii și aplicații extensibile fără teama de conflicte cauzate de coincidența identificatorilor. Cu toate că fiecare individ este unic GUID nu este garantat, numărul total de chei unice este atât de mare (2128 sau 3.4028? 1038), probabilitatea ca cele două chei de potrivire sunt generate în mod independent, în lume, este extrem de mic.






GUID constă din patru părți separate printr-o linie simbolică și conținând un total de 32 de caractere, reprezentând reprezentare hexazecimală a 16 octeți (128 biți). Ie două caractere din GUID (octet) reprezintă un octet în hexazecimal. GUID de exemplu: b0d4ce5d-2757-4699-948c-cfa72ba94f86
[1]

De ce se utilizează guidul în locul simplei incrementări (indentity)?
Există 2 motive pentru utilizarea ghidurilor:
- Vrem ca baza de date sau un alt server (cluster) să nu aibă o gestionare centralizată a generării de chei
- trebuie să scapi de problema creării aceluiași identificator pe diferite servere de producție
Astfel de probleme apar de obicei într-un mediu distribuit de distribuție, iar clusterul de servere este poziționat ca distribuit și este de dorit să se evite complet un punct unic de emitere de chei unice.
Dacă sistemul dvs. nu are astfel de cerințe, nu aveți nevoie de un UUID.
[1] [2]

Care este diferența dintre uuid și guid?
UUID este un termen din standardul rfc4122, care va fi publicat de către organizația mondială de standardizare eitf.
Aproape vorbind, GUID este ceea ce a făcut Microsoft în practică. Teoria diferă de practică în același mod ca XML cu HTML.
[1] [2]

Care este ghidul?
Definit după tip:
- Aleatoriu: utilizați generatorul de numere aleatoare a sistemului pentru a crea un număr pe 128 de biți.
- Bazat pe timp: creați un GUID în funcție de ora curentă.
- Pe bază de hardware: Creați un GUID cu anumite părți bazate pe caracteristici hardware, cum ar fi adresa MAC a unui card de rețea.
- Conținut (MD5 sau SHA-1 hash de date): Creați un GUID pe baza unui hash a conținutului fișierului. Fișierele cu același conținut vor primi același GUID.
[1]

Cum se determină versiunea GUID?
Versiunea ghidului este definită în octetul mare al celui de-al 7-lea octet.
b0: d4: ce: 5d-27: 57-4 6: 99-94: 8c-cf: a7: 2b: a9: 4f: 86
[1]

De ce nu pot comanda prin referință dacă conține data creării?
După cum sa descris deja, GUID a fost inițial inventat pentru sistemul de distribuție, în care problemele identificatorii unici de respingere completă a rezolvat în favoarea autoincrement numerelor aleatorii și tehnici speciale. GUID-urile sunt aleatorii și irepetabile prin definiție și aceasta este demnitatea și dezavantajul lor. De exemplu, în elemente predefinite și identificatori arbitrari, sunt utilizate GUID-uri aleatoare (Versiunea 4). În cele "tipărite" aceleași GUID-uri bazate pe timp (versiunea 1).







Sunt utilizate standarde diferite?
Da, dar când indexurile bazei de date trebuie să funcționeze cu valori cheie aleatoare (a se vedea B-Tree Insertion), există probleme.
[1] [2]

Asta este, pentru link-uri pot fi create Random GUID?
Numai pentru elementele predefinite și ghidurile create manual.

Și totuși?
UUID-urile aleatoare determină degradarea operațiilor de inserare. În astfel de indicii, indicii sunt foarte clusteri, arborele de căutare este foarte larg. Pentru a ocoli acest neajuns, a fost inventat Ghidul COMB Guid - Combination Guidance pentru combinarea unui timbru. Prin urmare, atunci când utilizați GUID-uri bazate pe timp pentru cheile primare, ele sunt mai grupate, dar nu coerente. "Mecanismul de generare a legăturii oferă doar unicitatea lor. Secvența crescândă în momentul generării lor nu este furnizată." (c) BG
[1]

Dar ghizii au aceeasi secventa? Există ceva despre Momentul timpului?
Câți poți să faci? Nu există secvență în guidi! Cine a fost primul care a cerut o piscină. Și când sesiunea este epuizată, depinde de el. Citiți mai multe despre experiment cu Momentul Timpului.
//1c.ruboard.ru/public/84177/

De ce, din când în când, mergem "înapoi"?
"Așa sa întâmplat";)
De exemplu, deoarece ghizii au apărut cu mult înainte de a ajunge la mâinile ietf și a bazelor de date.
Sau pentru că platforma este scrisă în C, nu în Java, și așa cum știm din asbler, arhitectura x86 are o comandă de octeți mic-endian.
Sau, cum spune Wikipedia, folosit 2 variante: pentru n Transferarea rețelei "on-wire" "rețea" (big-endian) byte ordine, și să dețină "nativ ordinea octet" (little-endian).
În orice caz, nu știu cum a fost și nu puteți decât să ghiciți.
[1] [2] [3] [4]

De ce nu pot folosi timp din GUID?
În primul rând, ghidul poate fi aleatoriu, nu bazat pe timp.
În al doilea rând, ghidurile primesc un grup de 32 de piese pentru fiecare sesiune.
În al treilea rând, aleatoriu GUID în standardul său și în timp ce aceasta este doar o modalitate de a grupa cheile primare, pentru a reduce lățimea B-copac și accelera inserții la index grupate!
[1] [2] [3]

De ce este folosit formatul UUID "inversat" în interiorul lui 1s?
<Объект не найден> (26: 80f408002771598b11e7a3f0a3a64c3b)
Nu știu. Știu doar că prima cifră corespunde numelui tabelului în sql: Reference26 -> TypesNomenclature

Soluții gata pentru întreprinderea 1c

[1]

7 minute, o jumătate de jumătate în 1 an, o parte din hi reprezentați.

Versiunea - cele 4 biți mai vechi din octetul șapte, conțin tipul guid.
0x0001 1 versiune bazată pe timp
0x0010 2 Versiunea DCE Security (POSIX UIDs)
0x0011 3 versiune bazată pe nume (hash MD5)
0x0100 4 versiune generată la întâmplare
0x0101 5 versiune bazată pe nume (SHA-1 hashing)


Secvență ceas - utilizat pentru a evita apariția duplicatelor atunci când ceasul este mutat înapoi sau identificatorul nodului este schimbat. Dacă valoarea anterioară a contorului este cunoscută, crește cu una, altfel se ia numărul aleatoriu.

Exemple? Le am.
Suntem "programatori", vom acumula funcții:

Să verificăm legătura unui document obișnuit:

Să verificăm linkul generat manual:

Să verificăm lucrul contorului "unicitate":

Sper, acum gândul de a "ordona prin referință", am scăpat complet de voi.







Articole similare

Trimiteți-le prietenilor: