3 ms·
Scaling up means paying for oracle or sql server and having a simpler development model because you have a single db instance. Scaling out means going for nosql
by dmpk2k 13y ago
Scaling up means paying for oracle or sql server and having a simpler development model because you have a single db instance. Scaling out means going for nosql and taking some of the reliability and synchronization work into your codebase.
Ignoring some of the specific details and focusing on the underlying point here:
Having had to work with both ACID and BASE systems extensively, the above point strikes a chord with me. Those of you who haven't dealt with both in anger, take heed of it.
BASE is a lot of code and reasoning to work with properly, and you're sacrificing the many knobs, tools, and easy ad-hoc queries (read: simpler debugging) that the common ACID systems have to get it. Common ACID systems are well understood, so there are many fewer surprises in wait. Furthermore, those systems are mature and have walked the inescapable trail of tears to get there; data is the lifeblood of most businesses, so it's not a place to take risks.
I'd rather work with ACID. BASE is for when you really need it (and when you really need it, you'll know).
- jacques_chester 13y agoDistributed systems are hard, including for database vendors. So when the database "doesn't scale", the database gets blamed. It's a bit like blaming Boeing for gravity, then swearing only to use fleets of microlights to relocate your shipping containers.