Bonjour à tous,
Je fais face a un problème que je n'arrive pas a comprendre...
J'ai trois machine tournant sous Windows 2012 R2 (16CPU / 32Go de RAM) configuré au niveau systeme exactement pareil (Configuration déployée en utilisant Opscode Chef)
Sur chaque machine, j'ai installé une version de SQL Server :
- SQL Server 2014 R2 Enterprise (seul SQL Engine et IS sont installés)
- SQL Server 2012 R2 Enterprise (seul SQL Engine et IS sont installés)
- SQL Server 2008 R2 Enterprise (seul SQL Engine et IS sont installés)
Les DATA / Transaction / Backup et pagefile sont sur des disques différents.
Sur chacun de ses servers, j'ai créer une database et importer une table contenant 26214400 lignes depuis un autre server SQL "de production"
J'effectue ensuite une requête SQL qui créée une nouvelle table comme ceci (Cette requête m'a été fournis par un developper)
https://gist.github.com/DeWaRs1206/0791c56eca8c4114bfa1 (je dois la mettre sur github car elle est trop longue pour ce forum..)
Sur mon server SQL 2014 R2, cette requête prend 3:30min environs, alors que sur 2008 et 2012, elle prend environ 1h !!
Je n'ai aucune idée d'ou vient le problème et de comment le résoudre. La seule différence que je vois entre les 3 serveurs est que lorsque je lance un "Display querry estimation time", sur 2014 il fait du parallélisme alors que sur 2012 et 2008 il ne le fait pas.
Je me doute bien que personne, avec ces informations, ne va pouvoir me trouver une solution, mais si l'un de vous a quelques pistes, je suis preneur !
Merci d'avance.
DeWaRs
Partager