Je ne suis pas d'accord avec Jay - consultez lede Kim Tripp.
Entre autres, elle a dit que d'avoir une bonne clé primaire/cluster (sur une colonne INT IDENTITY - PAS une colonne GUID) va effectivement accélérer vos insertions et modifications. Donc, même si vous n'utilisez votre table que pour une courte période de temps, il est conseillé d'avoir une colonne TableID INT IDENTITY(1,1) PRIMARY KEY
pour obtenir une bonne clé rapide et un index cluster, et aussi peu d'autres indices que possible (puisque ceux-ci ralentira les inserts à coup sûr).
Selon la fréquence à laquelle vous allez référencer votre colonne GUID comme clé étrangère, vous pouvez également ajouter un index là-bas, car cela accélèrera certainement les recherches.
Si vous chargez beaucoup de données en masse (par exemple, dix des milliers de lignes à la fois), vous pouvez également envisager de supprimer cet index avant le chargement et de le recréer une fois les données chargées (ce qui se passe probablement être plus rapide que de l'avoir en place tout le temps) - mais encore une fois: cela dépend de la quantité de données que vous chargez, et à quelle fréquence.
Marc
Avez-vous examiné si un message au lieu d'une base de données répondrait mieux à vos besoins? – RichardOD
Je suis très contraint par ce design malheureusement – maxbeaudoin