Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Technologie de l'Internet des objets

Databus vs. Database :les 6 questions que chaque développeur IIoT doit se poser

L'Internet industriel des objets (IIoT) regorge de termes déroutants. C'est inévitable; malgré sa réutilisation de concepts familiers dans l'informatique et les systèmes, l'IIoT est un changement fondamental dans la façon dont les choses fonctionnent. Les changements fondamentaux nécessitent des concepts fondamentalement nouveaux. L'un des plus importants est le concept de "databus".

La version 2 de l'architecture de référence IIC, qui sera bientôt publiée, contient un nouveau modèle appelé modèle de « bus de données en couches ». Je ne peux pas en dire beaucoup plus maintenant sur la version IIC, mais suivre le processus de documentation a été formidable pour obtenir des définitions précises.

La définition du bus de données est :

Un bus de données est une technologie de partage d'informations centrée sur les données qui implémente un espace de données virtuel et mondial. Les applications logicielles lisent et mettent à jour les entrées dans un espace de données global. Les mises à jour sont partagées entre les applications via un mécanisme de communication publication-abonnement.

Les principales caractéristiques d'un bus de données sont :

  1. les participants/applications s'interfacent directement avec les données,
  2. l'infrastructure comprend, et peut donc filtrer sélectivement les données, et
  3. l'infrastructure impose des règles et des garanties de paramètres de qualité de service (QoS) tels que le débit, la fiabilité et la sécurité du flux de données.

Bien sûr, les nouveaux concepts génèrent des questions. Certaines des meilleures questions sont venues d'un architecte d'une grande entreprise de bases de données. Nous essayons généralement d'expliquer le concept de bus de données du point de vue d'un architecte réseau ou logiciel. Mais la science des données est peut-être une meilleure approche. Les bases de données et les bus de données sont, après tout, des concepts de science des données.

Examinons les 6 questions les plus courantes.

Question 1 :En quoi un bus de données est-il différent d'une base de données (de quelque nature que ce soit) ?

Réponse courte :une base de données met en œuvre un stockage centré sur les données. Il sauve vieux informations que vous pourrez ultérieurement rechercher en reliant les propriétés des données stockées. Un bus de données met en œuvre une interaction centrée sur les données. Il gère le futur informations en vous permettant de filtrer par les propriétés des données entrantes.

Réponse longue :la centricité des données peut être définie par ces propriétés :

Une base de données relationnelle est une technologie de stockage centrée sur les données. Avant les bases de données, les systèmes de stockage étaient des fichiers avec une structure définie par l'application (ad hoc). Une base de données est aussi un fichier, mais c'est un fichier très spécial. Une base de données sait comment interpréter les données et applique un contrôle d'accès. Une base de données définit ainsi la « vérité » pour le système; les données de la base de données ne peuvent pas être corrompues ou perdues.

En appliquant des règles simples qui contrôlent le modèle de données, les bases de données assurent la cohérence. En exposant les données à la recherche et à la récupération par tous les utilisateurs, les bases de données facilitent grandement l'intégration du système. En permettant la découverte de données et de schémas, les bases de données permettent également d'utiliser des outils génériques pour surveiller, mesurer et extraire des informations.

Comme une base de données, un middleware centré sur les données (un bus de données) comprend le contenu des données transmises. Le bus de données envoie également des messages, mais il envoie des messages très spéciaux. Il envoie uniquement les messages spécifiquement nécessaires pour maintenir l'état. Des règles claires régissent l'accès aux données, la façon dont les données dans le système changent et quand les participants reçoivent des mises à jour. Surtout, seule l'infrastructure envoie des messages. Pour les applications, le système ressemble à un espace de données global contrôlé. Les applications interagissent directement avec les données et les propriétés de « qualité de service » (QoS) des données telles que l'âge et le taux. Il n'y a pas de sensibilisation au niveau de l'application ou de concept de « message ». Les programmes utilisant un bus de données lisent et écrivent des données, ils n'envoient et ne reçoivent pas de messages.

Une base de données remplace les fichiers par un stockage centré sur les données qui trouve le droite les anciennes données grâce à la recherche. Un bus de données remplace les messages par une connectivité centrée sur les données qui trouve les bonnes données futures grâce au filtrage. Les deux technologies rendent l'intégration du système beaucoup plus facile, prenant en charge une échelle beaucoup plus grande, une meilleure fiabilité et une interopérabilité des applications.

En connaissant la structure et les exigences en matière de données, l'infrastructure de bus de données peut faire des choses comme filtrer les informations, sélectionner quand ou même s'il faut effectuer des mises à jour. L'infrastructure elle-même peut contrôler la QoS comme le taux de mise à jour, la fiabilité et la notification garantie de la vivacité des pairs. L'infrastructure peut découvrir des flux de données et les proposer aux applications comme aux outils génériques. Cette connaissance de l'état des données, dans un système distribué, est une définition précise de la « vérité ». Comme dans les bases de données, l'infrastructure expose les données, à la fois leur structure et leur contenu, à d'autres applications. Cette source de vérité accessible facilite grandement l'intégration du système. Il active également des outils et services génériques qui surveillent et visualisent le flux d'informations, acheminent les messages et gèrent la mise en cache.

Question 2 :« Les applications logicielles lisent et mettent à jour les entrées dans un espace de données global. Les mises à jour sont partagées entre les applications via un mécanisme de communication publication-abonnement. » Cela signifie-t-il qu'il s'agit d'une base de données avec laquelle vous interagissez via une interface pub-sub ?

Réponse courte :non, il n'y a pas de base de données. Une base de données implique un stockage :les données résident physiquement quelque part. Un bus de données implémente un concept purement virtuel appelé "espace de données global".

Réponse longue :L'espace de données du bus de données définit comment interagir avec les informations futures. Par exemple, si "vous" êtes un contrôleur d'intersection, vous pouvez vous abonner aux mises à jour des véhicules à moins de 200 m de votre position. Ces mises à jour vous seront ensuite livrées, si jamais un véhicule s'approche. La livraison est garantie de plusieurs manières (démarrage dans les 0,01 seconde, mise à jour 100x/sec, fiable, etc.). Notez que les données peuvent ne jamais être stockées du tout. (Bien que certains paramètres de QoS, tels que la fiabilité, puissent nécessiter un stockage local.) Vous pouvez considérer un espace de données comme un ensemble d'objets de données spécialement contrôlés qui seront remplis d'informations de la manière exacte que vous spécifiez, bien que ces informations ne le soient pas (en général) sauvegardé par le bus de données... il vient d'être livré.

Question 3 :"Les participants/applications s'interfacent directement avec les données." Pourriez-vous préciser ce que cela signifie ?

Avec un middleware « centré sur les messages », vous écrivez une application qui envoie des données, enveloppées dans des messages, à une autre application. Vous pouvez le faire en demandant aux clients d'envoyer des données aux serveurs, par exemple. Les deux extrémités doivent savoir quelque chose sur l'autre extrémité, y compris généralement des éléments comme le schéma, mais également des propriétés supposées des données telles que « elles datent de moins de 0,01 seconde », ou « elles viendront 100 x/seconde », ou au moins qu'il y a une autre fin vivante, par exemple le serveur est en cours d'exécution. Toutes ces propriétés supposées sont complètement cachées dans le code de l'application, ce qui rend la réutilisation, l'intégration du système et l'interopérabilité vraiment difficiles.

Avec un bus de données, vous n'avez besoin de rien savoir sur les applications sources. Vous indiquez clairement vos besoins en données, puis le bus de données les fournit. Ainsi, avec un bus de données, chaque application n'interagit qu'avec l'espace de données. En tant qu'application, vous écrivez simplement dans l'espace de données ou lisez

[1] [2] 下一页

Technologie de l'Internet des objets

  1. Posez les bonnes questions sur le cloud
  2. Détecter ou ne pas détecter :les avantages de l'IIoT pour votre usine
  3. Fetch dit que chaque machine sur l'IoT a besoin d'un très bon agent
  4. Pourquoi l'Internet des objets a besoin d'intelligence artificielle
  5. IIoT va perturber le secteur de la gestion des installations, mais ce n'est pas grave !
  6. Démocratiser l'IoT
  7. Le parcours IIoT commence par la télémétrie à distance
  8. Galerie :10 questions à poser lors de la sélection d'une plate-forme IIoT
  9. Top 10 des plates-formes IIoT