Coding Horror: Scaling Up vs. Scaling Out: Hidden Costs: Great post from Jeff Atwood comparing how much it costs to run your site on one massive server (scaling UP), against multiple smaller servers (scaling OUT).
At any rate, let’s assume $100,000 is a reasonable ballpark for the monster server Markus purchased. It is the very definition of scaling up — a seriously big iron single server.
But what if you scaled out, instead — Hadoop or MapReduce style, across lots and lots of inexpensive servers?
His numbers are interesting. I tended to think that scaling out would be cheaper, but it’s not when you throw in software licensing and power consumption. In those two areas, the single, monster server wins by a mile.
The other thing that I don’t see Atwood discuss is getting a bunch of low-level servers to all play together nicely. He gives the example that he could buy 83 smaller servers for the cost of one monster. But now you have 83 servers to manage, instead of just one. Of course, you have a crapload of fault tolerance now, so is this better?