You also definitely shouldn't be using String non-monotonic UUIDs for primary keys in a database, like, literally ever, but what the fuck do I know, I just do databases for a living, I'm not the all-knowing GPT code wizard.
TechTakes
Big brain tech dude got yet another clueless take over at HackerNews etc? Here's the place to vent. Orange site, VC foolishness, all welcome.
This is not debate club. Unless it’s amusing debate.
For actually-good tech, you want our NotAwfulTech community
UUIDs make great primary keys in some applications. If you generated 100 trillion UUID4s, there’s about a 1 in a billion chance of finding a duplicate. Thats usually good enough for my databases.
The issue here was that they used a single UUID instead of generating a new one for each record.
You’re missing the entire point of the post you replied to
I was reading it as an endorsement for autoincrementing int primary keys and a condemnation of uuids in general which is a genuine stance I’ve known people to take. Is that not it?
Everything after this is so pointlessly condescending and confusing. Even if someone knows what monotonic ids are it doesn't automatically mean they're going to have any clue about what that means with regards to index performance. In the spirit of not being an asshole, I'll write it out here based on my research since everyone else just seems interested in putting others down rather than being helpful.
- "Monotonic" implies something that is always increasing (or decreasing). You'll never get a result that's lower than one you've gotten before (or higher if you're dealing with monotonically decreasing stuff).
- Random UUIDs are not monotonic because they're random.
- Even time based UUIDs are not monotonic because of the format. Rather than being store high, medium, low, they're stored low, medium, high. Think of it like storing numbers like "1 20 300" for 321. 322 would be "2 20 300". To make it worse, the end of them is "random" (a MAC address). So, not monotonic at all because MAC addresses can change. (See here for proposed new formats, where they mention this as a problem https://www.ietf.org/archive/id/draft-peabody-dispatch-new-uuid-format-04.html)
- Monotonic primary keys are useful because they're more easily inserted into an index because you're always inserting into one specific part of the index rather.
Read the sidebar. This is literally not the place.
The fuck is a side bar? My app doesn't have that. Be more specific, please.
If your "app" cannot show basic information about the forum to which you are posting, your "app" is bad.