vendredi 12 février 2010

PostgreSQL, encore abonné aux étiquettes.

J'ai pu sur framablog la traduction d'un article cette phrase :
Il y a de grandes chances que la communauté privilégie des forks existants de MySQL, probablement MariaDB de Widenius, qui est déjà intégrée au Launchpad d’Ubuntu. PostgreSQL, l’autre grande base de données open source, ne devrait pas tant en profiter car elle semble moins adaptée aux besoins des sites Web.
Ce genre d'affirmation à l'emporte pièce me fait bondir. S'il est vrai que MySQL bénéficie d'un réflexe conditionné (presque pavlovien) de la part des développeurs de sites webs interactifs. Il dénote surtout que la stratégie de MySQL AB/Sun/Oracle (dans l'ordre chronologique) envers les utilisateurs a été payante. Malheureusement, ces derniers n'apprennent rien de l'histoire et des déboires qu'ils auraient pu rencontrer à l'encontre de leur SGBD favori. Non respect des normes (ce qui est peu important pour le développement web, tant pis si on s'aliène à un seul standard, celui de MySQL), une assez grande quantité de bugs, une non tenue de charge sur des volumes moyens (et parfois l'impossibilité de faire des modifications à posteriori) et pour finir les acquisitions multiples du produit par différentes société qui font planer l'incertitude sur l'avenir du moteur font que MySQL peut s'avérer à postériori un mauvais choix de design de Système d'information, y compris pour le Web.

Le second point qui me gène c'est l'étiquette qui est collée sur PostgreSQL de SGBD « mal adapté aux problématiques web ». Certes, pendant longtemps PostgreSQL n'a pas bénéficié du choix des concepteur de web utilisant Windows comme plate-forme, plate-forme qui est, rappelons le, minoritaire dans les serveurs de production alors qu'en développement on trouve énormément de développeur sous Windows qui reste l'OS Corporate par défaut (au moins on en connait le coût réel). PostgreSQL est bien adapté au Web. Il permet d'appréhender de manière simple et efficace tout projet de ce type et d'aborder sereinement l'évolution d'un site en terme de trafic et de quantité de données. Les mécanismes qu'il est possible de mettre en place au sein de PostgreSQL afin d'améliorer les performances sont robustes et fiables. La mise en place de PostgreSQL au sein d'une infrastructure web est simple et sécurisée. PostgreSQL n'a jamais souffert de bugs majeurs après une release, preuve d'un travail de qualité effectué par une communauté (et non une entreprise) bien organisée. Enfin, vous me direz et le support? Je répondrais simplement que le support communautaire est excellent et très réactif, et si cela ne suffit pas, nombre d'entreprises de par le monde offre des solutions de support avancé pour PostgreSQL.

Il n'y a beaucoup de raison de reconsidérer dès maintenant le choix de MySQL ou tout autre fork pour un projet stable et performant en toutes situations : PostgreSQL.