Postgres Café : Déployer PostgreSQL distribué à grande échelle avec Citus Data

C’est l’heure du quatrième épisode de Café Postgres, un podcast de nos équipes de Data Bene et Xata où nous discutons de la contribution à PostgreSQL et du développement d’extensions. Dans ce dernier épisode, Sarah Conway et Gülçin Yıldırım Jelinek rencontrent Stéphane Carton pour parler de Citus Data, une extension entièrement open source de Microsoft qui permet de déployer PostgreSQL distribué à grande échelle.
Épisode 4 : Citus Data
La base de données Citus a connu 127 versions depuis le 24 mars 2016, date à laquelle elle est passée pour la première fois gratuite et open source pour son utilisation et ses contributions. Il s’agit d’un outil puissant qui fonctionne nativement avec PostgreSQL et s’intègre de manière transparente à tous les outils et extensions Postgres. Voici un résumé des points abordés dans cet épisode de podcast !
Répondre aux problématiques d’évolutivité, de performance et de gestion des grands jeux de données
Pourquoi Citus Data existe-t-il et quels problèmes résout-il ? Examinons cela par catégorie.
Développement
Citus est conçu pour résoudre le problème de la modélisation des données distribuées en fournissant des méthodes de cartographie de la charge de travail dans les modèles de données distribuées, telles que des tables de partitionnement basées sur des clés primaires (particulièrement utiles pour les microservices et les charges de travail à haut débit).
Évolutivité
En distribuant les données sur plusieurs nœuds, vous pouvez activer la mise à l’échelle horizontale des bases de données PostgreSQL.
Cela permet aux développeurs de combiner les capacités des processeurs, de mémoire, de stockage et des E/S de plusieurs machines pour gérer de grands ensembles de données et des charges de travail à trafic élevé. Il est possible d’ajouter facilement davantage de nœuds au cluster et de rééquilibrer les partitions au fur et à mesure que votre volume de données augmente.
Performance
Le moteur de requêtes distribué de Citus est utilisé pour maximiser l’efficacité, en parallélisant les requêtes et en regroupant l’exécution de plusieurs nœuds de travail.
Même lorsque des milliers, voire des millions d’instructions sont exécutées par seconde, l’ingestion de données est toujours optimisée via la récupération des bonnes partitions, la connexion aux nœuds appropriés et la parallélisation de certaines opérations. Tout cela garantit un débit élevé et une latence faible lors du traitement des données en temps réel.
Haute disponibilité et redondance
Grâce au modèle de données distribué, vous pouvez créer des copies redondantes des tables et des partitions sur plusieurs nœuds. Cela permet de garantir que la base de données reste résiliente et disponible même en cas de panne de nœuds, et maintenir ainsi une haute disponibilité.
Contribution à Citus
Chez Data Bene, notre objectif est de soutenir la dynamique du code source grâce au développement continu et aux contributions au code. Cédric Villemain, entre autres membres de notre équipe, évalue constamment de nouveaux ajouts de fonctionnalités ou autres améliorations qui peuvent faire une différence pour les utilisateurs.
Que vous fassiez partie d’une équipe DevOps qui cherche à créer une architecture distribuée pour vos instances PostgreSQL, ou que vous soyez un utilisateur final tel qu’un analyste commercial qui recherche des performances efficaces lors du traitement de grandes quantités de données, Citus Data peut être le meilleur choix.
Si vous avez des demandes ou des intérêts particuliers en matière de fonctionnalités, notre équipe de Data Bene vous aidera à contribuer directement à Citus Data ou pourra le faire en votre nom pour garantir la longévité du projet Citus et sa pertinence pour vos projets. Apprenez-en davantage sur la contribution à Citus Data en vous référant au dépôt officiel CONTRIBUTING.md.
Regardez l’épisode complet
Vous envisagez de regarder la discussion complète ? Découvrez-le sur YouTube :
Découvrez d’autres outils Postgres
D’autres épisodes sont en cours de publication au Postgres Café ! Abonnez-vous à la playlist pour plus d’interviews sur des outils open source comme StatsMgr pour une gestion efficace des statistiques PostgreSQL, pgzx pour la création d’extensions PostgreSQL à l’aide de Zig, etc. Laissez les experts vous présenter de nouvelles extensions à essayer pour optimiser vos déploiements Postgres.