When a
database table grows in size to the hundreds of gigabytes or more, it can
become more difficult to load new data, remove old data, and maintain indexes.
Just the sheer size of the table causes such operations to take much longer.
Even the data that must be loaded or removed can be very sizable, making INSERT
and DELETE operations on the table impractical. The Microsoft SQL Server 2008
database software provides table partitioning to make such operations more
manageable.
Partitioning
a large table divides the table and its indexes into smaller partitions, so
that maintenance operations can be applied on a partition-by-partition basis,
rather than on the entire table. In addition, the SQL Server optimizer can
direct properly filtered queries to appropriate partitions rather than the
entire table.
This paper
covers strategies and best practices for using partitioned tables and indexes
in SQL Server 2008. It is intended for database architects, developers, and
administrators of both data warehouse and OLTP systems, and the material is
presented at an intermediate to advanced level. For an introduction to
partitioned tables, see "Partitioned Table and Index Concepts” in SQL
Server 2008 Books Online at http://msdn.microsoft.com/en-us/library/ms190787.aspx.
Because this
paper is very long (65 pages) reading it in an online format such as the
Library becomes impractical, so we offer it as a downloadable Microsoft Word
document.
Download "Partitioned Table and
Index Strategies Using SQL Server 2008" white paper