Tagabuo ng UUID

Gumawa ng universally unique identifier (UUID) gamit ang timestamp-based na algorithm para maiwasan ang mga duplicate.

Mga keyboard shortcut: R para gumawa muli ng UUID o C para kopyahin

Paano Gumagana ang UUID

UUID v1 (Batay sa timestamp): Gumagamit ng kasalukuyang timestamp (100-nanosecond interval mula October 15, 1582) na sinamahan ng MAC address o random node identifier. Tinitiyak nito ang uniqueness sa iba't ibang machine at pinipigilan ang mga duplicate kahit na sabay-sabay na ginawa.

UUID v4 (Random): Gumagamit ng cryptographically strong random number. Bagama't theoretically posible ang mga duplicate, ang probability ay napakababa (1 sa 2^122) na negligible ito para sa praktikal na gamit.

UUID v7 (Modernong Timestamp): Ang pinakabagong UUID version na pinagsasama ang Unix timestamp (48 bits) sa random data (74 bits). Nagbibigay ito ng time-sortable na benepisyo ng v1 habang pinapanatili ang privacy ng v4, kaya ideal para sa database primary key.

Format: Ang UUID ay 128-bit na halaga na ipinapakita bilang 32 hexadecimal digit sa format na: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Mga Karaniwang Use Cases

Ang UUIDs (kilala rin bilang GUIDs) ay nagbibigay sa inyo ng practically unlimited pool ng unique identifiers nang hindi nag-coordinate sa isang central authority. Ilang lugar kung saan sila karaniwang ginagamit:

Mga primary key ng database

Ang UUIDs ay nagpapahintulot sa maraming services o shards na mag-generate ng keys nang independent na walang collisions. Ang UUID v7 ay lalong pinapaboran dahil ang nangungunang timestamp nito ay nagpapanatili ng inserts na locality-friendly at compact ang indexes.

Mga distributed system

Kapag ang events ay ginagawa ng maraming nodes, ang UUID sa bawat event ay umiiwas sa bottleneck ng centralised sequence at pinapanatili ang logs na traceable sa buong service boundaries.

Mga identifier na nakaharap sa publiko

Ang UUID v4 sa URL ay hindi nagpapakita kung ilan ang mga record o nag-eexpose ng enumeration attacks tulad ng ginagawa ng incrementing integer.

Mga idempotency key

Ang mga client ay nag-generate ng UUID sa bawat request para makilala ng server ang retries at maiwasan ang pag-process ng parehong action nang dalawang beses.

Aling Version ang Dapat Mong Gamitin?

  • Gumamit ng v4 kung gusto mo ng simple randomness na walang karagdagang properties - ito ang pinakaligtas na default para sa karamihan ng applications.
  • Gumamit ng v7 kung ang identifier ay magiging database primary key o naka-store sa anumang index kung saan mahalaga ang insertion order. Ang embedded timestamp ay nagdudulot ng pag-cluster ng rows at nagpapahusay nang malaki sa write performance sa scale.
  • Gumamit ng v1 lamang kapag partikular na kailangan mong i-derive ang identifier mula sa timestamp at node identifier. Sa modernong applications, ang v7 ay mas mahusay na pagpipilian para sa parehong use case nang hindi naglalabas ng MAC address.

Mga Madalas Itanong

Ano ang UUID?

Ang UUID (universally unique identifier) ay isang 128-bit na value, karaniwang nakasulat bilang 32 hexadecimal digits sa form na xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Ang iba't ibang versions ay gumagawa ng value gamit ang iba't ibang strategies (random, timestamp, o pareho).

Ano ang pagkakaiba ng UUID at GUID?

Pareho lang sila. Ang GUID (globally unique identifier) ay ang pangalan na ginagamit sa Microsoft ecosystem; ang UUID ay ang pangalan na ginagamit sa RFC 4122 at sa lahat ng iba pang lugar. Magkapareho ang format at uniqueness guarantees.

Garantisado bang unique ang UUIDs?

Hindi mathematically garantisado - ngunit ang collision probability para sa UUID v4 ay humigit-kumulang 1 sa 2^122, na napakababa pa kaysa threshold para sa anumang practical application. Para sa UUID v1 at v7, ang timestamp at node/random bits ay pumipigil sa collisions sa praktis.

Dapat ko bang gamitin ang UUID v4 o UUID v7 para sa database primary keys?

Ang UUID v7 ay karaniwang mas mabuti para sa primary keys. Dahil ang nangungunang bits nito ay Unix timestamp, ang mga bagong row ay naki-insert nang malapit sa isa't isa sa disk, na nagpapanatili ng compact indexes at mabilis na writes. Gamitin ang v4 lamang kapag talagang hindi dapat mahinuha ang insertion order.

Kailangan ko ba ng UUID v1 generator?

Bihira. Ang UUID v1 ay may kasamang MAC address ng generating machine (o random substitute), na pwedeng mag-leak ng information. Ang UUID v7 ay nag-aalok ng parehong time-sortable property nang walang ganoong problema at halos palaging mas magandang pagpipilian ngayon.

Libre bang gamitin ang UUID generator na ito?

Oo. Lahat ng generation ay nangyayari sa iyong browser, walang rate limit, at walang kailangang account. Pwede kang mag-generate ng individual na UUIDs dito o mag-switch sa bulk generator para sa hanggang 500 sa isang beses.

Halos hindi kami gumagamit ng cookies

Gumagamit lang kami ng mga cookies na lubos na kinakailangan na nagpapahusay sa seguridad ng website at nagpapabuti sa iyong karanasan bilang user. Hindi namin sinusubaybayan ang iyong pag-uugali o aktibidad.