none
Pb de performance sur sql Server

    Discussion générale

  • Bonjour,

    Je commence par mon histoire :

    Nous avons développé une application qui s'appuie sur SQL Server. Chez un de nos clients, il y a maintenant plus de 4 go de données et nous avons des problèmes de performance. Nous avons mis en place des index, des bachs quotidien de mise à jour des index, etc, etc, ... mais rien n'y fait. Les performances continuent à se dégrader un peu plus chaque jour.

    L'application fonctionne sur 1 serveur SQL Server 2005 - edition standard - licence 1 proc. Le serveur est un serveur 32 4Go 4quore 

    J'ai repris la base de données sur mon portable il y a un mois environ. Surprise sur mon portable, une requete qui met 4mn sur le serveur s'execute en 20s sur mon PC. Depuis 1 mois nous cherchons une explication de cette différence de performance. nada.

    il y a une heure, je veux montrer l'execution de la requete sur mon portable, et, au lieu des 20s attendues, la requete met 2 mn pour s'executer ! Je suis certain que les données de cette base n'ont pas été modifiées depuis 1 mois

    Je reinstalle mon backup --> la requete s'execute de nouveau en 20s!

    Ma question : comment est-il possible de que les performances se soient dégradées alors que je n'ai jamais touché à cette base ?

    Merci d'avance pour votre aide

     

     


    jmR
    • Type modifié Ciprian Duduiala vendredi 15 avril 2011 06:30 aucune réponse de l'utilisateur qui a lancé la question
    vendredi 8 avril 2011 16:25

Toutes les réponses

  • Bonjour,

    Il peut y avoir de multiples raisons à vôtre problème.

    Regardez déjà avec SSMS ( SQL Server Management Studio ) s'il n'y a pas des jobs qui s'executent régulièrement , prenant des ressources avec le moniteur d'activité.

     Regardez aussi si votre base n'est pas affublée de AUTOSHRINK = True.

    Regardez aussi l'évolution de la taille de votre fichier log ( celui dans lequel SQL Server écrit ses messages, pas les transaction logs .ldf ).

    Quel Service pack avez vous installé pour vôtre SQl Server 2005 ( SP2 obligatoire, SP3 très utile, je n'ai jamais eu l'occasion de tester le SP4 car depuis 2008, je suis passé à SQL Server 2008 )?

    Bonne journée

     


    Mark Post as helpful if it provides any help.Otherwise,leave it as it is.
    dimanche 10 avril 2011 21:38
  • Bonjour,

    Comme le dit Papy Normand il peut y avoir des raisons multiples à cela (et pas toujours facile à résoudre à distance). En sus de ses propositions :

    Vous dites :

    il y a une heure, je veux montrer l'execution de la requete sur mon portable, et, au lieu des 20s attendues, la requete met 2 mn pour s'executer ! Je suis certain que les données de cette base n'ont pas été modifiées depuis 1 mois

    Avez vous comparé le plan d'exécution de cette fameuse requête quand celle-ci s'exécute rapidement et lorsque cette même requête est lente ? Avez vous placé des options comme SET STATISTICS IO et SET STATISTICS TIME ?

    ++


    MCDBA | MCITP SQL Server 2005 / SQL Server 2008 | LPI Linux 1
    lundi 11 avril 2011 07:40
    Modérateur
  • Nous avons développé une application qui s'appuie sur SQL Server. Chez un de nos clients, il y a maintenant plus de 4 go de données et nous avons des problèmes de performance. Nous avons mis en place des index, des bachs quotidien de mise à jour des index, etc, etc, ... mais rien n'y fait. Les performances continuent à se dégrader un peu plus chaque jour.

    Y a t-il autre chose qui tourne sur le serveur que SQL Server, en particulier application, serveur d'objet, serveur web, anti virus, firewall ?

    Quelle est la version de la base ? 2000, 2005 ??

    L'application fonctionne sur 1 serveur SQL Server 2005 - edition standard - licence 1 proc. Le serveur est un serveur 32 4Go 4quore 

    J'ai repris la base de données sur mon portable il y a un mois environ. Surprise sur mon portable, une requete qui met 4mn sur le serveur s'execute en 20s sur mon PC. Depuis 1 mois nous cherchons une explication de cette différence de performance. nada.

    Il faudrait avoir la taille exacte de la base, faites un sp_spaceused dans le contexte de la base

    il y a une heure, je veux montrer l'execution de la requete sur mon portable, et, au lieu des 20s attendues, la requete met 2 mn pour s'executer ! Je suis certain que les données de cette base n'ont pas été modifiées depuis 1 mois

    Je reinstalle mon backup --> la requete s'execute de nouveau en 20s!

    Ma question : comment est-il possible de que les performances se soient dégradées alors que je n'ai jamais touché à cette base ?

    Essentiellement une problématique de cache...

    La base est-elle en auto close ???? en auto shrink ???

    A +

    Frédéric BROUARD, Spécialiste modélisation, SGBR relationnel, optimisation, langage SQL * * * Le site sur le langage SQL et les SGBD relationnels : http://sqlpro.developpez.com/ * * * Expert SQL Server http://www.sqlspot.com : audit, optimisation, tuning, formation * * * Le blog sur SQL / MS SQL Server http://blog.developpez.com/sqlpro * * * Enseignant CNAM PACA, ISEN Toulon, CESI/EXIA Aix En Provence
    mardi 12 avril 2011 20:43