Lettre d'information de Dalibo

L'actualité de PostgreSQL et de ses projets satellites. Février 2012.

Événements

Nouvel article sur PostgreSQL

GNU/Linux Magazine France vient de publier un nouvel article sur PostgreSQL, écrit par Guillaume Lelarge. Cet article est la deuxième partie de l'article du mois précédent.

Il s'agit du magazine 146 de février 2012:

http://www.ed-diamond.com/produit.php?ref=lmag146&id_rubrique=1

À noter qu'un autre article sur PostgreSQL est disponible dans ce numéro : « PostgreSQL 9 pour le sysadmin ».

PostgreSQL Sessions #3

Plus de 60 personnes sont venues aux PostgreSQL Sessions #3. Le thème de la réplication intéresse toujours autant de monde !

La journée a commencé avec la Keynote de Jean-Paul Argudo. Après avoir expliqué la théorie et quelques termes sur la réplication, il a fait une présentation rapide des différentes solutions de réplication disponibles pour PostgreSQL. Le but était d'avoir une bonne compréhension des termes et des produits disponibles.

Michael Paquier a parlé de la solution qu'il développe au sein de l'entreprise NTT, à Tokyo. PostgresXC est une solution de réplication, basée sur un fork de PostgreSQL. Le but est d'offrir de la scalabilité sur l'écriture car toutes les autres solutions de réplication permettent une scalabilité seulement sur la lecture, ce qui peut devenir une limitation gênante dans certains cas. Michael a expliqué l'historique du projet, les derniers développements et a parlé un peu du futur. Il a notamment évoqué la sortie de la première version stable, prévue pour l'instant pour avril 2012.

Ludovic Levesque a présenté l'utilisation de Londiste au sein de Fotolia (http://fr.fotolia.com/). Les présentations d'utilisations réelles sont souvent très appréciées et cette dernière en fut un bon exemple.

Le futur de la réplication dans PostgreSQL a été discuté par Simon Riggs. Il a notamment parlé de développements en cours pour obtenir de la réplication symétrique (plusieurs maîtres) avec PostgreSQL. Il est toujours intéressant de voir ce que les développeurs de PostgreSQL ont l'intention de faire. Un prototype est déjà réalisé, mais il ne faut pas s'attendre à voir cette fonctionnalité arriver pour la version 9.2 de PostgreSQL. Il serait déjà bien d'avoir cela pour la version 9.3, vu le travail que cela représente encore.

Guillaume Lelarge a ensuite présenté des cas d'utilisation de la réplication où Slony a toujours l'avantage. Même si la réplication interne de PostgreSQL est généralement à privilégier, il n'est quelque fois pas possible de l'utiliser à cause de ses limitations. Et c'est là que des solutions comme Slony ou Londiste sont pratiques. Guillaume a parlé de réplication en cascade, de réplication croisée, de répartition de charge, etc. Tous les exemples présentés sont des cas réels, en production chez des clients de Dalibo.

Nicolas Thauvin a terminé cette session avec une présentation des bonnes pratiques autour de la réplication interne de PostgreSQL.

De nombreuses pauses et une coupure déjeuner longue ont permis aux participants de discuter entre eux et avec les conférenciers de leur utilisation de PostgreSQL au quotidien ou à venir. Nous espérons que cette journée a pu leur apporter quelques idées !

Les présentations des conférences sont disponibles sur http://www.postgresql-sessions.org/3/start. Certaines manquent encore, mais nous espérons corriger cela rapidement.

FOSDEM 2012

Du 4 au 5 février a eu lieu le FOSDEM, à l'université de Bruxelles. Le FOSDEM est le rassemblement des développeurs de Logiciels Libres. De nombreuses conférences sont proposées, et des stands accueillent les visiteurs.

Cette année, il y avait huit conférences sur PostgreSQL :

  • Ensuring uptime in a small startup, par Apostolos Bessas ;
  • Create a Foreign Data Wrapper in 15 minutes, par Damien Clochard ;
  • PostgreSQL Clustering with Red Hat Cluster Suite, par Devrim Gündüz ;
  • Multi-CPU performance in PostgreSQL 9.2, par Heikki Linnakangas ;
  • Hooks in PostgreSQL, par Guillaume Lelarge ;
  • Managing rights in PostgreSQL: from the basics to SE-PostgreSQL, par Nicolas Thauvin ;
  • PostgreSQL on NFS, par Koen Martens ;
  • Database Virtualization, par David Fetter.

Il y avait environ 40 personnes pour chaque conférence, sauf celle d'Heikki pour qui la salle était bien trop petite pour contenir tous ceux qui voulaient y assister.

Les présentations des conférences devraient bientôt être disponibles sur http://wiki.postgresql.org/wiki/FOSDEM_2012.

Les présentations des conférences données par Damien Clochard, Guillaume Lelarge et Nicolas Thauvin sont aussi disponibles sur dalibo.org:

Quant au stand PostgreSQL, il a accueilli de nombreux visiteurs. De nombreux contributeurs européens (et un américain) étaient présents pour répondre aux questions techniques (et vendre des “goodies”).

Actualité des produits dérivés

  • Slony-I 2.1.1 & 1.2.23, un système de réplication basé sur les triggers pour PostgreSQL, http://www.slony.info/

Avancées sur PostgreSQL

Le travail sur la version 9.2 continue.

Un nouveau mode de réplication a été introduit. Avec “synchronous_commit” à la valeur “write”, la réplication se fait seulement en mémoire sur le serveur esclave, donc plus sur disque, ce qui donne plus de performances si l'utilisateur accepte de diminuer légèrement le niveau de durabilité.

L'outil pg_basebackup peut être enfin utilisé sur les serveurs esclaves après une vérification préalable. La sauvegarde des fichiers suit la procédure recommandée, tout en s'assurant que les écritures de pages partielles sont évitées.

Le type JSON est maintenant géré par PostgreSQL. Cela fonctionne à peu près comme le type XML. Le stockage d'une donnée JSON se fait à partir du moment où la donnée est valide. Quelques fonctions d'utilisation d'une colonne JSON ont été ajoutées.

Au niveau de la supervision, il y a eu quelques changements. La vue pg_stat_activity contient maintenant un champ séparé indiquant l'état du processus serveur (en cours d'exécution / en attente d'une requête / en attente d'une requête dans une transaction / etc). Le champ de la requête contient donc soit la requête en cours d'exécution soit la dernière requête exécutée. Le champ procpid a été renommé en pid pour plus de cohérence avec la vue pg_locks. La vue pg_stat_database précise en plus maintenant le nombre et la taille totale des fichiers temporaires utilisés par chaque base. Un compteur de deadlocks a aussi été ajouté.

Voici quelques-unes des autres améliorations/fonctionnalités :

  • support de l'instruction CREATE TABLE (LIKE …) pour les vues et les tables distantes ;
  • support de la clause IF EXISTS pour les commandes ALTER, ce qui facilite l'écriture de scripts de mise à jour de schémas ;
  • ajout de l'option TIMING à la commande EXPLAIN pour éviter la surcharge occasionnée par le chronométrage d'une requête ;
  • gestion des opérateurs AND, OR et NOT pour le type de données macaddr ;
  • ajout d'un message suggérant l'utilisation de psql lorsque pg_restore est utilisé avec une sauvegarde au format texte/SQL ;
  • possibilité de reférencer les paramètres par des noms pour les fonctions en langage SQL ;
  • un utilisateur peut annuler ses propres requêtes avec pg_cancel_backend()… auparavant, seul un superutilisateur pouvait le faire ;
  • ajout de la fonction pg_trigger_depth() ;
  • ajout des options –auth-local et –auth-host à la commande initdb ;
  • support de la compilation de PostgreSQL sous MS Visual Studio 2010 ;

Avancées sur pgAdmin

Les correctifs continuent sur la branche 1.14. Dave Page a ajouté 6 correctifs, et Guillaume Lelarge en a ajouté 5.

Le travail de support de la 9.2 a été continué par Guillaume :

  • gestion des droits sur les types ;
  • gestion de l'option security_barrier pour gérer les vues ;
  • gestion de la nouvelle option TIMING sur l'EXPLAIN ;
  • gestion des options de section pour pg_dump/pg_restore ;
  • gestion du renommage des domaines ;
  • gestion des nouveaux champs des statistiques pg_stat_activity et pg_stat_database.

De plus, Guillaume a amélioré un peu l'interface du navigateur dans le constructeur graphique de requêtes.

Avancées sur les produits satellites

Les versions 3.0.6 et 3.1.2 de pgpool-II sont sorties toute fin janvier. La sortie a été un peu précipitée suite à la correction d'une boucle infinie tout juste découverte.

Il y a eu un regain de développement sur check_postgres.pl. Deux nouveaux commiters sont arrivés dans le projet.

Deux nouvelles versions correctives de Slony sont sorties. La 1.2.23 corrige le failover sur les versions 9.0 de PostgreSQL et transforme les fonctions slon_quote en fonctions IMMUTABLE. Quant à la 2.1.1, elle améliore le support de PostgreSQL 9.1, corrige la commande FAILOVER lors de son utilisation avec une origine ayant plusieurs ensembles et corrige aussi le support de la réplication de la commande TRUNCATE. D'autres correctifs mineurs ont aussi été intégrés dans ces versions.

Sessions de formation

Dalibo organise régulièrement des sessions de formation à Paris et en province. Les prochaines sessions inter-entreprises auront lieu aux dates suivantes :


→ 6-9 février, formation PostgreSQL Avancé
→ 15-17 février, formation Administration PostgreSQL
→ 27-28 février, formation Haute-disponibilité
→ 14-16 mars, formation Administration PostgreSQL
→ 27-28 mars, formation Migration Oracle vers PostgreSQL

N'hésitez pas à nous contacter pour tout besoin de formation en intra-entreprise.

Dernières versions

Depuis le 5 décembre 2011 :

  • 9.1.2
  • 9.0.6
  • 8.4.10
  • 8.3.17

Versions obsolètes :

  • 8.2.23
  • 8.1.22
  • 8.0.26
  • 7.4.30

Informations générales

Cette lettre d'information présente l'actualité francophone et internationale de PostgreSQL et de ses logiciels satellites. Elle vous est proposée par la société Dalibo.

Dalibo est une société d'expertise sur PostgreSQL et tous ses projets satellites.

Dalibo peut vous accompagner dans la mise en œuvre efficace et professionnelle de PostgreSQL. Qu'il s'agisse d'un nouveau projet ou de la migration d'un existant, notre équipe d'experts se tient à votre disposition.

Si vous ne souhaitez plus recevoir cette lettre, envoyez simplement un courriel à l'adresse : newsletter-desabonnement@listes.dalibo.com

Vous pouvez retrouver cette lettre à l'adresse suivante :

http://dalibo.org/fevrier_2012

Afficher le texte source