Företag, städer och regioner delar knappt data med varandra. Vi använder de europeiska standarderna för utbyte och analys av data, bland dem NGSI-LD, och lägger context brokers över de system ni redan driver, så att en fråga når dem alla medan varje ägare behåller sina data där de ligger och bestämmer vem som får se vilken del.
Sensorer, GIS-lager, BIM-modeller, anläggningsregister, stadens evenemang och de noteringar era processer lämnar efter sig blir NGSI-LD-entiteter av samma form. Två förvaltningar som ställer samma fråga läser samma svar, oavsett vilken leverantör som byggde systemet under.
Data stannar där de bor
NGSI-LD beskriver entiteterna, DCAT-AP datamängderna och ODRL användningsvillkoren, så inget behöver flytta in i en central databas. Brokers registrerar sig hos varandra, frågan reser till den som håller entiteterna, och svaren kommer tillbaka sammanslagna. I vår referensinstallation svarade den regionala brokern för sexton händelser och lagrade bara sina egna sex.
Policyn avgör vad en partner ser
En partnerorganisation frågar er tvilling och får den delmängd er policy tillåter, även när dess fråga ber om mer. Resten lämnar aldrig er broker.
Standarder ni får behålla
NGSI-LD från ETSI, Dataspace Protocol, OGC SensorThings och de publicerade Smart Data Models. Byt leverantör, eller byt ut oss, och modellerna beskriver fortfarande er stad.
Protokoll och standarder vi kopplar ihop
NGSI-LD
JSON-LD
OGC SensorThings
MQTT
LoRaWAN
OPC UA
WFS · PostGIS
IFC · BIM
Smart Data Models
Problemet vi arbetar med
Digitala tvillingar kommer ett projekt i taget. Trafikkontoret köper en, energibolaget en annan, vattenbolaget håller en tredje, och byggnadsförvaltningen underhåller en BIM-modell som ingen annan kan öppna. Var och en av dem beskriver samma gata och samma byggnad med sitt eget vokabulär, så en fråga som korsar två förvaltningar blir ett möte i stället för en fråga till ett system.
Sensoravläsningar är bara en del av det. Vägarbeten, kulturevenemang, bygglov under handläggning och de kungörelser en stad publicerar beskriver samma gata, och var och en av dem sitter i ytterligare ett system.
Ett standardiserat API sluter bara halva den luckan. NGSI-LD definierar hur ett system läser från ett annat. Det säger ingenting om hur ägaren begränsar vad grannen ser, så en stad som vill dela sin tvilling med regionen kan öppna den helt eller inte alls. Vi byggde lagret som gör bådadera: fogar samman tvillingarna till en kontext och låter varje ägare bestämma vem som läser vilken del.
Sex delar, en plattform
01 · Källor
Adaptrar gör det era system redan sänder, MQTT, LoRaWAN, OPC UA, WFS, IFC, till NGSI-LD-entiteter. På källsidan skrivs ingenting om.
02 · Kontext
En context broker håller en beskrivning av varje gata, mätare och rum, med dess egenskaper, dess relationer och dess @context.
03 · Federering
Brokers registrerar sig hos varandra. En fråga som skickas till en broker besvaras av den som håller entiteterna, och ingen kopia görs på vägen.
04 · Policy
Åtkomstregler anger vem som får göra vad med vilka entiteter och under vilket villkor. Gatewayen skriver om varje fråga så att den bara kan returnera det anroparen har rätt till.
05 · Datarum
Mellan organisationer förhandlar Dataspace Protocol-konnektorer villkoren en gång. Därefter kostar en federerad fråga några millisekunder mer än en vanlig.
06 · Konsumenter
Grafana och andra oförändrade NGSI-LD-klienter läser tvärs genom federationen som vore den en enda broker. Era team behåller de verktyg de öppnar på morgonen.
Mätt över tre organisationer
Vi installerade plattformen åt en stad, dess självstyrande region och ett universitet, var och en på sitt eget Kubernetes-kluster med egna inloggningsuppgifter och utan gemensam administratör, och mätte den över ett vidsträckt nät. Siffrorna nedan kommer från den installationen och är publicerade, begäran för begäran, tillsammans med den forskningsartikel vi skrev med Matej Bel-universitetet.
Att skicka en federerad fråga genom en datarumskonnektor kostar 2 ms mer än vanlig federering mellan brokers för en entitet, 4 ms för tio. Att federera över huvud taget kostar omkring 31 ms utöver en direkt fråga, och att tillämpa policyn på resultatet ytterligare 18 till 19 ms.
Fjorton av fjorton fall av åtkomstkontroll höll, bland dem en förfalskad token, en token omskriven för att göra anspråk på administratörsrollen, och en policymotor som togs ur drift. Gatewayen nekade i stället för att släppa igenom begäran.
En partner med enbart läsrätt frågade efter 103 fordon som en annan organisation håller och fick de 100 den fick se, också när dess egen fråga angav ett omfång den inte fick läsa.
Grafana läste med sin vanliga NGSI-LD-datakälla händelser, luftkvalitet och fordonspositioner från alla tre organisationerna, utan adapter emellan.
Så börjar ett projekt
Inventering. Vi kartlägger varje system som håller tvillingdata: protokoll, modell, ägare, uppdateringsfrekvens och vem som får läsa.
Pilot på en fråga. Vi tar en fråga era team redan ställer tvärs över två eller tre system och gör den besvarbar i en enda NGSI-LD-fråga.
Utrullning. Adaptrar, modeller och åtkomstregler flyttar till er infrastruktur eller vår. Era team arbetar vidare i de verktyg de känner.
Öppning mot partner. När en grannorganisation ska läsa en del av er tvilling förhandlar dess konnektor villkoren, och er policy avgör resten.
Samla era data i en kontext
Skicka oss listan över de system ni driver. Vi återkommer med vad som kan kopplas ihop i dag, var det först behövs en adapter, och vad varje steg kräver.