Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: SnowId – A Decentralized, K-Ordered, 128-bit UUID library in C (github.com/beyonddream)
15 points by beyonddream on Nov 3, 2022 | hide | past | favorite | 6 comments
Sharing my project inspired by twitter snowflake UUID generator but that supports:

1) Longer range of id's to be generated.

2) No coordination with other machines in the distributed system.




Possibly a tangent, but what is the "dot notation" described in:

    # hexadecimal representation of 128-bit id's in dot notation
    0:0:1:84:40:9b:ff:a5:2:0:12:ac:42:3:0:0


Good eye! That was a typo. It should read as "colon notation". It is just a visual representation of 128 bits (16 bytes) with each byte separated by colon ":". I have updated the readme with an example. One place where you will see this notation visually is MAC addresses.


Why use this over the new ordered UUID RFC?


UUID RFC use <timestamp, sequence, node id> layout which is different from the layout of snowid scheme which is <timestamp, node id, sequence>. Also UUID RFC timestamp can only use up-to 60 bits whereas snowid has the full 64 bits to spare. They server different use-cases.


Show an example of the generated id.


done.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: