Algorithme de mise à jour automatique des statistiques:
Ainsi, les statistiques de mise à jour automatique se déclencheront pour chaque changement de 500 + 20% dans les lignes du tableau. Bien sûr, nous avons un algorithme amélioré dans SQL 2012 qui est SQRT (1000 * lignes de table), ce qui est beaucoup mieux.
Lorsqu'il se déclenche, il utilise le taux d'échantillonnage par défaut et voici l'algorithme de calcul du taux d'échantillonnage.
1) Si la table <8 Mo, il met à jour les statistiques avec un balayage complet.
2) Si le tableau> 8 Mo, il suit un algorithme. Cela réduit le taux d'échantillonnage car le nombre de lignes dans le tableau augmente pour nous assurer que nous n'analysons pas trop de données. Ce n'est pas une valeur fixe mais est sous le contrôle de l'optimiseur. Ce n'est pas non plus un algorithme linéaire.
Exemple: si nous avons 1 000 000 de lignes, il utiliserait un taux d'échantillonnage de 30%, mais lorsque le nombre de lignes augmenterait à 8 000 000, cela réduirait le taux d'échantillonnage à 10%. Ces taux d'échantillonnage ne sont pas sous le contrôle des DBA mais l'optimiseur le décide.