PostgreSQL existe sous une forme ou une autre depuis 1986, mais la base de données relationnelle open source continue d’évoluer et de s'améliorer chaque année. Des startups comme Timescale ont trouvé que la base PostgreSQL était la clé pour construire leurs produits de base de données d’aujourd’hui, emboîtant le pas à d’entreprises comme EnterpriseDB (fournisseurs de solutions et services basés sur PostgreSQL) et confortant un peu plus la popularité de la base. En fait, EnterpriseDB vient de célébrer son 44e trimestre de hausse ininterrompue de ses revenus annuels. Cela fait 11 ans que PostgreSQL permet à EntrepriseDB de faire du business. Malgré cette stabilité dans la durée, la progression de la base de données n'a pas été linéaire. Ed Boyajian, le CEO d'EnterpriseDB, qui dirige l’entreprise depuis 13 ans, et avec lequel je me suis entretenu récemment, a évoqué les ingrédients essentiels qui ont permis à PostgreSQL de se maintenir et d’évoluer. En tête de ces ingrédients viennent les développeurs. Oui, les développeurs, qui continuent à faire évoluer le projet pour répondre aux besoins du cloud, tout en l'optimisant pour continuer à assurer les besoins les plus anciens, sur site.
Vers une modernisation des applications
Au fil des ans, le marché a évolué avec NoSQL et NewSQL et toutes les autres formes de bases de données imaginables. Nous sommes aussi passés par différents stades, entre les les infrastructures sur site jusqu’aux clouds publics et tout ce qui se trouve entre les deux. Au cours de ces nombreuses années, les développeurs ont adopté PostgreSQL, même si cette communauté a façonné et remodelé la base de données pour l'adapter aux workload. Très tôt, EnterpriseDB a essayé de coller à Oracle avec une couche de compatibilité qui permettait aux applications de s'exécuter sur PostgreSQL, tout en pensant qu'elles s'exécutaient sur la base de données Oracle. C'est ce qui a fait la réputation d’EnterpriseDB à ses débuts. Mais selon M. Boyajian, ce n'est plus vraiment la raison pour laquelle les entreprises adoptent PostgreSQL. Selon le CEO, environ un tiers des activités d'EnterpriseDB repose sur de nouveaux clients, dont la moitié sont des entreprises qui cherchent à migrer depuis une autre base de données, en général, Oracle. L'autre moitié de ces clients concerne des entreprises attirées par les applications modernes.
Cette évolution vers la modernisation des applications, sans rapport avec l'abandon de la base de données Oracle, pourrait s'accélérer pour PostgreSQL. « Ce changement s’est produit de façon spectaculaire au fil du temps », a déclaré M. Boyajian. « Il a eu lieu parallèlement à la modification intervenue dans la prise de décision concernant les bases de données, qui s’est retrouvée de plus en plus entre les mains des développeurs et des métiers. Si l’IT avait conservé cette prérogative, peut-être que les entreprises continueraient à tâtonner avec Oracle (ou tout autre base de données existante de leur choix), et qu’elles essaieraient encore de lui faire exécuter des workload, parce que c'est ce que l’IT a toujours fait. Mais comme souvent, quand on laisse les développeurs décider, on commence à voir émerger toutes sortes d'options de bases de données différentes, de MongoDB à PostgreSQL et beaucoup d'autres. Et si, comme l'a fait Stack Overflow, vous demandez à des dizaines de milliers de développeurs quelles bases de données ils aiment le plus, PostgreSQL arrive en seconde position après Redis.
Ce qui explique en partie l’engouement des développeurs pour PostgreSQL, c’est que la communauté a beaucoup travaillé à améliorer sa facilité d'utilisation. EnterpriseDB et d'autres contributeurs, entreprises et individuels, ont passé des années à rendre « Postgres plus facile à expérimenter et à consommer », a expliqué M. Boyajian. « La priorité de l'entreprise a été de faire en sorte que les derniers utilisateurs se sentent à l'aise et qu’ils puissent entrer plus rapidement et plus facilement dans l'écosystème Postgres ». Plus la communauté a amélioré l’usage, plus l'adoption s'est déplacée du marché des migrations Oracle vers celui du développement de nouvelles applications.
Le cloud n'est pas toujours la solution
Curieusement, l’usage n’est pas toujours orienté vers le cloud. Bien sûr, des fournisseurs comme AWS (mon employeur), Crunchy Data, Microsoft, Instaclustr, Google Cloud et d'autres ont fait un travail remarquable pour rendre PostgreSQL plus facile à utiliser en tant que service managé. Mais EnterpriseDB a réussi à maintenir ces 44 trimestres de croissance sans le moindre soupçon de service cloud. « Nous voyons bien que le contexte dans lequel les entreprises utilisent PostgreSQL est encore largement celui du datacenter traditionnel », a expliqué M. Boyajian. Mais par « contexte traditionnel », il faut comprendre qu’il peut s’agir d'un environnement virtualisé sous VMware, ou d'applications conteneurisées s'exécutant sur site, ou d'une instance PostgreSQL sur Microsoft Azure ou Amazon EC2.
Selon M. Boyajian, certains clients craignent de ne pas avoir la flexibilité et du contrôle dont ils pourraient normalement bénéficier avec leurs applications s'ils exécutaient la base de données en tant que service dans le cloud. « Si vous devez réparer quelque chose, vous ne pouvez plus le faire dans la base de données et vous devez le faire dans l'application. C'est un défi », a-t-il déclaré. Faut-il comprendre que EnterpriseDB ne proposera jamais de service cloud ? En fait, elle le fait déjà, via un partenariat avec Alibaba. Avec le temps, M. Boyajian pense que ses clients pousseront EnterpriseDB plus loin dans le cloud. Mais pour l'instant, la rentabilité de l’entreprise est sur le marché des développeurs qui veulent encore personnaliser leur base de données.