Directives de planification des index et des tables partitionnés
Vous devez envisager de créer les objets de base de données suivants avant de partitionner une table ou un index :
Partition (fonction)
Schéma de partition
Une fonction de partition définit comment les lignes d'une table ou d'un index sont mappées avec un ensemble de partitions basées sur les valeurs de certaines colonnes, appelées « colonnes de partitionnement ».
Un schéma de partition mappe chaque partition spécifiée par la fonction de partition avec un groupe de fichiers.
Planification de la fonction de partition
Vous devez prendre en considération deux facteurs lorsque vous planifiez une fonction de partition : la colonne dont les valeurs déterminent la façon dont une table est partitionnée, appelée « colonne de partitionnement », et la plage de valeurs de la colonne de partitionnement pour chaque partition. Cette plage de valeurs détermine le nombre de partitions qui composent la table. Une table peut comprendre au maximum 1 000 partitions.
Le degré avec lequel vous pouvez regrouper les données de façon logique, par exemple par date, et la compatibilité de ce regroupement logique avec la gestion des sous-ensembles de données déterminent les options dont vous disposez pour définir la colonne de partitionnement et la plage de valeurs.
Ainsi, dans le scénario de partitionnement de l'exemple de base de données AdventureWorks, les tables TransactionHistory et TransactionHistoryArchive sont partitionnées sur le champ TransactionDate. La plage de valeurs de chaque partition est d'un mois. La table TransactionHistory contient les transactions les plus récentes de l'année, tandis que TransactionHistoryArchive gère les transactions plus anciennes. Grâce à ce partitionnement, les données anciennes portant sur un mois peuvent être transférées rapidement et efficacement depuis la table TransactionHistory vers la table TransactionHistoryArchive sur une base mensuelle.
Pour plus d'informations sur ce scénario spécifique, consultez Création de partitions pour gérer les sous-ensembles de données.
Toute colonne dont le type de données peut être utilisé comme clé d'index peut être spécifiée comme colonne de partitionnement, sauf dans le cas du type de données timestamp, des types de données définis par l'utilisateur CLR (Common Language Runtime) Microsoft.NET Framework et des types de données d'alias. Pour plus d'informations, consultez Création de tables et d'index partitionnés.
Planification du schéma de partition
Lorsque vous planifiez le schéma de partition, vous devez choisir le ou les groupes de fichiers sur lesquels vous souhaitez placer les partitions. Le principal motif de placement des partitions sur des groupes de fichiers distincts est la possibilité de réaliser des opérations de sauvegarde indépendantes sur les partitions. En effet, vous pouvez réaliser des sauvegardes sur des groupes de fichiers spécifiques. Pour plus d'informations, consultez Sauvegarde et restauration de bases de données dans SQL Server.
Important
SQL Server ne garantit pas l'exécution correcte des requêtes qui accèdent à une table partitionnée si des fichiers appartenant à un groupe de fichiers quelconque de la table ne sont pas dans un état ONLINE, quelles que soient les partitions auxquelles la requête accède.