Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial Internet of Things >> Internet of Things-technologie

Databus versus database:de 6 vragen die elke IIoT-ontwikkelaar moet stellen

Het Industrial Internet of Things (IIoT) staat vol met verwarrende termen. Dat is onvermijdelijk; ondanks het hergebruik van bekende concepten in computers en systemen, is het IIoT een fundamentele verandering in de manier waarop dingen werken. Fundamentele veranderingen vragen om fundamenteel nieuwe concepten. Een van de belangrijkste is het concept van een "databus".

De binnenkort uit te brengen IIC-referentiearchitectuurversie 2 bevat een nieuw patroon dat het "gelaagde databus"-patroon wordt genoemd. Ik kan nu niet veel meer zeggen over de IIC-release, maar het doorlopen van het documentatieproces was geweldig voor het verkrijgen van scherpe definities.

De databusdefinitie is:

Een databus is een data-centrische technologie voor het delen van informatie die een virtuele, wereldwijde dataruimte implementeert. Softwaretoepassingen lezen en updaten vermeldingen in een globale gegevensruimte. Updates worden tussen applicaties gedeeld via een publicatie-abonneer communicatiemechanisme.

De belangrijkste kenmerken van een databus zijn:

  1. de deelnemers/applicaties hebben een directe interface met de gegevens,
  2. de infrastructuur begrijpt, en kan daarom selectief de gegevens filteren, en
  3. de infrastructuur legt regels en garanties op met betrekking tot Quality of Service (QoS)-parameters zoals snelheid, betrouwbaarheid en beveiliging van de gegevensstroom.

Natuurlijk roepen nieuwe concepten vragen op. Enkele van de beste vragen kwamen van een architect van een groot databasebedrijf. Meestal proberen we het databusconcept uit te leggen vanuit het perspectief van een netwerk- of softwarearchitect. Maar data science is misschien een betere benadering. Zowel databases als databussen zijn immers data science-concepten.

Laten we eens kijken naar de 6 meest voorkomende vragen.

Vraag 1:Waarin verschilt een databus van een database (van welke aard dan ook)?

Kort antwoord:een database implementeert data-centric storage. Het bespaart oude informatie die u later kunt zoeken door eigenschappen van de opgeslagen gegevens te relateren. Een databus implementeert datacentrische interactie. Het beheert toekomst informatie door u te laten filteren door eigenschappen van de inkomende gegevens.

Lang antwoord:Gegevensgerichtheid kan worden gedefinieerd door deze eigenschappen:

  • De interface zijn de gegevens. Er zijn geen kunstmatige wrappers of blokkers voor die interface, zoals berichten, of objecten, of bestanden, of toegangspatronen.
  • De infrastructuur begrijpt die gegevens. Dit maakt filteren/zoeken, tools en selectiviteit mogelijk. Het ontkoppelt applicaties van de gegevens en verwijdert daardoor veel van de complexiteit van de applicaties.
  • Het systeem beheert de gegevens en legt regels op over hoe applicaties gegevens uitwisselen. Dit geeft een idee van "waarheid". Het maakt de levensduur van gegevens, het matchen van gegevensmodellen, CRUD-interfaces, enz. mogelijk.

Een relationele database is een datacentrische opslagtechnologie. Vóór databases waren opslagsystemen bestanden met een applicatiegedefinieerde (ad hoc) structuur. Een database is ook een bestand, maar het is een heel bijzonder bestand. Een database weet de data te interpreteren en dwingt toegangscontrole af. Een database definieert dus "waarheid" voor het systeem; gegevens in de database kunnen niet beschadigd raken of verloren gaan.

Door eenvoudige regels op te leggen die het datamodel besturen, zorgen databases voor consistentie. Door de gegevens bloot te stellen aan zoeken en ophalen door alle gebruikers, vereenvoudigen databases de systeemintegratie aanzienlijk. Door ontdekking van gegevens en schema's mogelijk te maken, maken databases ook generieke tools mogelijk voor het bewaken, meten en ontginnen van informatie.

Net als een database begrijpt datacentrische middleware (een databus) de inhoud van de verzonden gegevens. De databus verstuurt ook berichten, maar die verstuurt heel speciale berichten. Het verzendt alleen berichten die specifiek nodig zijn om de status te behouden. Duidelijke regels bepalen de toegang tot de gegevens, hoe gegevens in het systeem veranderen en wanneer deelnemers updates krijgen. Belangrijk is dat alleen de infrastructuur berichten verstuurt. Voor de applicaties ziet het systeem eruit als een gecontroleerde globale dataruimte. Applicaties werken rechtstreeks samen met data en data "Quality of Service" (QoS) eigenschappen zoals leeftijd en snelheid. Er is geen bewustzijn op applicatieniveau of concept van "bericht". Programma's die een databus gebruiken, lezen en schrijven gegevens, ze verzenden en ontvangen geen berichten.

Een database vervangt bestanden door datacentrische opslag die de rechts oude gegevens via zoeken. Een databus vervangt berichten door datacentrische connectiviteit die door middel van filtering de juiste toekomstige gegevens vindt. Beide technologieën maken systeemintegratie veel eenvoudiger, ondersteunen veel grotere schaal, betere betrouwbaarheid en interoperabiliteit van applicaties.

Met kennis van de structuur en eisen aan data kan de databusinfrastructuur zaken doen als informatie filteren, selecteren wanneer en zelfs of updates moeten worden uitgevoerd. De infrastructuur zelf kan QoS regelen, zoals de updatesnelheid, betrouwbaarheid en gegarandeerde melding van peer-liveliness. De infrastructuur kan datastromen ontdekken en aanbieden aan zowel applicaties als generieke tools. Deze kennis van de gegevensstatus in een gedistribueerd systeem is een scherpe definitie van "waarheid". Net als bij databases stelt de infrastructuur de gegevens, zowel structuur als inhoud, bloot aan andere toepassingen. Deze toegankelijke bron van waarheid vergemakkelijkt de systeemintegratie aanzienlijk. Het maakt ook generieke tools en services mogelijk die de informatiestroom bewaken en bekijken, berichten routeren en caching beheren.

Vraag 2:"Software-applicaties lezen en updaten items in een globale dataruimte. Updates worden gedeeld tussen applicaties via een publiceer-abonneer communicatiemechanisme." Betekent dit dat dit een database is waarmee u communiceert via een pub-sub-interface?

Kort antwoord:Nee, er is geen database. Een database impliceert opslag:de gegevens bevinden zich fysiek ergens. Een databus implementeert een puur virtueel concept dat een "globale dataruimte" wordt genoemd.

Lang antwoord:de databus-dataruimte definieert hoe om te gaan met toekomstige informatie. Als "u" bijvoorbeeld een kruispuntcontroller bent, kunt u zich abonneren op updates van voertuigen binnen 200 meter van uw positie. Die updates worden u vervolgens bezorgd, mocht er ooit een voertuig in de buurt komen. Levering is op vele manieren gegarandeerd (start binnen 0,01 sec, 100x/sec geüpdatet, betrouwbaar, etc.). Houd er rekening mee dat de gegevens mogelijk helemaal nooit worden opgeslagen. (Hoewel sommige QoS-instellingen, zoals betrouwbaarheid, enige lokale opslag vereisen.) U kunt een gegevensruimte zien als een set speciaal gecontroleerde gegevensobjecten die met informatie worden gevuld op de exacte manier die u specificeert, hoewel die informatie niet (in algemeen) opgeslagen door de databus...het is zojuist afgeleverd.

Vraag 3:"De deelnemers/applicaties hebben een directe interface met de gegevens." Kunt u uitleggen wat dat betekent?

Met "berichtgerichte" middleware schrijft u een toepassing die gegevens, verpakt in berichten, naar een andere toepassing verzendt. U kunt dat bijvoorbeeld doen door clients gegevens naar servers te laten sturen. Beide uiteinden moeten iets weten over het andere uiteinde, meestal inclusief dingen zoals het schema, maar waarschijnlijk ook veronderstelde eigenschappen van de gegevens zoals "het is minder dan 0,01 seconden oud", of "het komt 100x / seconde", of op zijn minst dat er een ander einde levend is, bijv de server draait. Al deze veronderstelde eigenschappen zijn volledig verborgen in de applicatiecode, waardoor hergebruik, systeemintegratie en interoperabiliteit erg moeilijk zijn.

Met een databus hoeft u niets te weten van de bronapplicaties. U maakt uw databehoefte duidelijk en vervolgens levert de databus deze. Met een databus heeft elke applicatie dus alleen interactie met de dataruimte. Als applicatie schrijf je eenvoudig naar de dataruimte of lees je uit de dataruimte met een CRUD-interface. Natuurlijk kunt u wat QoS van die gegevensruimte nodig hebben, b.v. u wilt dat uw gegevens 100x per seconde worden bijgewerkt. De dataruimte zelf (de databus) garandeert dat je die data krijgt (of geeft een fout aan). U hoeft niet te weten of er slechts één of 27 redundante bronnen van die gegevens zijn, of dat het via een netwerk of gedeeld geheugen komt, of dat het een C-programma op Linux of een C#-programma op Windows is. Alle interacties zijn met uw eigen kijk op de dataruimte. Het is ook logisch om bijvoorbeeld gegevens naar een ruimte zonder ontvangers te schrijven. In dit geval doet de databus mogelijk helemaal niets, of kan informatie in de cache worden opgeslagen voor latere levering, afhankelijk van uw QoS-instellingen.

Merk op dat zowel database- als databustechnologieën de applicatie-applicatie-interactie vervangen door applicatie-data-applicatie-interactie. Deze abstractie is absoluut cruciaal. Het ontkoppelt applicaties en vereenvoudigt het schalen, interoperabiliteit en systeemintegratie aanzienlijk. Het verschil is er echt een van oude gegevens die zijn opgeslage

[1] [2] 下一页

Internet of Things-technologie

  1. Stel de juiste cloudvragen
  2. To Sense or not to Sense:de voordelen van IIoT voor uw fabriek
  3. Fetch zegt dat elke machine op het IoT een echt goede agent nodig heeft
  4. Waarom het internet der dingen kunstmatige intelligentie nodig heeft
  5. IIoT zal de facility management-industrie ontwrichten, maar dat is oké!
  6. Het IoT democratiseren
  7. Het IIoT-traject begint met telemetrie op afstand
  8. Galerij:10 vragen om te stellen bij het selecteren van een IIoT-platform
  9. Top 10 IIoT-platforms
  10. Veranderen edge computing en IIoT de manier waarop we over data denken?
  11. De toekomst van datacenters