Re: pas convainquant...
Bonjour,
Avant toute chose, la synthèse faite pour chacune des produits ne joue pas vraiment sur les notes. La notation s'est faite de manière beaucoup plus détaillée.
Je pense que l'auteur a choisi de mettre en avant les outils d'administration PostgreSQL dans la synthèse car PostgreSQL traîne toujours une image de SGBDR complexe à administrer alors que ce n'est plus le cas depuis très longtemps. D'où le petit focus sur ce point.
Si c'est la phrase "Les outils pour administrateurs se révèlent parfois un peu limités." qui vous chagrine, elle ne parle pas des outils type PHPMyAdmin ou du client lourd - qui sont effectivement très bien -, j'y reviens plus bas dans les explications détaillées.
Pour ce qui est des versions de MySQL et PostgreSQL dont on a discuté, il s'agit bien des versions 5 et 8.3 - les versions stables de quand on a fait ce comparatif. La 5.1 n'était pas sortie quand on a travaillé sur ce comparatif et vu son cycle de release un peu chaotique, on n'avait pas trop d'idée de si elle allait sortir bientôt. Et même si on prenait la 5.1 maintenant, je ne pense pas que cela changerait grand chose.
Par ailleurs, je ne vois pas trop en quoi ce que vous dites contredit la notation qui a été faite. Il y a plein de gens qui sont contents de MySQL pour l'usage qu'ils en font, de même qu'il y a plein de gens satisfaits par PostgreSQL/Firebird/Ingres/Oracle/... Le fait que l'outil réponde à vos besoins ne veut pas dire qu'il est parfait (et c'est valable pour toutes les bases de données du comparatif, PostgreSQL 8.3 a ses points faibles également - réplication pas intégrée, partitionnement pas top du tout).
Je vais détailler les points où MySQL est en dessous de PostgreSQL (ça reste ma vision des choses, ça n'engage pas les autres membres du jury).
- Communauté (4.5 au lieu de 5) : communauté trop contrôlée par l'éditeur et pas assez ouverte. Ca commence à s'ouvrir avec l'arrivée de Drizzle et le départ de Monty Widenius. Le contrôle par l'éditeur et sa visibilité ont par contre amené le 5 sur la partie Offres commerciales
- Fonctionnalités (4 au lieu de 5) : manque de cohérence et finition de certaines fonctionnalités, vision des standards SQL parfois créatives, des fonctionnalités en moins mais aussi des fonctionnalités en plus mais pas toujours disponibles sur tous les moteurs.
- Robustesse (4 au lieu de 5) : problèmes de corruption avec MyISAM - ah, les REPAIR TABLE..., quand même pas mal de bugs (et même le créateur de MySQL a fait un article assez polémique sur la sortie de la 5.1 et il est encore plus critique par rapport à la 5 -
http://monty-says.blogspot.com/2008/1(...) ). L'objectif du fork Drizzle était aussi d'alléger et de fiabiliser MySQL et de revenir à ses fondamentaux. Clairement, il y a plein d'installations de MySQL qui marchent mais la robustesse, ça ne se mesure pas au "chez moi, ça marche". Et l'avis général, l'expérience des différents intervenants et même l'avis des gens qui travaillent sur MySQL est plutôt cohérent avec notre notation.
- Documentation (4.5 au lieu de 5) : ça reste subjectif mais je la trouve beaucoup beaucoup moins clair que la documentation PostgreSQL et la recherche moins pertinente. Ce qui est purement objectif, c'est ce dont je parlais dans un autre post : le regroupement de la documentation de toutes les anciennes versions en une. Ce n'est clairement pas acceptable : quand on se retrouve à remanipuler des MySQL 3.23 - oui, ça arrive -, ça devient vite sportif.
- Administration (4 au lieu de 5) : au niveau diagnostic suite à des problèmes d'exploitation, il y a encore des lacunes (ex : le slow_query en seconde, c'est vraiment vraiment très pénible : des gens ont même fait un patch pour ça). Il arrive régulièrement qu'on prenne en main une base MySQL et qu'on ait du mal à comprendre la raison des lenteurs parce qu'on ne peut pas descendre en dessous de la seconde alors qu'on a beaucoup de requêtes qui s'exécutent en 500 ms. Les outils de dump et de restauration sont également moins avancés. Les capacités de sélection de bases/schémas/tables lors du dump et même lors de l'import sont beaucoup plus avancées côté PostgreSQL. Plein de petites choses auxquelles on s'habitue très très vite et dont on a bien du mal à se passer. L'outil en ligne de commande (psql) est également beaucoup mieux pensé et beaucoup plus agréable à utiliser (et ça reste un des moyens d'administration très courant).
- Utilisation (4.5 au lieu de 5) : on parle ici de l'utilisation par les développeurs. Mon principal souci à ce niveau est le manque de détail du EXPLAIN pour analyser les plans d'exécution. Sur des requêtes complexes, c'est vraiment très très pénible. PostgreSQL, comme Oracle, propose des plans d'exécution beaucoup beaucoup plus lisibles.
- Déploiement (4.5 au lieu de 5) : gros souci sur la politique de versions mineures. Les versions mineures ajoutent des fonctionnalités et modifient des comportements, leur déploiement est parfois risqué (on a déjà planté des plates-formes sur des mises à jour *très* mineures de MySQL). Cela rend la maintenance beaucoup plus risquée qu'elle ne devrait l'être car pour profiter de la correction d'un bug, on a toujours le risque d'avoir des régressions. Je vous invite à lire les release notes de la branche 5. Les politiques de mise à jour pour les bases de données ont tendance à être beaucoup plus conservatrices.
C'est rapide, simplifié et limité à ma seule opinion (et donc contrebalancé aussi par l'opinion d'autres) mais ça donne une petite idée des discussions qu'il a pu y avoir.
Ensuite, pour reprendre ce que disait un autre internaute, ça fait une différence d'1/2 point au final...
--
Guillaume