Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

NewSequentialId sur l'index clusterisé UniqueIdentifier

Normalement, vous créerez vos index avec un FILL FACTOR approprié laisser un espace vide dans toutes vos pages pour un tel scénario. Cela étant dit, l'index clusterisé est réorganisé une fois l'espace vide rempli.

Je sais que vous ne voulez pas discuter de l'utilisation de GUID en tant que clé groupée, mais c'est l'une des raisons pour lesquelles ce n'est pas une pratique recommandée.

Ce qui se passera, c'est que vous aurez un volume croissant de fractionnements de pages, ce qui conduira à un niveau de fragmentation très élevé au fur et à mesure que vous insérez des lignes, et vous devrez reconstruire votre index à une fréquence plus élevée pour maintenir les performances en ligne.

Pour un traitement complet sur le sujet, il n'y a pas de meilleure source que

Kim
Tripp's
Blog

En passant, lorsque vous envisagez de créer votre propre fonction de création NewSequentialID, vous avez probablement un problème de conception et devez reconsidérer votre plan.