Pourquoi une plus grande table est plus rapide que nouveau plus petit?
-
19-09-2019 - |
Question
Nous avons une grande table dans SQL Server avec presque 40.000.000 enregistrements. il a fallu beaucoup de temps pour l'exécution de requêtes sur elle. nous avons donc décidé de laisser tout vieux et des dossiers de ce jour, et déplacer les enregistrements utilisables dans une nouvelle table d'utiliser le nouveau. alors qu'il devait être plus rapide que vieille table qui ont presque le double nombre de dossiers, le résultat était problématique somthing d'autre. bien que runnig une requête sur vieille table prend Nigh 45 secondes, sur la nouvelle table avec la même structure (clés et index) et le nombre de la moitié des dossiers, il faut plus de 30 minuts à l'exécution d'une même requête. où nous avons erreur ou manqué certaines questions importantes?
La solution
Avez-vous pensé à migrer les index de la table plus grande et re-générer des statistiques sur la nouvelle table?
Dans le cas contraire, commencer par là. C'est généralement la question dans ces cas (en particulier avec de grandes tables).