Uniq.UUID.uuid6
You're seeing just the function
uuid6
, go back to Uniq.UUID module for more information.
Specs
Generates a UUID using the proposed version 6 scheme, found here. This is a draft extension of RFC 4122, but has not yet been formally accepted.
Version 6 provides the following benefits over versions 1 and 4:
- Like version 1, it is time-based, but unlike version 1, it is naturally sortable by time in its raw binary encoded form
- Like version 4, it provides better guarantees of uniqueness and privacy, by basing itself on random or pseudo-random data, rather than MAC addresses and other potentially sensitive information.
- Unlike version 4, which tends to interact poorly with database indices due to being derived entirely from random or psuedo-random data; version 6 ensures that the most significant bits of the binary encoded form are a 1:1 match with the most significant bits of the timestamp on which it was derived. This guarantees that version 6 UUIDs are naturally sortable in the order in which they were generated (with some randomness among those which are generated at the same time).
There have been a number of similar proposals that address the same set of flaws. For example:
Systems that do not involve legacy UUIDv1 SHOULD consider using UUIDv7 instead.