Chapter 53. Scaling Very Large Databases

In This Chapter

  • Scaling out versus scaling up

  • Table partitioning

  • Indexed views

In years past I've enjoyed gardening. One year I had four rows of corn, a 10-foot-square mountain of fresh peas, and about a dozen other vegetables. The watermelon vines nearly took over the backyard. The process was easy. I spent one Saturday tilling and planting and then a relaxing half an hour a day weeding or harvesting as the crops came in. Voila! We had fresh veggies for supper.

When driving cross-country from North Carolina to Colorado, I drove for hours through the heartland and saw nothing but corn.

The contrast between managing my quarter-acre family garden and the statewide mega-farms of Kansas illustrates scalability perfectly. Each scale of problem needs its own set of solutions.

Moving from a small scale to a large scale can be addressed by scaling out or by scaling up.

Scaling out applies more of the same solution. Scaling out the agriculture analogy would apply more of my manual gardening techniques to the farm by bringing in a thousand helping hands to attempt to plant, weed, and harvest manually.

To compare, scaling up brings more sophistication to the solution. A combine is a farmer's way of scaling up. Moving from a tiller to a tractor is scaling up.

Another point from the farm analogy is to use the right-sized solution for the problem. Bringing in a combine for a family garden just won't work.

To contrast availability with scalability, availability is ...

Get SQL Server™ 2005 Bible now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.