Loading AI tools
De Wikipédia, l'encyclopédie libre
Data Distribution Service ou DDS est une norme (ou standard de jure) spécifiée par l'OMG (Object Management Group), dont le rôle est de proposer une technologie évoluée d'échanges de données via un réseau. Conceptuellement, les données échangées sont regroupées dans une notion d'Espace Global de Données EGD (ou GDS, Global Data Space en anglais). Contrairement aux technologies de base de données, cet espace de données est totalement distribué dans le réseau pour éviter les problématiques liées aux goulots étranglements et aux pannes des gestionnaires de données.
Fonctionnellement, cette technologie, s'apparente aux systèmes de base de données relationnelles et distribuées mais elle relâche certaines contraintes d'intégrité jugées incongrus avec le traitement en temps réel, tel que le maintien de cohérence forte entre les copies des données ou les mécanismes d'isolations. Contrairement aux systèmes de base de données, DDS prône plutôt un modèle de cohérence dit modèle de (cohérence à terme, Eventual consistency).
Grâce à l'adoption d'un Protocole d’interopérabilité standard RTPS (Real-Time Publish/Subscribe Protocol), plusieurs implémentations émanant de constructeurs différents peuvent interopérer, ce qui contribue a l’émergence de systèmes ouverts, par opposition aux protocoles propriétaires contrôlés par une seule organisation.
La technologie DDS s'adresse principalement aux industries soumises à de fortes contraintes de fiabilité, de performances et déterminisme, telles que :
Architecturalement parlant, DDS se positionne au-dessus des protocoles TCP/IPs et comble les couches niveau 7, 6 et 5 (couche applicative) du Modèle OSI. DDS offre également une panoplie de services de gestion tel que la gestion de la Durabilité des données, des services de journalisation et de re-joues (Record and Replay) et des services de supervision (Monitoring Services).
DDS se présente sous forme d'une couche logicielle dite intergicielle (middleware) dont la fonction principale est d'offrir une technologie d’échanges de données typées, classifiées par sujet (topics) tout en respectant une panoplie de qualités de services (QoSs) négociées entre les producteurs de la donnée et ses consommateurs.
Cette technologie offre un niveau d'abstraction qui cache la complexité des couches réseaux sous-jacentes et gère d'une façon transparente les problématiques liées à la distribution des données dans le système a large-échelle.
Les problématiques tels que: la découverte dynamique des données,la localisation de ceux qui les produisent et ceux qui la consomme sont résolues automatiquement par le middleware.
DDS est un middleware centré sur les données (Data Centric Middleware), par opposition au middleware centrés sur les services (en) (Service Oriented Middleware) ou au middleware centré sur les messages (en), MOM (Message Oriented Middeleware), la donnée et les qualités de services qui lui sont associées deviennent l'unique contrat d’intégration entre les applications.
DDS offre un découplage spatio-temporelle, dans la mesure où les applications n'ont pas besoin d’être simultanément actives au moment de la production et de la consommation de la donnée. De ce fait, la communication est fondamentalement asynchrone. Les applications ne sont pas obligées de se connaître , ni de connaître leur localisation (tel que les adresses IP ou ports d’écoutes, etc.).
Dans DDS, un objet ou une instance de donnée est identifiée par :
Les qualités de services (qos), couvrent un large spectre, tels que :
Les applications disposent d'interface de programmation standard (ou API), dite DCPS API (Data Centric Pub/Sub) APIs, leur permettant principalement de :
DDS introduit aussi une notion de Partition et de Domaine pour regrouper les applications et les machines qui les hébergent dans des ensembles administratifs disjoints :
À titre d'exemple, si nous considérons l'espace aérien européen comme un domaine DDS unique représentant les vols qui traversent cet espace, les systèmes de radars produiront tous, des données de type "Vol", les systèmes de surveillance, d'identification et de classification pourront consommer les données "Vol" a l’échelle de chaque pays (ou région). La notion de partition servira a créer des vues sur l'espace aérien en fonction de chaque pays (e.g Partition1=/Europe/France/* , Partition2=/Europe/Suisse/* , Partition 3=/Europe/*)
Le paradigme de communication de prédilection utilisé par DDS et celui basé sur Publication/Souscription, on peut avoir "n" producteurs pour "m" consommateurs. Selon la qualité de service dite "Ownership" les consommateurs peuvent voir toutes les mises à jours des producteurs ou voir exclusivement celle d'un seul producteur (désigné comme étant le maître ou le possesseur de l'instance de la donnée).
Les données sont décrites dans le langage IDL définit par l'OMG, dont l'analyse permet au service DDS de générer via des pré-compilateurs d'IDL des points d’accès typés au middleware et spécifiques au langage de programmation cible.
La spécification DDS offre deux niveaux d'interface :
DDS s'appuie par ailleurs sur RTPS (Real-Time Publish/Subscribe Protocol) en tant que protocole d’interopérabilité .
À l'heure actuelle, deux produits commerciaux conformes à DDS se détachent :
D'autres produits sont répertoriés par l'OMG sur son site[2].
Émergent en outre des solutions open source, notamment l'implémentation proposée par :
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.