Gineadóir UUID v4

Gineann luachanna UUID v4 ar líne: 122 giotán randamach, cruth caighdeánach UUID agus torthaí réidh le cóipeáil i do bhrabhsálaí.

Formáid
IDanna Ginte
Réidh. Ginfidh luachanna UUID v4 i do bhrabhsálaí.

Conas a thógtar an ID seo

Leagan amach
UUID 128 giotán le leagan 4 agus giotáin leagain RFC, léirithe mar ghrúpaí heics 8-4-4-4-12.
Eantrópacht
122 giotán randamach ó crypto.randomUUID().
Am
Níl aon cheann; ní nochtann IDanna v4 cathain a cruthaíodh iad.
Riosca imbhuailte
Rialaítear imbhualadh ag 122 giotán randamach, atá i bhfad níos faide ná gnáth-mhéideanna do ghnáth-chórais.
Sampla
c9cb37c1-3f70-4097-bed1-f33f09705462

Gintear do chuid IDanna go háitiúil le randamacht láidir brabhsálaí. Ní sheoltar aon rud chuig BroBroGo.

Ceisteanna Coitianta

Cathain ar chóir dom UUID v4 a úsáid?

Úsáid UUID v4 nuair a bhíonn aitheantóirí randamacha teimhneacha uait nach sórtáiltear de réir ama cruthaithe agus nach nochtann faisnéis faoin am.

An féidir liom fleiscíní a bhaint nó an t-aschur a chur i gcás uachtair?

Is féidir. Coinníonn an uirlis glasáilte UUID v4 an painéal roghanna UUID, ionas gur féidir leat fleiscíní a scoránú agus aschur cás uachtair a roghnú.

UUID v4 Gineadóir: Giniúint Aitheantóirí Randamacha 122-Giotán sa Bhrabhsálaí

Gineann an uirlis seo UUID v4 – aitheantóirí randamacha 36-carachtar sa bhformáid chaighdeánach 8-4-4-4-12 heicsidheachúlach. Úsáideann sí 122 giotán d'fhuaimintíocht íon in aghaidh gach UUID; is giotáin leagan/variante seasta iad an 6 ghiotán atá fágtha. Murab ionann agus UUID v7 nó ULID, níl aon fhaisnéis ama nó ordaithe sna luachanna UUID v4 – sórtálann siad go treallach, rud a chuireann isteach go mór ar fheidhmíocht nuair a úsáidtear iad mar eochracha príomhúla i mbunachair shonraí.

Tá rialú iomlán ag an úsáideoir ar an líon UUIDanna a ghintear (1 go 100), ar úsáid ceannlitreacha (tásca A–F in ionad a–f), agus ar chuimsiú fleiscíní (36 carachtar le fleiscíní, 32 gan iad). Athghintear gach UUID go huathoibríoch nuair a athraítear aon rogha. Ní sheoltar aon sonraí go freastalaí – déantar gach giniúint go háitiúil sa bhrabhsálaí ag baint úsáide as cumas láidir randamach an bhrabhsálaí (crypto.randomUUID nó a leithéid).

Struchtúr UUID v4: na 128 Giotán Mínithe

Tá UUID v4, mar atá sainmhínithe i RFC 4122, comhdhéanta de 128 giotán. Tá an struchtúr seo a leanas orthu:

  • 48 giotán don chuid ama (cé nach n-úsáidtear iad le haghaidh ama i ndáiríre i v4 – úsáidtear iad mar chuid den randamacht)
  • 8 giotán don chuid "clog seicheamh" agus leagan (4 ghiotán leagan socraithe go 0100)
  • 48 giotán don chuid "nód" (6 shuíomh)
  • 2 ghiotán don chuid variant (socraithe go 10 i gcónaí)

Go praiticiúil, ciallaíonn sé seo go bhfuil 122 ghiotán randamacha ag gach UUID v4, agus na 6 ghiotán eile (4 leagan + 2 variant) socraithe de réir an chaighdeáin. Is é sin an fáth a bhfuil an oiread sin hintropy ag UUID v4 – 122 ghiotán d'fhuaimintíocht.

Sampla de UUID v4 le fleiscíní: f47ac10b-58cc-4372-a567-0e02b2c3d479 An UUID céanna gan fleiscíní: f47ac10b58cc4372a5670e02b2c3d479

Is fiú a thabhairt faoi deara go bhfuil an ceathrú grúpa (sa chás seo a567) ag tosú le a, atá sa raon 8b (2 ghiotán variant socraithe mar 10), agus go bhfuil an chéad charachtar den tríú grúpa (4 sa chás seo) i gcónaí 4 (leagan v4).

Dóchúlacht Imbhuailte: Cén Fáth a bhfuil 122 Giotán Sábháilte

Tá sé tábhachtach a thuiscint cé chomh fíor-annamh is atá imbhualadh idir dhá UUID v4. Le 122 ghiotán randamacha, tá an dóchúlacht go ndéanfaí dhá UUID a ghiniúint comhionann thar a bheith beag. Is féidir é seo a shamhlú le samplaí nithiúla:

  • 1,000 UUID in aghaidh an tsoicind ar feadh 100 bliain: dóchúlacht imbhuailte thart ar 0.00000000000000000000000000000000000001 (10^−38).
  • 1 billiún UUID in aghaidh an tsoicind ar feadh 1,000 milliún bliain: dóchúlacht imbhuailte thart ar 0.0000000000000001 (10^−15).

Ciallaíonn sé seo gur féidir UUID v4 a úsáid mar aitheantóirí uathúla i gcórais mhórscála gan imní faoi imbhualadh, fiú nuair a ghintear na UUIDanna go neamhspleách ar fhreastalaithe éagsúla gan aon chomhordú. Sin é an fáth a n-úsáidtear iad go minic in iarratais dháilte, API tokens, agus córais ina bhfuil gá le haitheantóirí dothomhasta.

Tionchar ar Innéacsú Bunachar Sonraí: an Mhíbhuntáiste Mhór

Úsáideann UUID v4 122 ghiotán randamacha, rud a chiallaíonn go bhfuil siad treallach ó thaobh sórtála de. Nuair a úsáidtear iad mar eochracha príomhúla i mbunachar sonraí, bíonn tionchar suntasach acu ar fheidhmíocht toisc go ndéanann siad B-crainn a ilroinnt.

Nuair a chuirtear taifead nua isteach le UUID v4 mar eochair phríomha, cuirtear é go randamach i lár an innéacs, seachas ag an deireadh (mar a tharlódh le eochracha méadaitheacha). Bíonn gá ansin le leathanaigh innéacs a roinnt go minic, rud a chruthaíonn:

  1. Ionchuir níos moille: caithfear an B-crann a athchothromú níos minice
  2. Úsáid spáis níos mó: bíonn leathanaigh innéacs leathfholamh mar gheall ar ilroinnt
  3. Leithead bandaleithead níos airde: éilíonn cothabháil innéacs níos mó acmhainní

I gcuid mhór bunachar sonraí coibhneasta (MySQL InnoDB, PostgreSQL, SQL Server), is é an t-innéacs príomha (innéacs cnuasaithe) an eochair a úsáidtear go fisiciúil chun na sonraí a eagrú. Nuair a bhíonn an eochair randamach, déantar na sonraí a ilroinnt go fisiciúil, rud a mhoillíonn rochtain gach taifead.

Ar an láimh eile, úsáideann UUID v7 na chéad 48 ghiotán le haghaidh stampa ama, rud a fhágann go bhfuil siad sórtáilte go hama. Cé go dtugann siad roinnt sochair ó thaobh sórtála de, tá níos lú fuaimintíochta acu (74 ghiotán randamacha in ionad 122), agus tá siad níos so-ghabhálaí d'fhadhbanna slándála.

Cásanna Úsáide: Cé a Bhaineann Leas as UUID v4

Forbróirí feidhmchlár a theastaíonn uathu aitheantóirí uathúla a ghiniúint go tapa le haghaidh oibiachtaí, seisiún, nó imeachtaí. I gcórais mhóra ina mbíonn na mílte oibiacht á gcruthú gach nóiméad, is féidir UUID v4 a ghiniúint gan fadhbanna imbhualaithe. Is féidir suas le 100 UUID v4 a ghiniúint ag an am céanna le huirlis ar nós an leathanaigh seo, rud atá úsáideach le haghaidh tástála nó cruthú luachanna ar scála mór.

Innealtóirí slándála a theastaíonn uathu aitheantóirí dothomhasta le haghaidh comharthaí API, IDanna iarratais, nó aon chás ina mbeadh sé contúirteach dá ndéanfaí sraithuimhreacha a thomhas. Ós rud é go bhfuil 122 ghiotán randamach ag gach UUID v4, tá sé an-deacair iad a thomhas. Níl aon phatrún ama ann, mar sin ní féidir le hionsaitheoir a fháil amach cathain a cruthaíodh an UUID.

Dearthóirí bunachar sonraí a thuigeann na míbhuntáistí a bhaineann le UUID v4 ach a theastaíonn uathu aitheantóirí uathúla i gcórais dháilte gan aon chomhordú láir. Tá sé seo fíor-thábhachtach i gcórais ina ndéantar taifid a chruthú go neamhspleách ar fhreastalaithe éagsúla, agus ina gcaithfidh an bhunfhadhb "cén freastalaí a chruthaigh an taifead seo?" a sheachaint.

Tástálaithe agus gineadóirí sonraí a theastaíonn uathu bunachair shamplacha a líonadh le luachanna eochracha réadúla. Le huirlis ar nós an leathanaigh seo, is féidir suas le 100 UUID a ghiniúint ag an am céanna, a chóipeáil go léir le cliceáil amháin, agus iad a úsáid i scripteanna nó i mbunachair tástála.

Roghanna Formáidithe: Ceannlitreacha agus Fleiscíní

Ceannlitreacha (Uppercase): Má chuirtear an rogha seo ar siúl, taispeántar na litreacha heicsidheachúla (a–f) mar A–F. Cé go bhfuil an UUID mar an gcéanna ó thaobh na huimhreach de, bíonn tionchar aige seo ar chomhoiriúnacht idirchórais. Glactar go coitianta le UUID le ceannlitreacha, ach níl sé chomh caighdeánach agus a bheadh ceannlitreacha beaga. Moltar ceannlitreacha beaga a úsáid mura bhfuil cúis ar leith ann le ceannlitreacha a úsáid (mar shampla, le comhéadan atá ag súil le ceannlitreacha).

Fleiscíní (Hyphens): Is í an fhormáid chaighdeánach ná 8-4-4-4-12 le fleiscíní. Má bhaintear na fleiscíní, faigheann tú UUID 32-carachtar (gan ach carachtair heicsidheachúla). Tá sé seo úsáideach nuair is gá an UUID a úsáid in URLanna, in ainmneacha comhad, nó in aon chás ina bhfuil fleiscíní toirmiscthe nó nach dteastaíonn.

Tá sé tábhachtach a thabhairt faoi deara nach ndéanann na roghanna seo difear do na 122 ghiotán randamacha. Ní athraíonn siad ach taispeáint na n-uimhreacha. Is é an UUID bunúsach mar an gcéanna.

FAQ

Cén difríocht atá idir UUID v4 agus UUID v7? Úsáideann UUID v7 stampa ama (48 ghiotán) mar chuid den aitheantóir, rud a fhágann go bhfuil siad sórtáilte go hama. Tá níos lú fuaimintíochta ag v7 (74 ghiotán randamacha) ná mar atá ag v4 (122 ghiotán). Tá v4 níos fearr le haghaidh slándála agus fíor-randamachta, agus tá v7 níos fearr le haghaidh innéacsú bunachar sonraí.

An bhfuil aon teorainn ar líon na UUID v4 is féidir a ghiniúint? Gineann an uirlis seo idir 1 agus 100 UUID in aghaidh an bhabhta. Níl aon teorainn teoiriciúil ar líon na UUID is féidir a ghiniúint go hiomlán, ach tá an comhaireamh teoranta go praiticiúil le 100 an uair seo.

Cén chaoi a n-úsáideann an uirlis randamacht an bhrabhsálaí? Úsáideann sí crypto.randomUUID() nó API randamach láidir eile a sholáthraíonn an brabhsálaí. Tá sé seo níos fearr ná Math.random() toisc go bhfuil sé níos randamach agus níos sábháilte.

An féidir liom UUID a chóipeáil go díreach ón uirlis? Is féidir. Cliceáil ar aon UUID aonair chun é a chóipeáil chuig an ghearrthaisce. Nó, cliceáil an cnaipe "Cóipeáil go léir" chun gach UUID atá ar taispeáint a chóipeáil ag an am céanna.

An bhfuil na UUIDanna a ghintear ar an leathanach seo sábháilte le húsáid i gcórais fhíor? Sea, tá 122 ghiotán randamach iontu, mar a shonraítear i RFC 4122. Tá siad oiriúnach le húsáid i bhfeidhmchláir fhíora, lena n-áirítear comharthaí API, IDanna seisiún, agus aitheantóirí oibiachta. Ní sheoltar aon rud go freastalaí.

Cén fáth a ndéanann UUID v4 B-crainn a ilroinnt? Toisc go bhfuil siad treallach ó thaobh sórtála de, cuirtear taifid nua isteach i lár an innéacs seachas ag an deireadh. Bíonn gá ansin le leathanaigh innéacs a roinnt agus a athchothromú, rud a mhoillíonn ionchuir agus a chruthaíonn ilroinnt fhisiciúil.