Reading some papers on scale-out, I came across this in the SQL Server 2000 resource kit: “Scaling up is the first approach you should consider, … scaling out should be the final consideration.” Other papers mention “in order to best implement a scale-up architecture, it has to be planned in advance.” and “it is easier to add scale-out and partitioning to an application designed with partitioning in mind”. Hmmm…
These statements seemed to be in opposition (at least to me). And then I ran them past Mary (who is back to being part-time DBA, but working from home) and she came up with:
“I’ve yet to see an architect who can max out a database box from the confines of the meeting room during a design meeting.”
Great. The picture of this meeting in my head just cracked me up. “It’s like, that insurance you never know you need until you really need it.”
BTW, SQL Server 2005 has some scale-out features, SQL Server 2000 didn’t have. And allows scaling-out in stages, one service at a time, if you want.