considérablement la complexité des applications, car l’implémentation physique est déduite des
méthodes d’accès aux données par l’application.
Dans SQL Server 2000, les vues partitionnées peuvent être étendues afin d’inclure des vues
partitionnées distribuées, ce qui permet la fédération des bases de données sur plusieurs
serveurs/instances. L’étude des vues partitionnées distribuées sort du cadre de ce document. Pour une
étude détaillée, reportez-vous au document « Vues partitionnées distribuées » sur MSDN (Microsoft
Developer Network) à l’adresse http://www.microsoft.com/sql/evaluation/features/distpart.asp .
Partitionnement dans SQL Server 2005
Le partitionnement de tables et d’index dans SQL Server 2005 limite la complexité liée à la gestion de
bases de données très volumineuses par l'intermédiaire de vues partitionnées. SQL Server 2005 permet
le partitionnement horizontal par plage avec la ligne de données comme plus petite unité de
partitionnement. Les objets pouvant être partitionnés sont les suivants :
Index (en cluster ou non)
Les partitions par plage sont des partitions de table définies par des plages personnalisables de données.
L’utilisateur définit la fonction de partition avec des valeurs limites, un schéma de partition avec mise en
correspondance des groupes de fichiers, ainsi que des tables mises en correspondance avec le schéma de
partition. Une fonction de partition détermine à quelle partition appartient une ligne particulière d’une
table ou d’un index. Chaque partition définie par une fonction de partition est mise en correspondance
avec un emplacement de stockage (groupe de fichiers) via un schéma de partition. Pour une étude
complète de l’implémentation du partitionnement avec SQL Server 2005, reportez-vous à l’article
« Tables et index partitionnés dans SQL Server 2005 » sur MSDN.
La section suivante explique les avantages du partitionnement dans SQL Server 2005 et offre une
stratégie pour la migration vers les tables partitionnées SQL Server 2005.
Avantages du partitionnement dans SQL Server 2005
Le partitionnement de tables et d’index dans SQL Server 2005 facilite la gestion des bases de données
très volumineuses via la gestion étape par étape des partitions. Cette section décrit quelques-uns des
avantages des tables partitionnées par rapport aux vues partitionnées, s’agissant des data warehouses
relationnels.
Gestion
L’un des inconvénients de l’utilisation de vues partitionnées est que les opérations de base de données
doivent être effectuées sur des objets individuels plutôt que sur la vue proprement dite. Par exemple, si
l’index existant doit être supprimé et qu’un nouvel index doit être créé, l'opération doit être effectuée sur
chaque table sous-jacente.
Dans SQL Server 2005, les opérations de base de données telles que la maintenance des index sont
effectuées sur la table partitionnée proprement dite et non sur les partitions sous-jacentes, ce qui permet
de simplifier considérablement la gestion des index.
Mécanisme de parallélisme plus performant
Dans SQL Server 2000, les opérations sont effectuées sur des tables individuelles et les données sont
agrégées à un niveau de vue partitionnée. Les lignes des tables sous-jacentes sont collectées à l’aide de
l’opérateur de concaténation afin de représenter la vue. Des agrégations sont ensuite effectuées sur les
données résultantes.
Dans SQL Server 2005, les requêtes exécutées sur les tables partitionnées peuvent utiliser un nouvel
opérateur appelé parallélisme de demande. Le parallélisme de demande est influencé par les ressources
système et les paramètres MAXDOP.
Les requêtes qui utilisent des tables partitionnées sont compilées beaucoup plus rapidement que les
requêtes équivalentes utilisant des vues partitionnées. La durée de compilation des requêtes est