3 ms·
Store just the sequential id, compute the hash on the edge. This keeps your database simple and performant, and pushes complexity and work to the backend serve
by wongarsu 3y ago
Store just the sequential id, compute the hash on the edge.
This keeps your database simple and performant, and pushes complexity and work to the backend servers. This can be nice because developers are typically more at home at that layer, and scaling the backend can be a lot easier than scaling your database. But it also comes with the downsides listed in this thread.
- jstanley 3y agoThat's fine, but when a request comes in referencing only a hash and not an id (because you're not leaking ids to clients), how do you get the id?
- wongarsu 3y agoGood point. Back when we did that we just used a reversible hash function (some would call it encryption). There are some simple algorithms meant for encrypting single integers with a reasonable key.
- iforgotpassword 3y agoI might be misremembering, but didn't YouTube do this in the early days? So yeah, that was what I was thinking of when replying, not a traditional hash function.