Hacker News new | ask | show | jobs
by harisund1990 806 days ago
It's easier to manage 1 database instead of 1000s
2 comments

It's more expensive to screw up one all-important database than one of a thousand.

Same logic allies to compute boxes, see "pets vs cattle" from 15-20 years ago.

The difference between "pets" and "cattle" are that pets have state and need to be taken care of, you can't recreate them from scratch trivially. Cattle are stateless and can be created and destroyed easily.

The whole point of a database is to contain the state - as a pet - so the rest of your application can be stateless - as cattle.

To really get cattle database systems, you need a self-managing cluster architecture that puts things on autopilot like Neon where you've got >=2 copies of each row and can tolerate losing any single box without unavailability.

This is fair.

But restoring a small DB from a fresh backup, if things go really wrong, is faster, and does not affect other customers.

I completely agree wrt having a hot spare / cluster with transparent failover and management.

SQLite requires near zero management.