As you're reading this article, are you wishing that you could do something about the production table you've fondly nicknamed "Fat Albert?" The main article describes techniques for optimizing a data model proactively. But Fat Albert is a production table that you doubt you could ever restructure. Don't give up yet. You do have some options.

  • Take a look at creating covering indexes that correspond to your most commonly used applications. For information about creating covering indexes, see Kalen Delaney's Inside SQL Server column "The Big Cover-Up" (September 2001, InstantDoc ID 21729) and Dusan Petkovic and Christian Unterreitmeier's article "Indexing for Sort Performance" (June 2000, InstantDoc ID 8612).
  • Consider creating indexed views to streamline data access. Itzik Ben Gan's article "Native Partitioned Tables and Indexes" (January 2005, InstantDoc ID 45153), Mark D. Scott's "Hide Database Changes" (January 2005, InstantDoc ID 44729), and my Solutions by Design column "Modernizing Memberships" (July 2004, InstantDoc ID 8410) can all provide insight about indexed views.
  • Think about vertical partitioning—after all, isn't that essentially what I've done with the table design in the main article? Gary Zaika's article "Additional Facts About Configuring Transactional Replication" (October 2004, InstantDoc ID 44150), Robert D. Scheider's "Horizontal and Vertical Partitioning" (February 1997, InstantDoc ID 98), and my Solutions by Design column "A New Lease on Life" (August 2003, InstantDoc ID 39643) can help you learn about vertical partitioning.