TIL: Versions of UUID and when to use them

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • DistorteD

    Ruby multimedia toolkit with deep Jekyll integration ๐Ÿงช

    > UUID Version 2 (v2) is reserved for security IDs with no known details.

    Only no known details if the only document you're reading is the notoriously poorly-specified RFC. Here you go: https://pubs.opengroup.org/onlinepubs/9696989899/chap5.htm#t...

    There are also โ€œversion 0โ€ UUIDs that you are very unlikely to ever come across but should be noted because they are the source of the reserved bits that allow the other โ€œversionsโ€ to be specified. Read my research about them here in my UUID library: https://github.com/okeeblow/DistorteD/blob/NEW%E2%80%85SENSA...

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • sqids-blocklist

    Words that we do not want to appear in Sqids IDs

    Sqids[1] might fit the bill for you - the IDs it produces are much shorter than UUIDs, however they're not universally unique - they're generated from an integer sequence.

    1. https://sqids.org/

  • sqids-php

    Official PHP port of Sqids. Generate short unique IDs from numbers.

  • nanoid

    A tiny (124 bytes), secure, URL-friendly, unique string ID generator for JavaScript

  • snowflake

    Discontinued Snowflake is a network service for generating unique ID numbers at high scale with some simple guarantees.

    If you're not distributed, use an incrementing integer.

    If you're distributed, look into vector clocks[1] or snowflake[2]

    [1] https://en.wikipedia.org/wiki/Vector_clock

    [2] https://github.com/twitter-archive/snowflake/tree/snowflake-...

  • databend

    ๐——๐—ฎ๐˜๐—ฎ, ๐—”๐—ป๐—ฎ๐—น๐˜†๐˜๐—ถ๐—ฐ๐˜€ & ๐—”๐—œ. Modern alternative to Snowflake. Cost-effective and simple for massive-scale analytics. https://databend.com

    UUID v7's timestamp is a game-changer for Databend. We're using it to quickly locate metadata files on AWS S3 by timestamp, making operations like vacuuming much faster.

    PR: https://github.com/datafuselabs/databend/pull/16049

  • draft-yocto-uuid

    The UUID Standard.

    We are starting work on an informational RFC that will help folks understand those.

    See https://github.com/yocto/draft-yocto-uuid if you want to add to some discussions and/or review text. We are still a bit early into the stages but I hope to have some progress soon.

  • new-uuid-encoding-techniques-ietf-draft

    New UUID Encoding Techniques

    We are working on standardizing an alternate encoding technique for the 128 bit UUID so it can have a shorter text form.

    You can the discussions here: https://github.com/uuid6/new-uuid-encoding-techniques-ietf-d...

  • We are working on standardizing an alternate encoding technique for the 128 bit UUID so it can have a shorter text form.

    You can the discussions here: https://github.com/uuid6/new-uuid-encoding-techniques-ietf-d...

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • You Don't Need UUID

    13 projects | news.ycombinator.com | 11 Sep 2023
  • Analyzing New Unique Identifier Formats (UUIDv6, UUIDv7, and UUIDv8) (2022)

    6 projects | news.ycombinator.com | 23 Jun 2023
  • We Chose NanoIDs for PlanetScaleโ€™s API

    6 projects | news.ycombinator.com | 29 Dec 2022
  • Moving Away from UUIDs

    7 projects | news.ycombinator.com | 21 Nov 2022
  • rs-nanoid: efficient NanoID generation in Rust

    3 projects | /r/rust | 14 Oct 2022

Did you konow that Rust is
the 5th most popular programming language
based on number of metions?