Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/08/2005, 19h45   #1
Membre Expert
 
Avatar de Pill_S
 
Homme Sébastien Piller
Consultant informatique
Inscription : janvier 2004
Messages : 1 618
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Piller
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Consultant informatique
Secteur : Finance

Informations forums :
Inscription : janvier 2004
Messages : 1 618
Points : 1 981
Points : 1 981
Envoyer un message via MSN à Pill_S
Par défaut [Infos] Concurrence et performances comparé à d'autres SGBD

Bonjour,

je suis sur un projet de base de données, et mon responsable m'a déconseillé d'utiliser le moteur MySQL:

il m'a assuré que MySQL posait des problèmes lorsque plusieurs utilisateurs se connectent et exécutent des requêtes simultanément. En remplacement, il voudrait utiliser un moteur Oracle. Ses affirmations me laissent sceptique, et j'aurais voulu approfondir le sujet (et si possible démontrer à mon boss, preuves à l'appui, que MySQL ne pose pas de problème)

Auriez-vous des liens vers des articles parlant des performances de MySQL et éventuellement des comparatifs avec d'autres moteurs ? et si possible, quelques exemples d'applications utilisant ce moteur à grande échelle (et qui fonctionnent bien)


Merci !
__________________
gg
Pill_S est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2005, 20h21   #2
Membre expérimenté
 
Inscription : mai 2005
Messages : 414
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 414
Points : 589
Points : 589
tu t'aventures sur un terrain dangereux.

Deja la confrontation avec ton responsable
Deuxiemement, tu veux comparer une ferrari à une 2cv... Libre à toi.

Mais tout ce que fait Mysql, Oracle sait le faire et généralement en mieux.

Maintenant, sur des petites volumétries et peu de connexions (surtout peu de mises à jour de la base), un Mysql est suffisant. (<100Go pour moins de 200 utilisateurs...)

Analyse cependant bien le besoin parce que Mysql a bcp de lacunes en termes de fonctionnalités... que tu te retrouves pas à vendre un produit à ton chef qui ne répond pas aux besoins...

Quand aux performances, peu de différences sur petits volumes, peu de MAJ et transactions simples mais des que tu montes, alors là c'est pas que Mysql est plus faible c'est qu'il ne tient même pas la comparaison...

Je te laisse ce lien sur le site :
http://sqlpro.developpez.com/cours/sqlaz/techniques/#L9

Je te conseille aussi la lecture du paragraphe 8.3 ! ca me fait toujours rire !!

maintenant il faut etre honnete si tu as une petite volumétrie <100Go, peu d'utilisateurs en MAJ, Mysql peut suffire ! j'ai dit peut suffire suivant les besoins fonctionnels de ton appli ! (mysql bcp de lacunes comme je le disais...)
gregory.broissard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2005, 23h14   #3
Membre Expert
 
Avatar de Pill_S
 
Homme Sébastien Piller
Consultant informatique
Inscription : janvier 2004
Messages : 1 618
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Piller
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Consultant informatique
Secteur : Finance

Informations forums :
Inscription : janvier 2004
Messages : 1 618
Points : 1 981
Points : 1 981
Envoyer un message via MSN à Pill_S
merci pour le lien, cet article (surtout le graphique) me donne une toute autre approche de ce SGBD.

Je vais encore réfléchir. Mais il est clair que j'avais entendu un tout autre son de cloche à propos de MySQL, et même qu'il était à la base de google !


A bientôt
__________________
gg
Pill_S est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2005, 03h50   #4
Futur Membre du Club
 
Inscription : mai 2005
Messages : 32
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 32
Points : 18
Points : 18
donc normallement, si on a aucun besoin de transactions, qu'on est l'unique utilisateur de la base, et que celle ci fait moins de 100 go, mysql sera bien plus rapide ?
killy-kun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2005, 06h37   #5
Membre expérimenté
 
Inscription : mai 2005
Messages : 414
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 414
Points : 589
Points : 589
oh là là ! bien plus rapide! ca me semble un bien grand mot.

Voici un test réalisé par un lecteur...

http://www.developpez.net/forums/viewtopic.php?t=373868

Attention les résultats mentionnés en 1er post sont erronés. Les vrais résultats sont plus bas dans le post.

Voici les résultats (en ms pour chaque requete utilisée => cf 1er post du topic en lien ci dessus):

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
Pour la petite base (110Mo)
Oracle :15 16 15 15 31 31
Postgre:16 23 16 16 31 31
MySql :16 60 50 30 00 00
 
Pour la base moyenne (2Go) : 
O:15 016 047 140 0500 0860
P:15 250 110 140 1390 1200
M:30 300 200 220 0000 0000
 
Pour la  "grosse" base (8Go):
O:15 0016 0700 1000 2000 04000
P:15 1730 0750 0900 4340 14000
M:60 1200 6890 7410 0000 00000
Entre parenthèses, on remarque que les 2 dernieres requetes de part leur complexité n'ont pas été passé sur Mysql (lacunes mysql.)

On remarque deja 35 ms de différence entre les 2 sur une volumétrie de 8Go et 6,4 secondes d'ecart sur la 4eme requete en 8Go !!!!

Par contre sur des petites bases, on voit bien que l'écart de temps n'est pas significatif entre les 2 (1 à 15 ms). Mais Oracle reste plus rapide sur l'ensemble des requetes testées ...

Donc non, Mysql plus rapide,j'y crois pas.. Peut etre sur des requetes super simples sur des volumétries très faibles ponctuellement
gregory.broissard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2005, 07h32   #6
Futur Membre du Club
 
Inscription : mai 2005
Messages : 32
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 32
Points : 18
Points : 18
vraiment tres bizarre tout ca ... tres tres meme ...

j'avais moi aussi vu un site, qui testait 6 ou 7 systemes, dont mysql, et la personne disait que son teste se voulait reveler la verite, a la difference des tests officiels ....

ainsi, avec ses tests, on voyait que mysql battait a plate couture les autres systemes sur la vitesse des requetes de select ... mais je ne me souviens plus de la page :/
killy-kun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2005, 07h51   #7
Membre expérimenté
 
Inscription : mai 2005
Messages : 414
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 414
Points : 589
Points : 589
oui sur des sites sponsorisés par Mysql . C'est souvent que l'on voit des trucs de ce genre sur les sites pronant l'open source à outrance...

Plus serieusement, si tu vas sur Oracle.com tu trouveras des benchmarks te montrant que Oracle est plus rapide que tous les autres; si tu vas sur ibm.com, c'est DB2 qui sera le plus rapide..

Souvent les tests sont incomplets dans la description. Ils te donnent pas les requetes SQL utilisées, ni les configs machines (est ce que deja c'est fait sur des machines identiques?), ni les configs des SGBD. En plus souvent ils prennent une méthode d'attaque de la base qui ne met pas tous les SGBD sur un plan d'égalite (ex : ODBC,PHP, JDBC); il est évident qu'il faut attaquer le moteur directement par le SQL pour avoir des tests représentatifs des perfs. Bref, je n'accorde que peu de crédit à ce genre de bench que ce soit pour Mysql, Oracle, DB2 ou les autres...

J'aimais bien le test qu'avait fait le lecteur car au moins il etait là pour répondre à nos questions sur les procédures de tests.

Donc finalement, je suis plus d'avis que chacun fasse ses tests... La boite ou je travaille (grand constructeur automobile) a l'habitude de tester tous les produits et actuellement MySql reste cloisonné sur des tous petits projets... Il doit bien y avoir une raison...
gregory.broissard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2005, 19h07   #8
Membre Expert
 
Avatar de Adjanakis
 
Inscription : avril 2004
Messages : 734
Détails du profil
Informations personnelles :
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : avril 2004
Messages : 734
Points : 1 281
Points : 1 281
Sur le test présenté, je trouve dommage qu'on n'ai choisi une version de MySQL datant de l'âge de pierre. Certes j'exagère un peu, mais avouer tout de même que depuis la version utilisée lors de ces tests, MySQL a fait d'énorme progrès en terme de fonctionnalités. Pour les performances je ne peux rien afirmer, mais j'en suis persuadé.

Ce problème de version tempère également les propos de l'article de sqlpro. Il est fait sérieusement et tout à fait vrai. Par contre, il est probablement basé sur une version de MySQL antédiluvienne étant donné que l'article date d'avril 2004 et que la version testée ne gère même pas les transactions.
Adjanakis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2005, 15h10   #9
Membre expérimenté
 
Inscription : mai 2005
Messages : 414
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 414
Points : 589
Points : 589
bof je ne pense pas que ce soit important. Même si Mysql progresse, il faut reconnaitre que ca reste vraiment en retrait en termes de fonctionnalités.

Et quand Mysql fait 3 pas en avant, Oracle ou DB2 en font 10 et enfonce le clou. Il suffit de voir par exemple la version 10g d'Oracle avec la gestion native du Java, la gestion du stockage et de l'exploitation de données XML, le principe de la grid, les outils d'admin, les packages PL permettant de faire des reorgs online, les outils de sauvegarde : RMAN, etc... Mysql est très loin de tout ca. Il commence à gérer les triggers, proc stock et transactions, c'est dire le retard!

Ca en va de même pour les performances, Oracle et les autres progressent aussi de version en version, et peut être plus vite aussi que Mysql. Il suffit de voir sur le site d'Oracle, il y a encore 5 ans, Oracle considérait 100Go comme une grosse base, maintenant c'est un début de moyenne volumétrie, la barre de la grosse base est placée entre 500Go et 1To..

Donc ces informations me semblent pas erronées parce que la version de Mysql date un peu.
gregory.broissard est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2005, 00h00   #10
Membre Expert
 
Avatar de Adjanakis
 
Inscription : avril 2004
Messages : 734
Détails du profil
Informations personnelles :
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : avril 2004
Messages : 734
Points : 1 281
Points : 1 281
Ca, je ne crois pas que qui que ce soit ici pense sérieusement que MySQL soit un meilleur SGBD qu'Oracle ou autre rolls. Par contre, ça reste à mes yeux une possibilité pour tous ceux qui n'ont pas une base de données de 1To ou qui n'ont pas l'utilité de la gestion native de java... en fait, cela sort même du cadre du bench proposé.

Ici il fallait comparer les temps de réponse des différents serveurs, mais on a pas pris le temps d'installer une version récente de MySQL. Je travaille en ce moment sur un sserveur 3.23.58 et sur un autre en version 5.0.3 et je sens une différence notable dans les temps de réponses et dans les fonctionnalités. Et par rapport à ça, je suis frustré de voir ce résultat.
Adjanakis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h16.


 
 
 
 
Partenaires

Hébergement Web