Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Message DB : une boîte à outils d'événements et de messages pour la base de données PostgreSQL
Mis au point par le projet Eventide

Le , par Bill Fassinou

47PARTAGES

6  0 
Le projet Eventide a présenté tôt ce mois Message DB, une boîte à outils d'événements et de messages complets implémentés dans PostgreSQL pour les applications Pub/Sub (Publish-Subscribe), Event Sourcing, messagerie, et Evented Microservices (microservices événementiels). Message DB a été développé pour faciliter la tâche aux utilisateurs et leur permettre d’écrire leurs propres clients dans la langue de leur choix. Selon l’équipe du projet Eventide, Message DB est construit sur Postgres et peut être déployé dans un environnement local ou dans le cloud.

Message DB est une implémentation du minimum de fonctionnalités essentielles des applications événementielles, à l'architecture de service et au traitement des flux, mais sans les frais généraux liés à l'exploitation d'une infrastructure à grande échelle. Selon l’équipe du projet Eventide, vous pouvez utiliser Message DB lorsque vous souhaitez profiter des avantages de l'architecture événementielle, mais que vous ne voulez pas ou n'avez pas besoin des compromis des technologies natives à l'échelle super-massive, comme les clusters Event Store ou Kafka.

Selon sa documentation, Message DB s'appuie sur la technologie de stockage de données éprouvée que vous connaissez déjà et en laquelle vous avez confiance, soutenue par d'innombrables options de cloud et d'hébergement comme AWS, Google et Heroku. Message DB prend en charge la lecture et l'écriture d'événements et de commandes dans les flux et les catégories, Pub/Sub, l'échelle horizontale à travers les groupes de consommateurs et la protection de la concurrence via les écritures avec un numéro de séquence attendu.


En d’autres mots, il donne accès à des fonctions permettant d'écrire des messages dans des flux et de lire des messages provenant de flux d'entités et de catégories. Les messages sont stockés dans un seul tableau. Il prend également en charge un mécanisme de clé d'idempotence, les écritures sérialisées, l'analyse des noms de flux et de nombreuses autres fonctionnalités. Selon l’équipe de développement, Message DB peut être installé sous la forme d'un paquet Ruby Gem, d'un paquet NPM, ou peut simplement être cloné à partir de son référentiel GitHub.

Message DB propose également une API qui fournit une interface des fonctions du serveur Postgres qui peut être utilisée avec n'importe quel langage de programmation ou via l'outil en ligne de commande psql. L'interaction avec la mémoire sous-jacente via les fonctions du serveur Postgres garantit une écriture et une lecture correctes des messages, flux et catégories. Vous pouvez écrire un message au format JSON dans un flux nommé, en spécifiant éventuellement des métadonnées au format JSON et un numéro de version attendu.

Ensuite, vous pouvez récupérer les messages à partir d'un seul flux, en spécifiant éventuellement la position de départ, le nombre de messages à récupérer et une condition supplémentaire qui sera ajoutée à la clause WHERE de la commande SQL. De même, vous pouvez aussi récupérer les messages d'une catégorie de flux. La référence complète pour l’API est spécifiée sur le dépôt GitHub officiel du projet. Par défaut, le seul tableau de stockage des messages est nommé “message_store”. Un schéma et un rôle d’utilisateur sont aussi créés par défaut et nommés “message_store”.

Message DB est open source et publié sous la licence MIT. Vous pouvez également découvrir plus à son sujet grâce à sa documentation. Voici un aperçu des fonctionnalités de Message DB :

  • Pub/Sub ;
  • données des messages au format JSON ;
  • flux d'événements ;
  • catégories de flux ;
  • métadonnées ;
  • files d'attente de messages ;
  • stockage des messages ;
  • groupes de consommateurs ;
  • hébergeur de service ;
  • outils d'administration ;
  • rapports ;
  • etc.


Sources : Message DB, GitHub

Et vous ?

:fleche: Qu'en pensez-vous ?

Voir aussi

:fleche: PostgreSQL 9.5 disponible en téléchargement, le SGBDRO embarque la fonction UPSERT et mise sur le Big Data et la sécurité

:fleche: PostgREST : un serveur Web autonome qui transforme une base de données PostgreSQL directement en une API RESTfu

:fleche: Microsoft fait l'acquisition de Citus Data l'extension qui transforme PostgreSQL en une base de données distribuée

:fleche: PostgreSQL 9.4 mise sur la flexibilité, la scalabilité et les performances. La solution introduit le format JSONB pour cibler le marché du NoSQL

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de SQLpro
Rédacteur https://www.developpez.com
Le 18/12/2019 à 13:20
Par comparaison, cette technique dite SODA (Service Oriented Database Architecture), c'est à dire du SOA au niveau de la couche de base de données existe dans d'autres SGBDR comme Microsoft SQL Server sous le nom de "Service Broker" et a été implémenté à partir de la version 2005 de SQL Server.
https://blog.developpez.com/sqlpro/p...service_broker

La SNCF l'utilise à l'échelle nationale pour gérer les flux financiers (numéraire, chèques, bon, carte bancaire...) aux guichets de toutes les gares qui, par le biais de la version Express (gratuite) de SQL Server remonte au serveur national l'état de trésorerie de la vente en continu (projet Nefertiti)

A +
3  0