SQL Server 2000 -2005 perte de performances

SQL Server 2000 -2005 perte de performances - SQL/NoSQL - Programmation

Marsh Posté le 19-03-2007 à 22:27:57    

Apres etre passé de SQL Server 2000 a 2005 , j'ai remarque que les acces, les querys a la database etaient beaucoup plus lentes, alors que la database est exactement la meme....
 
A titre de comparaison une "evalutation" (qui consiste principalement a aller lire des données et faires des stats dessus, (contient une quarantaine de select), et qq updates) prend presque le double de temps sous 2005 (sous 2000: 140s , sous 2005 : 350 !!!)
 
Les tables sont strictement les memes , la structure et les données aussi... (meme machine , meme os) seul la connection string change, une porte sur SQL Server 2000 l'autre sur 2005.
Tout les services pack on evidement ete installés ....
 
 
Apres pas mal de recherche sur le net , je suis tombe sur cet article (http://rentacoder.com/CS/blogs/rea [...] 8/477.aspx) j'ai suivi toutes les recommandations a la lettre mais rien n'y fait :(
 
A noter qu'on a egalement le meme probleme sur d'autre un autre serveur (architecture differente, autre db ) mais aussi passage de 2000 a 2005
 
 
Est ce que quelqu'un a connu les meme problemes???
ou alors tout le monde est sous oracle??!
 
ou ne possede pas de SGBD du tout ??? (vive les fichiers plats  [:tinostar] )


Message édité par red faction le 20-03-2007 à 18:13:07
Reply

Marsh Posté le 19-03-2007 à 22:27:57   

Reply

Marsh Posté le 20-03-2007 à 14:10:14    

[:yoyoz]

Reply

Marsh Posté le 20-03-2007 à 17:58:18    

plop
 
bon, avec si peu d'infos, pas évident de répondre.
 
en gros, déjà, plusieurs choses :
- les paramètres par défaut de SQL Server 2000 et de SQL Server 2005 ne sont absolument pas les mêmes
- le moteur aussi a énormément changé
 
=> Donc migrer "simplement" de l'un à l'autre explique largement des pertes de performances, qui peuvent être catastrophiques. On a le même problème avec Oracle à chaque nouvelle version.
 
En gros, vérifie que les paramètres de la base correspondent bien à ceux dont tu as besoin. Notamment SQL Server 2005 vient avec un tas d'amélioration concernant l'isolation des curseurs, des sessions, et de mises au normes ANSI et autres, donc tu n'as pas forcément grand chose à faire. Désactive tout ce qui est inutile.
 
Ensuite, niveau syntaxe, idem. Notamment, SQL Server 2000 ne faisait pas de différence importante entre la syntaxe avec ou sans jointures explicites. Sous 2005, les jointures explicites sont source de graves problèmes.
 
Sans oublier enfin que SQL Server 2005 ben... Il est plus gourmant que le 2000. Migrer, c'est bien, mais si tu ne changes que le logiciel, faut pas s'étonner si tu passes de "configuration recommandée" à "minimum recommandé".
 
Mais je te rassure, tu peux aisément multiplier par 10 tes performances avec 2005, à condition de proprement le configurer. Par contre, je vais pas plus loin dans les explications, chuis pas DBA et je ferai certainement pas mieu que toi à ce sujet ;)

Reply

Marsh Posté le 29-03-2007 à 09:14:14    

Nous aussi on a eu le même pb qd on est passé de 2000 à 2005.
C'est clair que le moteur a complétement changé et ne travaille plus forcément de la même façon que le 2000.
Par exemple au niveau des index avec une table identique sous 2000 et 2005 : on a vu que 2005 n'utilisait pas forcément les index alors que 2000 oui, et donc requête + rapide sous 2000 que sous 2005.
En modifiant qq paramètres on a réussi à remonter un peu les perfs, mais il me semble qu'on est jamais revenu aux perfs qu'on avait sous 2000.
 
On utilise la version Standard de 2005, qui est pas mal limitée en nouveautés ( pas de partitionnage des tables par exemple ), çà vient peut être de là aussi ...
 
Je précise que le hardware n'a pas changé qd on est passé à 2005, mais bon je pense pas que ce soit çà qui nous bride sous 2005 :D : bi xéon 3Go / RAM 4Go / RAID 5 SCSI 15000rpm


Message édité par WhyMe le 29-03-2007 à 09:17:25

---------------
FeedBack HFR
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed