6 min de lecture
Maintenant disponible sur Scalingo - PostgreSQL 12
PostgreSQL 12 est désormais la nouvelle version par défaut sur Scalingo. Comme d'habitude, la mise à niveau est un processus facile en un clic.

Nous venons de publier la dernière version majeure de la base de données PostgreSQL. PostgreSQL 12 est désormais la nouvelle version par défaut lorsque vous provisionnez une base de données. Comme d'habitude, la mise à niveau est un processus facile en un clic.
Quoi de neuf dans PostgreSQL 12 ?
Avec 30 ans d'expérience, le système de gestion de bases de données PostgreSQL continue de s'améliorer et d'innover avec cette nouvelle version majeure. Pour une liste complète des nouveautés de cette version, vous pouvez consulter le journal de modifications officiel. Nous aborderons dans cet article de blog les plus notables.
Améliorations globales des performances
L'amélioration des performances la plus significative incluse dans cette version concerne la manière dont les indices modifiés fréquemment sont stockés. Certains tests montrent une réduction de 40 % de l'utilisation de l'espace en moyenne et de meilleures performances des requêtes !
Les requêtes sur les tables partitionnées ont également été améliorées. Si vous utilisez cette fonctionnalité, vous devriez vraiment faire la mise à niveau pour bénéficier d'une amélioration significative des requêtes de lecture, mais aussi pour écrire des données dans des tables partitionnées.
Meilleure mise en œuvre des conventions SQL
PostgreSQL a toujours essayé de suivre la norme SQL autant que possible. Cette version améliore cette mise en œuvre de quelques manières.
Tout d'abord, il est désormais possible d'exécuter des requêtes sur des documents JSON grâce au langage de chemin SQL/JSON. Vous pouvez vouloir utiliser ce langage pour interroger les documents enregistrés dans le format JSONB.
Cette version ajoute également le support des colonnes générées. Ce type de colonne calcule des valeurs en fonction d'autres colonnes de la même table.
Quelques changements de compatibilité
Comme pour toute nouvelle version majeure, la mise à niveau vers PostgreSQL 12 doit être soigneusement étudiée car quelques incompatibilités existent avec les versions précédentes. Vous pouvez trouver une liste complète dans la documentation officielle. Vous pouvez vouloir parcourir ce document pour vous assurer que votre code fonctionnera toujours avec PostgreSQL 12.
Processus de mise à niveau
Comme d'habitude, le processus de mise à niveau sur Scalingo est aussi simple que de cliquer sur un bouton sur le tableau de bord de la base de données. L'image suivante montre le message que vous verrez sur votre tableau de bord de base de données si vous exécutez la dernière version 11 (c'est-à-dire PostgreSQL 11.6 au moment de l'écriture) :

Cette mise à niveau peut prendre du temps pour les plus grandes bases de données. Elle induira une période d'indisponibilité, même pour les bases de données utilisant un plan d'affaires, car PostgreSQL nécessite un redémarrage complet de tous les nœuds pour effectuer une mise à niveau de version majeure. La durée de la période d'indisponibilité dépendra du volume de données stockées dans la base de données.
Pour une mise à niveau mineure (c'est-à-dire 11.5 vers 11.6 ou 10.10 vers 10.11), les bases de données utilisant un plan d'affaires bénéficieront d'avantages avec presque aucune indisponibilité durant la procédure de mise à niveau.
Comment vérifier que votre projet fonctionne avec PG 12 ?
Vous pouvez trouver les images Docker correspondantes sur notre dépôt Docker hub. Notez que les images 10.10.0-6 et 11.5.0-5 n'ont pas réussi à s'exécuter sur un environnement de développement. Nous avons corrigé cela dans les images 10.11.0-1 et 11.6.0-1. L'image 12.1.0-1 fonctionne également localement.
Il est fortement conseillé de tester que votre code fonctionne toujours avec la nouvelle version de la base de données. Pour faciliter cette tâche, vous pouvez tirer la version PostgreSQL dont vous avez besoin de notre dépôt public Docker hub repository et la tester localement, avec votre code, sur votre poste de travail avant de mettre à jour. Vous pouvez également obtenir le même conteneur que nous avons construit pour votre application et qui fonctionne sur notre infrastructure en utilisant notre Addon d'image Docker.

Étienne Michon
Docteur en informatique, Étienne Michon occupe actuellement le poste d'ingénieur R&D chez Scalingo. Il était l'un des premiers employés de Scalingo et il contribue grandement à faire grandir ce blog grâce à ses articles techniques de qualité.
Restez informé
Recevez des articles et des mises à jour de la plateforme dans votre boîte de réception.
Prêt à déployer en toute confiance ?
Découvrez des déploiements sans temps d'arrêt, une mise à l'échelle automatique intelligente et une infrastructure entièrement gérée. Commencez à déployer vos applications sur Scalingo dès aujourd'hui.
Aucune carte de crédit requise • Déployez en quelques minutes • Annulez à tout moment





