On Fri, Apr 2, 2021 at 8:57 AM Hemil Ruparel <hemilruparel2002@xxxxxxxxx> wrote:
I used uuid4 for customer ids because i needed to interface with payment providers. Is that wrong? All other places except transaction ids, i have used serial intsOn Fri 2 Apr, 2021, 8:56 AM Rob Sargent, <robjsargent@xxxxxxxxx> wrote:On 4/1/21 8:28 PM, Merlin Moncure wrote:
>
> This is one of the great debates in computer science and it is not
> settled. There are various tradeoffs around using a composite key
> derived from the data (aka natural key) vs generated identifiers. It's
> a complex topic with many facets: performance, organization,
> validation, and correctness are all relevant considerations. I would
> never use UUIDS for keys though.
>
> merlin
>
>
And, pray tell, for what exactly would you use universally unique
identifiers.
ULID perform better than UUID with btree indexes. The first part is based on a timestamp, so if you don't mind exposing this information, they are a better choice. There is an implementation for postgres here: https://github.com/geckoboard/pgulid
Maybe there are others.