Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Could somebody help me understand the reasoning behind

`timestamp = snowflake_id >> 22`

Thanks :)



IIRC a snowflake ID's first few bits (or characters?) are by definition a unix timestamp.


Ah it gets rid of the non-time related bits. Below is a description of the formatting

* id is composed of: * time - 41 bits (millisecond precision w/ a custom epoch gives us 69 years) * configured machine id - 10 bits - gives us up to 1024 machines * sequence number - 12 bits - rolls over every 4096 per machine (with protection to avoid rollover in the same ms)

thanks :)




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: