LOXODATA

Retour sur la PG Conf Europe 2023

2024-02-16   1481 mots, 7 minutes de lecture

Retour sur la PG Conf Europe 2023

Cette année, la PostgreSQL Conference Europe 2023 s’est déroulée à Prague en République Tchèque. 2023 sera l’année d’un nouveau record de participation : 720 participants ! C’est un record pour l’ensemble des conférences PostgreSQL mondiales.

Un record de participation

La logistique autour de l'évènement a été la hauteur de ce record au sein de l’hôtel Clarion Congress, bâti pour accueillir ce genre de conférences.

Le soir, nous en avons profité pour visiter le centre ville de Prague (Praha pour les intimes) et son patrimoine culturel et gastronomique. Il faut dire qu’il y a plein de choses à voir, et nous ne sommes pas les seuls, tant les touristes sont nombreux à visiter la ville et son marché de Noël, ainsi que sa fameuse horloge astronomique.

Horloge astronomique

L'évènement s'étale sur quatre jours, mais nous n’assisterons qu’aux trois jours de conférences. La première journée est réservée aux sessions de formations organisées par les sponsors. Avec trois salles, et une quatrième destinée aux sponsors, les sujets ne manquent pas. Les talks sont nombreux, et il faut faire un choix parmi eux. Heureusement, nous étions quatres collègues cette année à participer, et nous avons pu nous répartir sur les différents sujets en fonction des affinités de chacun.

La liste des présentations est disponible sur le site de la conférence : https://2023.pgconf.eu/, et vous retrouverez pour certaines présentations le support mis à disposition et la vidéo de la conférence. C’est une première cette année, les conférences étaient enregistrées (sous réserve d’acceptation par le conférencier).

La présentation d’ouverture a été donnée par Simon Riggs, avec un sujet intéressant, à savoir : quelles seraient les 20 prochaines années de PostgreSQL. Simon nous livre sa vision du futur de PostgreSQL, avec de plus en plus d’adhésions, de nouvelles fonctionnalités, un niveau de qualité toujours plus élevé.

Simon Riggs

Puis, nous nous sommes répartis sur les différentes salles de conférences pour cette première journée.

Jonathan S. Katz nous a fait la présentation, qu’il a nommé comme un précédent article de blog qu’il avait écrit avec le nom évocateur Vectors are the new JSON, de l’extension pgvector et comment PostgreSQL peut servir de base de données vecteurs pour des applications d’IA générative, en faisant le tour des index implantés, les opérateurs de distance et les algorithmes de recherche, ainsi que l’impact de TOAST sur les vecteurs.

Vectors are the new JSON

Peter Eisentraut, quant à lui, nous a proposé un sujet sur le standard SQL, et comment il serait bénéfique à tous d’y participer et de soutenir plus les travaux futurs. Il nous a résumé les derniers changements apportés sur la norme SQL 2023 publié en juin 2023.

The SQL standard: Where does it come from ? Where does it go ?

Heikki Linnakangas nous proposait de faire le point sur un sujet qui déchaîne la mailing-list des hackers, celle d’une architecture PostgreSQL multi-thread et de l’avancée de la réflexion sur le sujet, les freins et les enjeux d’un tel changement s’il avait lieu.

Multi-threaded PostgreSQL ?

Taras Kloba, qui nous vient d’Ukraine et travaillant chez SoftServe, nous a présenté différents cas d’usage de PostgreSQL et PostGIS sur le théatre d’opérations ukrainien et comment ses données étaient utilisées par l’armée ukrainienne.

From Map to Reality: Using PostGIS in Warfare

Karen Jex nous a proposé de faire le tour des paramètres de PostgreSQL, ceux qu’il est nécessaire de modifier en production, où et dans quel contexte.

Tuning PostgreSQL to work even better

Daniel Westermann nous a fait un point sur les mesures d’IO offertes par les vues de pg_stat_io disponibles depuis la version 16 de PostgreSQL et l’importance d’activer le paramètre track_io_timing pour générer ces statistiques.

Getting the most out of pg_stat_io

Jonathan S. Katz nous proposait une deuxième présentation sur la réplication logique, les dernières fonctionnalités présentes en version 16 et 17, les futures fonctionnalités prévues et une éventuelle roadmap autour d’une réplication active-active, avec ses avantages et ses inconvénients.

The journey towards active-active replication in PostgreSQL

Robert Haas s’est penché sur la démystification de l’autovacuum, comment ce dernier fonctionne et comment il peut échouer, et dans ce cas Robert nous livre ces conseils sur l’identification de ces cas et leurs résolutions.

Understanding and Fixing Autovacuum

Devrim Gündüz nous a offert un glossaire exhaustif de nombreux termes et acronymes utilisés par PostgreSQL. Nouveaux termes pour les débutants, piqûre de rappel utile pour les experts.

Know the less known: A PostgreSQL Glossary

Laurenz Albe nous a livré une présentation de la corruption de bases de données, ses causes et ses effets, comment les détecter, comment les prévenir et l’importance d’avoir de bonnes sauvegardes.

How to corrupt your database (and how to deal with data corruption)

Marco Slot nous proposait de faire le tour des architectures distribuées pour PostgreSQL, les différentes couches sur lesquelles intervenir et les nombreux compromis que l’on doit faire selon l’architecture choisie.

PostgreSQL Distributed: Architectures & Best practices

Matt Cornillon nous a partagé sa passion pour Pokémon, et nous a montré par l’exemple comment mettre en place un système de reconnaissance de cartes Pokémon basé sur PostgreSQL et l’extension pgvector, et l’utilisation de différentes techniques d’IA et de machine learning pour y aboutir.

How I found my Pokémon cards thanks to Postgres: an AI journey

Au cours de la deuxième journée, Julia Gugel nous a rappelé quelles étaient toutes les méthodes d’authentification avec PostgreSQL du fichier pg_hab.conf aux règles RLS niveau ligne, sans oublier la sécurité physique des serveurs.

PostgreSQL Security: The defense line for your data

Muhammad Usama s’est quand à lui attelé à nous présenter dans ses moindres détails l’outil pgpool qui ne se résume pas simplement à la gestion de connexions mais bien plus, dans quel cas d’usage utiliser pgpool et un travail pour passer à architecture multi-thread.

Pgpool - What, Why, and Where?

Ants Aasma s’est penché pendant sa présentation sur les problèmes liés à la construction de filtres basés sur les facettes et la nécessité de compter les éléments, et comment les roaring bitmap pouvaient répondre à cette problématique, en étant beaucoup plus performant, à travers l’extension pg_roaringbitmap, ou pg_faceting tout en traitant les points durs induits par l’utilisation de bitmap.

Counting things at the speed of light with roaring bitmaps

Après la pause café – café qui aurait mérité d'être plus corsé – Chris Ellis nous a montré comment PostgreSQL pouvait être utilisé pour gérer les données issus de capteur de l’IoT, et quelles étaient les fonctionnalités de PostgreSQL les plus utiles pour arriver à ses fins.

IoT with PostgreSQL

Chelsea Dole nous a proposé de revoir le partionnement sous PostgreSQL, comment le mettre en place en production sur des tables existantes et différentes astuces pour l’administration de ces dernières.

It’s Not You, It’s Me: Breaking Up with Massive Tables via Partitioning

Greg Vernon s’est attelé à nous parler de haute disponibilité, ou plutôt comment faire de la bonne disponibilité, quels sont les compromis à réaliser et ce qu’il faut plutôt privilégier pour assurer l’administration de PostgreSQL selon les objectifs de disponibilité attendus.

Don’t Do High Availability, Do Right Availability

Tomas Vondra s’est livré au délicat exercice de montrer l’interaction entre PostgreSQL et les systèmes de fichiers du système d’exploitation, quels étaient ceux qui performaient le mieux avec PostgreSQL et les futurs travaux concernant la gestion des IO sur PostgreSQL.

Postgres vs. Linux filesystems

Andres Freund de son côté nous présentait les travaux en cours pour que PostgreSQL puisse utiliser les IO asynchrones, quels seraient les gains et quelles fonctionnalités en profiteraient dans les prochaines versions de PostgreSQL.

The path to using AIO in postgres

Pour la dernière journée, Bertrand Drouvot est revenu sur les travaux effectués autour de la réplication logique depuis un standby, fonctionnalité disponible dorénavant depuis la version 16.

Postgres 16 highlight: Logical decoding on standby

Stefan Fercot, désormais chez Data Egret, nous a livré une présentation très tehcnique sur pgBackRest, sur le système d’archivage, la supervision de l’archivage et des sauvegardes, et la nécessité de tester la restauration depuis ces sauvegardes.

What can’t pgBackRest do for you?

Hamid Akhtar, quant à lui, s’est livré à la présentation très détaillée de la mécanique interne des WAL, une bonne entrée en matière pour les débutants afin de découvrir beaucoup de fonctionnalités de PostgreSQL.

PostgreSQL Write-Ahead Logging (WAL): The Internals of Reliability and Recovery

Pavlo Golub, de chez Cybertec, nous a présenté l'écosystème existant de supervision de PostgreSQL, puis a détaillé l’outil pgwatch2, pour finalement présenter la future version pgwatch3 qui est une réécriture du précédent outil.

Professional PostgreSQL monitoring made easy

Alicja Kucharczyk nous a proposé en fin de conférence une présentation de pgbadger et un ensemble de bonnes pratiques autour de l’utilisation de ce dernier.

Leveraging pgBadger for Effective PostgreSQL Troubleshooting

Ce fut cette année encore une conférence riche en présentations de tout niveau, certaines non techniques. Bref, il y en avait pour tout public.

Récemment, nous avons appris que la prochaine édition devrait se tenir à Athènes, en Grèce.