Vous devez créer un jeu de partitions et reconstruire la table sur ce jeu de partitions. SQL2005 ne peut partition sur une seule colonne, donc vous devez avoir une colonne dans le DB qui
- assez prévisible Se comporte de sorte que vous ne recevez pas un grand biais dans la quantité de données dans chaque partition
- IIRC la colonne doit être une valeur numérique ou datetime
- En pratique, il est plus facile si elle augmente de façon monotone - vous pouvez créer une série de partitions (automatiquement ou manuellement) et le système les remplira au fur et à mesure qu'il atteindra les définitions de plage.
Une date (peut-être la date à laquelle le document a été entré) serait idéale. Cependant, vous pouvez ou ne pouvez pas avoir une colonne utile sur la grande table. MME. le support technique serait la meilleure source de conseils pour cela.
Le partitionnement doit être transparent pour l'application (encore une fois, vous avez besoin d'une colonne avec un comportement approprié à utiliser comme clé de partition).
Si vous n'avez pas la chance d'avoir une colonne de clé de partition qui est également utilisée comme prédicat de recherche dans les requêtes les plus courantes, les performances de requête ne bénéficieront pas du partitionnement. Un exemple de colonne qui fonctionne bien est une colonne de date sur un entrepôt de données. Cependant, votre application Sharepoint peut ne pas faire un usage intensif de cette sorte de requête.
J'ai un champ TimeCreated qui est une colonne datetime, je suppose que cela me permettrait de partitionner en fonction des années. Ce n'est pas tellement pour les performances d'accès que le serveur est rapide, mais plus pour la sauvegarde et la restauration des performances. Je vais tester ce que vous suggérez avant d'accepter la réponse finale. – Mauro