Salut
Sans rentrer dans un gros troll, j'aimerais avoir votre avis concernant la dernière version de MySQL. J'ai mis en place il y a un bout de temps déjà une base MySQL 3.22.32 qui est vite devenue énorme et qui m'a demandé beaucoup de boulot en optimisation afin d'avoir des perfs respectables. Plus je travaillais dessus et plus je me demandais s'il ne valait pas mieux tout migrer en Postgree, car pas mal de monde m'en disait du bien. Il y a quelque temps, la nouvelle version de MySQL est sortie, semblant avoir refait son retard sur Postgree. Qu'en est-il vraiment ? Quelqu'un a-t-il déjà comparé les deux solutions avec des grosses charges de données/trafic ?
# Re: MySQL/Postgree
Posté par Nicolas Boulay (site web personnel) . Évalué à 1.
"La première sécurité est la liberté"
[^] # Re: MySQL/Postgree
Posté par Moby-Dik . Évalué à 5.
Une exception intéressante, à prendre avec son lot de pincettes : http://www.sqlite.org/speed.html(...)
Une chose qu'oublient trop souvent ceux qui font ce genre de mesures, c'est que MySQL n'utilise pas les transactions par défaut (il faut paramétrer les tables spécialement). Donc quand tu lances une séquence de requêtes du type BEGIN; 25000 INSERTs; COMMIT, en réalité MySQL va écrire chacune des 25000 insertions séparément, tandis qu'un moteur transactionnel les écrira en une seule fois : pour que la comparaison soit plus juste, il faudrait par exemple enlever le "BEGIN..COMMIT" en réglant le AUTOCOMMIT à 1, de façon à ce que les moteurs transactionnels se comportent de la même façon ; ou alors au contraire fusionner les INSERTs par paquets de 50 ou 100, afin d'aider MySQL.
Sur des écritures bien pensées (INSERTs groupés par exemple), MySQL peut être très très rapide. Son principal handicap en termes de performance (il y a aussi le SQL moins puissant que celui des autres de SGBD) est en cas d'accès concurrents multiples. Avec le type de tables par défaut, une écriture en cours verrouille (i.e. fait attendre) les lectures et vice-versa : si tu as de très longues écritures sur une base qui doit être consultable en permanence, cela peut être rhédibitoire. Il paraît qu'utiliser le type de tables InnoDB résout le problème
Dernière chose : MySQL 4 (utilisable en production) inclut un cache de requêtes SQL, dont l'efficacité peut être redoutable dans certains types de situation : notamment si ta base est consultée très régulièrement mais qu'elle n'est mise à jour que de façon ponctuelle (cas typique d'un site Web "dynamique" n'ayant pas lui-même de système de cache).
# Re: MySQL/Postgree
Posté par rootix . Évalué à 3.
Regarde si ça peut te convenir.
MySQL est plus rapide mais ça a un prix forcément. Donc ça dépend de ton utilisation.
# Re: MySQL/Postgree
Posté par Xavier Teyssier (site web personnel) . Évalué à 2.
la nouvelle version de MySQL est sortie, semblant avoir refait son retard sur Postgree
Juste un petit détail : on peut dire qu'ils ont rajouté une partie des fonctionnalités qui manquaient et qui sont présentes sous PostGre, mais je ne pense pas que l'expression "rattrapper le retard" soit valable. Ces nouvelles fonctions de MySQL sont, justement, nouvelles, alors que sous PostGre, elles sont là depuis plus longtemps, donc éprouvés, donc plus sûr.
De manière générale, un soft plus vieux est plus mûr, et devrait moins souffrir de bug de jeunesse!
# Re: MySQL/Postgree
Posté par Linux_GTI . Évalué à 6.
Par contre PostgreSQL offre beaucoup de moyen pour gagner en vitesse. Entre autre, les requêtes complexes sous PostgreSQL peut nécessité 2 à 3 requêtes sous MySQL. Là il y a gain. De même PostgreSQL offre une grosse souplesse dans le vérouillage des tables. Tu peux initialiser une transaction alors que les tables sont modifiées par d'autres programmes. Sous Mysql, lorsque tu fais une transaction, les autres requêtes sont stoppées. De plus sous Mysql il y a le support de transaction mais que pour une table à la fois.
Donc si tu envisages de passer sous PostgreSQL, lis la doc, prend un café, réfléchis un bon moment sur les gains possibles. Si finalement une migration vers PostgreSQL avec optimisation peut prendre beaucoup de temps, considère qu'il est peut-être plus interressant de changer de hardware ...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.