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

Décisions SGBD Discussion :

SQL Server très lent comparé à Mysql ?


Sujet :

Décisions SGBD

  1. #1
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 037
    Points
    6 037
    Par défaut SQL Server très lent comparé à Mysql ?
    Bonjour.
    Actuellement, je suis en train de developper une application en php5 qui peut tourner sur Mysql5, 4 et SQLServer 2000. Et je constate qu'il y a une différence de temps d'execution.
    Mysql5 > 0.05 seconde en moyenne
    SQlServer 1.0 seconde en moyenne.
    C'est une requête qui est appeler récurcivement avec une contrainte sur le champs sur SQLServer mais même quand je retire cette contrainte je trouve qu'il y a quand même une lenteur assez bizarre.
    Pour 26 enregistrements je trouve que ça fait beaucoup. Je sais que Mysql est rapide mais Sqlserver me semble pas si lent quand je compare. L'appli est entierement objet et le processus pour executer une requête est la même.

    Ma config
    Athlon 3200+ venise 939
    1go RAM.
    Une carte mère Gigabite K8NSC-939
    c'est pas assez ?

    SQL Server
    [idcategorie] [int] IDENTITY (1, 1) NOT NULL ,
    [idcategorie_mere] [int] NULL ,
    [idtraduction] [int] NULL ,
    [ordre] [int] NOT NULL ,
    [nom] [varchar] (50) COLLATE French_CI_AS NOT NULL ,
    [description] [text] COLLATE French_CI_AS NULL ,
    [date_crea] [datetime] NULL ,
    [date_modif] [datetime] NULL ,
    [actif] [bit] NOT NULL ,
    [visible] [bit] NOT NULL

    Mysql5
    `idcategorie` mediumint(10) NOT NULL auto_increment ,
    `idcategorie_mere` mediumint(10) NOT NULL default '0' ,
    `idtraduction` mediumint(5) default '0' ,
    `nom` varchar(255) NOT NULL ,
    `description` text COMMENT,
    `ordre` tinyint(3) NOT NULL default '0' ,
    `date_crea` datetime NOT NULL,
    `date_modif` datetime NOT NULL ,
    `actif` tinyint(1) NOT NULL default '0' ,
    `visible` tinyint(1) NOT NULL default '0',
    PRIMARY KEY (`idcategorie`),
    KEY `idtraduction` (`idtraduction`)


    Quelqu'un aurait une éventuellement explication?
    Merci
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  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 763
    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 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Et la requête ???

    De plus vous n'avez mi aucune clef sur la table, donc aucun index !

    Il faudrait au moins respecter les principes de bases de la modélisation de données, à savoir que toute table doit avoir une clef...

    Des index aussi.

    De quelle contrainte parlez-vous ?

    Tout ceci n'est pas claireet révèle votre manque de connaissance sur le sujet (il est vrai que MySQL avec son pseudo SQL et sa manière de gérer les données se rapproche plus du cobol que d'un vrai SGBDR !)

    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
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    SQL Server
    ...
    [actif] [bit] NOT NULL ,
    [visible] [bit] NOT NULL

    Mysql5
    ...
    `visible` tinyint(1) NOT NULL default '0',
    PRIMARY KEY (`idcategorie`),
    KEY `idtraduction` (`idtraduction`)
    C 1 peu pipé au départ non ?

  4. #4
    Membre expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Points : 3 001
    Points
    3 001
    Par défaut
    Je suis en train d'écrire un article sur les différentes méthodes d'accès aux données via PHP.
    Je constate de légers écarts entre MySQL et MSSQL. Rien à voir avec ce que vous obtenez. (Je ne dis pas que l'un va plus vite qu'un autre, mes tests ne me garantissent pas actuellement que les deux processus se déroule dans les mêmes conditions environnementales). Mais si il y a avait des écarts de 2000% je les aurais remarqué !

    En conclusion, de cet article, je conseille de privilégier l'accès aux bases de données via la nouvelle bibliothèque PDO de PHP.

    Néanmoins, une bonne modélisation de votre base et une indexation adéquate, comme l'optimisation du serveur de données sont des points d'optimisation à ne jamais négliger !
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

  5. #5
    Membre expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Points : 3 001
    Points
    3 001
    Par défaut
    Citation Envoyé par SQLpro
    un vrai SGBDR !)
    [Hors-sujet]Pourrait-on discuter à l'occasion de cette définition de SGBDR en privé ?[/Hors-Sujet]
    Alexandre Tranchant
    Chef de projet AMO pour le Cerema.
    Retrouvez mes articles sur PHP et Symfony

  6. #6
    Rédacteur en Chef
    Avatar de Marc Lussac
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Mars 2002
    Messages
    28 664
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2002
    Messages : 28 664
    Points : 61 595
    Points
    61 595
    Par défaut
    Mysql est extrémement rapide pour les opérations simples

    Ca n'est pas parce que c'est gratuit que c'est forcément plus lent

    De plus, si vous utilisez mysql en mode non transactionnel (mode par défaut), parce que vous n'avez pas besoin des transactions (ca peu arriver), mysql est forcément beaucoup plus rapide que tous les autres SGBD qui sont tous en mode transactionnel par défaut
    Ne pas me contacter pour le forum et je ne répondrai à aucune question technique. Pour contacter les différents services du club (publications, partenariats, publicité, ...) : Contacts

    15 000 offres d'emploi développeurs et informatique
    Cours et tutoriels développeurs et informatique
    Les FAQ's & Les Livres
    Codes sources
    Téléchargements

  7. #7
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 037
    Points
    6 037
    Par défaut
    Citation Envoyé par SQLpro
    Et la requête ???

    De plus vous n'avez mi aucune clef sur la table, donc aucun index !

    Il faudrait au moins respecter les principes de bases de la modélisation de données, à savoir que toute table doit avoir une clef...

    Des index aussi.

    De quelle contrainte parlez-vous ?

    Tout ceci n'est pas claireet révèle votre manque de connaissance sur le sujet (il est vrai que MySQL avec son pseudo SQL et sa manière de gérer les données se rapproche plus du cobol que d'un vrai SGBDR !)

    A +
    Sur SqlServeur j'ai placé un index sur le champs idcategorie. Dans la génération du code de la structure j'ai peut être oublié de le faire mentionner.

    La lecture de la table se fait de façon linière donc aucune clause. C'est qu'une requête très bateau SELECT * FROM categorie.
    J'ai même placé la taille du cache de mysql à 0 .
    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

  8. #8
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2005
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 473
    Points : 3 283
    Points
    3 283
    Par défaut
    Citation Envoyé par SQLpro
    ...
    Tout ceci n'est pas claire et révèle votre manque de connaissance sur le sujet (il est vrai que MySQL avec son pseudo SQL et sa manière de gérer les données se rapproche plus du cobol que d'un vrai SGBDR !)
    Ne dénigrez pas le COBOL SVP ...
    Jamais il n'a eu la prétention d'être un SGBDR lui ...

  9. #9
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 414
    Points : 671
    Points
    671
    Par défaut
    Bonne remarque Luc

    Le Cobol avec une base IMS, y a pas encore plus rapide pour traiter du volume de données.

    Par rapport au sujet initial, je suis d'accord. Mysql est rapide mais c'est de la pseudo rapidité car effectivement il n'y a pas de transactionnel, etc.., etc... Il faut comparer ce qui est comparable. Mysql InnoDB / MSSQL peut être serait il plus intéressant. Maintenant, essayez de comparer les temps de mises à jour et d'ajout de données entre Mysql et MSSQL, et là ca fait mal à Mysql !

  10. #10
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 488
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 488
    Points : 6 037
    Points
    6 037
    Par défaut
    ok j'étais bien au courant que Mysql était plus rapide que sql server mais dans mon cas pour si peut d'enregistrement et qu'il y ait une seconde pour le SQLsever ça me parait un peut abusé.

    Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. microsoft sql server trés lent
    Par sag3oum dans le forum Administration
    Réponses: 2
    Dernier message: 02/07/2012, 15h29
  2. Réponses: 0
    Dernier message: 21/03/2011, 17h44
  3. SQL Server très lent comparé à Mysql
    Par berceker united dans le forum Installation
    Réponses: 14
    Dernier message: 14/12/2006, 20h53
  4. Réponses: 2
    Dernier message: 04/03/2006, 10h47
  5. SQL Server trés lent
    Par arwen dans le forum MS SQL Server
    Réponses: 18
    Dernier message: 07/11/2003, 14h45

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