Vous vous demandez simplement si les statistiques sont conservées dans la base de données mais pas dans la mémoire? Si je sauvegarde / restaure la base de données d'un serveur prod vers un serveur de développement, conserverait-il les mêmes statistiques afin que les plans d'exécution ne soient pas très différents si je le fais sur le serveur de développement?
la source
Outre ce que Remus a mentionné, je vous suggère de lire -
la source
Comme l'a dit Remus , les statistiques des tables sont stockées dans la base de données de manière similaire à d'autres objets comme les tables et les index. Ils jouent un grand rôle dans la sélection du plan d'exécution, mais il existe d'autres facteurs.
Cela étant dit, SQL Server connaît un autre type de statistiques, des statistiques qui nous donnent des informations sur le comportement récent.
Par exemple, les DMV
ys.dm_db_index_usage_stats
et lessys.dm_db_index_operational_stats
statistiques de retour sur la façon dont l'index est utilisé.Ces statistiques sont stockées en mémoire uniquement. Se perdre au redémarrage du serveur et ne pas voyager avec la sauvegarde.
Cependant, l'optimiseur ne les utilise pas non plus pour générer un plan.
la source