IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Différence de performance entre 2 serveurs pour une même base et une même requête


Sujet :

Administration SQL Server

  1. #1
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut Différence de performance entre 2 serveurs pour une même base et une même requête
    Bonjour,

    Je viens de procéder à des tests de performance sur 2 serveurs physiques différents et les résultats me chiffonnent singulièrement !!!!

    Il s'agit de deux serveurs HP :

    > Server 1 : ML350 G5 avec 2 Xeon 5120 à 1.86GHz, 4 Go de RAM et 4 grappes de disques SAS HP 2.5" à 1000trpm en RAID1. Le système et la base sur 2 grappes différentes. La base temp est sur la grappe système.

    > Server 2 : ML310 G5 avec 1 Xeon 3040 1.86Ghz, 2Go de RAM et 2 grappes de disques SAS HP 3.5" à 10000trpm en RAID1. Le système et les bases sont sur la même grappe.

    Les deux serveurs sont sous Windows Server 2003 RP2 (SP1 pour le server1 et SP2 pour le server 2), et les deux sous SQL Server 2000 SP4 (8.00.2187). Les deux serveurs sont totalement dédiés aux databes.

    A priori, la config des SQL Server est quasi de base.

    J'ai réalisé les tests à partir de la même base et de la même requête de référence (celle-ci réalise une agrégation sur un grand nombre de lignes en réalisant un ORDER BY sur ces résultats)

    Résultats :
    ========
    1ere passe = exécution de la requête alors que la base est non chargée en mémoire
    2eme passe = exécution immédiatement consécutive à la première

    > Server1 : 1ere passe : 6mn35 / 2eme passe: 6mn33

    > Server2 : 1ere passe : 5mn01 / 2eme passe: 4mn56

    Ces résultats sont reproductibles.

    Je n'arrive pas à comprendre pourquoi le serveur le moins dimensionné est 30% plus rapide que l'autre serveur ????!!!! Serait-ce à cause de la différence de disque dur ???


    Si vous avez une idée, je vous en remercie par avance.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Il y a énormément de paramètres qui peuvent conduire a ce comportement. A commencer par : quels sont les services activés sur l'un et l'autre des serveurs...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Bonjour Frédéric,

    En fait, comme indiqué, les deux machines n'ont absolument aucune activité hormis le requetage SQL (en tout cas pour le moment). En dehors de ce stress, l'encéphalogramme CPU est tout ce qu'il y a de plus plat. Pas d'accès disque non plus.

    Au pire, je me serais contenté d'un temps de traitement équivalent, le proc n'étant pas le facteur discriminant sur une seul requête (le biproc aidant encore moins). Bien que le server1 ait 4Go de RAM, il est en SQL server Standard, donc l'instance est limité à 2Go. Mais c'est un vrain 2Go. Sur le serveur, il n'y a que 1.5Go de RAM dédié au process SQL.

    30% d'écart de temps de traitement, c'est pas une paille !!!!

    Serait-ce le SP2 du Win2003 qui booste les résultats ? Ca semble peu probable.

    J'ai davantage de craintes vis à vis des disques durs et de leur version 2.5". Mais sur des tests de débits, c'est quif quif. Je sais pas quant au temps d'accès aléatoire.

    Tu penserais à quels paramètres principaux en premier lieu ?

    Merci pour ta réponse.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    SP2 de windows possible. Disque aussi, tout dépend de la quantité d'info brassée par la requête....

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    FMJ
    FMJ est déconnecté
    Membre averti
    Profil pro
    tutu
    Inscrit en
    Octobre 2003
    Messages
    416
    Détails du profil
    Informations personnelles :
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : tutu

    Informations forums :
    Inscription : Octobre 2003
    Messages : 416
    Points : 356
    Points
    356
    Par défaut
    Concernant la quantité de données brassées, la requête fait une jointure entre 2 tables et porte sur la quantité de données suivantes :
    > Table A : 250 000 lignes triées sur 1 400 000 (pour 260 colonnes ....)
    > Table B : 75 000 lignes triées sur 400 000 (pour 150 colonnes ...)

    Je viens d'installer SQL Server 2008 sur le server2. J'obtiens les résultats suivants :
    Server2 : 1ere passe : 2mn58 / 2eme passe: 3mn03

    Soit 40% d'amélioration du temps de traitement par rapport à SQL Server 2000.
    Marrant, la première exécution est la plus rapide. Pas d'effet de cache ensuite, au contraire (résultats reproductibles!).
    Par contre, en conf de base, SQL Server 2008 bouffe toute la RAM. Et fuc... le system !

Discussions similaires

  1. Réponses: 82
    Dernier message: 05/02/2011, 14h34
  2. Réponses: 4
    Dernier message: 07/09/2010, 19h18
  3. Différence de performance entre localhost et serveur
    Par Borowsky dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 10/09/2009, 00h56
  4. [SimpleXML] Différence de fonctionnement entre localhost / serveur
    Par bractar dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 20/05/2008, 18h58
  5. Différence de performance entre JOIN et Subselect ?
    Par guidav dans le forum Requêtes
    Réponses: 1
    Dernier message: 20/07/2007, 10h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo