L'objectif de l'utilisation d'une ligne directrice séquentielle est de pouvoir utiliser des index en grappes sans les niveaux élevés de fragmentation qui existeraient normalement dans un index en grappes s'il s'agissait d'une ligne directrice normale, n'est-ce pas ?
Réponses
Trop de publicités?Tout d'abord, une clé primaire et un index en grappe sont deux choses séparées et distinctes, c'est-à-dire que l'une n'est pas liée à l'autre (les clés primaires peuvent ne pas être en grappe, les index en grappe peuvent ne pas être des clés primaires).
Cela dit, je pense que votre question est plutôt "Un GUID séquentiel doit-il être utilisé comme index en grappe ? C'est une question complexe, mais Kimberly Tripp en a parlé probablement le meilleur de tous ceux que j'ai vus. Notez que l'article fait référence à un PK, mais à l'intérieur de l'article, elle fait référence à la façon dont la considération s'applique principalement au choix d'un index en grappe par rapport à un PK.
En supposant que vous ayez déjà décidé d'utiliser un GUID comme clé de cluster (ce qui peut être ou non le cas), l'utilisation d'un GUID séquentiel serait très probablement un choix supérieur à un GUID non séquentiel, mais il existe au moins un scénario dans lequel un GUID non séquentiel peut être préféré (bien qu'il s'agisse d'un scénario très rare, Il s'agit d'un scénario très rare et très avancé dans lequel vous devez comprendre votre système et votre serveur SQL si bien que vous n'avez aucun doute quant à l'utilisation de ce GUID non séquentiel. Ce scénario concerne les points chauds de votre périphérique de stockage et la répartition de gros volumes d'écritures sur différents sites du cluster.)