Platformă IoT & API cu versionare, retenție și audit

Cadru vendor-agnostic pentru colectare multi-protocol, normalizare unitară, stocare cu versionare și politici de retenție transparente. Expunere prin API REST, webhooks și integrare cu CMMS/EMS, cu trasabilitate end-to-end.

Diagramă de platformă IoT cu fluxuri de date și API

ABOUT

Platforma gestionează cap-coadă fluxul de telemetrie: ingestion tolerant la întreruperi, normalizare în model comun, stocare versio­nată și API predictibil. Fiecare transformare este jurnalizată pentru proveniență și reproducibilitate.

Conectivitatea este flexibilă (HTTP/MQTT, LTE/LoRaWAN prin gateway-uri), iar mesajele sunt idempotente și semnate pentru trasabilitate. Normalizarea aliniază unități, etichete și identificatori de echipament, astfel încât analizele să rămână consistente indiferent de furnizor.

Politicile de retenție separă date operaționale, de diagnostic și istoric, cu mutare între nivele de stocare. Accesul este rol-bazat, iar auditul acoperă evenimente, accesări și schimbări de configurare. Totul este livrat strict informativ, fără promisiuni comerciale.

Arhitectură & interfețe

Colectare robustă, normalizare coerentă și stocare versio­nată. Accesul este controlat, iar interfețele API sunt previzibile și documentate, cu trasabilitate și audit complet.

Ingestion tolerant la întreruperi

Gateway-urile trimit pachete semnate prin HTTP/MQTT. Bufferul local reține datele când legătura pică; retransmisia folosește backoff. Fiecare mesaj are messageId pentru idempotency (deduplicare la server).

  • Header temporal sincronizat, checksum și semnătură.
  • Accept parțial: marcăm ferestrele lipsă pentru completare.
  • Rate limiting per cheie, jurnalizare încercări.

Normalizare & mapări

Datele intră într-un model comun (assets → points → timeseries/events). Un registru de mapare leagă ID-urile din teren de echipamente și unități standard. Conversiile (ex. °F→°C) sunt salvate ca transformări cu versiuni.

  • Unități, etichete și meta coerente între surse.
  • Timestamps aliniați, latență marcată per pachet.
  • Validări de plauzibilitate & completitudine.

Stocare cu versionare & retenție

Serii de timp și metadate păstrează istoricul versiunilor. Retenția pe clase de date (operațional/diagnostic/istoric) mută automat volumele pe nivele de cost diferite, păstrând referințe pentru re-analize.

  • Compactare temporară și marcaje de lacune.
  • Politici declarative per punct/echipament.
  • Export controlat pentru audit extern.

Acces, roluri & audit

RBAC pe chei API cu scope-uri fine (citire/ingestion/export/administrare). Toate accesările, erorile și schimbările sunt jurnalizate cu actor, timp, obiect.

  • Separare pe spații (site/linie/echipament).
  • Chei rotative, expirare și revocare rapidă.
  • Loguri imuabile pentru traseu de audit.

API REST: interogare & scriere

Interfețe previzibile pentru timeseries, events și assets. Filtrare pe timp, puncte, echipamente; paginare la volum; coduri de eroare clare.

  • GET /api/v1/timeseries?assetId=A1&point=pressure&from=...&to=...
  • POST /api/v1/timeseries — scriere idempotentă cu messageId.
  • Răspuns compresat, agregări server-side opționale.

Webhooks & integrare CMMS/EMS

Subscrieri pe evenimente (ex. alertă confirmată) declanșează webhook-uri semnate. Integrarea cu CMMS/EMS transmite automat contextul tehnic și link-urile către istoricul echipamentului.

  • Retry cu exponential backoff și signature de verificare.
  • Filtre pe severitate, locație, tip de eveniment.
  • “Playbook” operațional atașat evenimentului.

Observabilitate & SLO

Monitorizăm latența de ingestie, rata de succes, prospețimea datelor și erorile la interogare. SLO-urile sunt definite clar, iar abaterile declanșează investigații și rapoarte.

  • Latență end-to-end cu marcaje de timp sincronizate.
  • Indicatori pe flux, punct și echipament.
  • Panouri de bord tehnice reproducibile.

Întrebări frecvente

Cum gestionați aparatele heterogene fără blocare pe furnizor?

Folosim un model comun (assets/points/events) și un registru de mapare. La ingestie, facem normalizare de unități și etichete, păstrând în același timp valorile brute și proveniența. Astfel, înlocuirea unui furnizor sau adăugarea altuia nu rupe rapoartele.

Transformările sunt versiunate, ceea ce permite re-analiza datelor istorice cu reguli noi sau vechi, după nevoie.

Ce înseamnă “stocare cu versionare” pentru serii de timp?

Fiecare punct poate avea revizii: corecții, consolidări sau recalculări documentate. Istoricul nu se suprascrie “în orb”, ci se adaugă versiuni, cu motivare și timp de aplicare.

Raportarea indică versiunea folosită; pentru audit, putem reconstitui rezultatele cu o altă versiune a transformărilor.

Cum controlați accesul la nivel fin?

Cheile API au scope-uri și roluri: citire limitată la un site/linie, scriere doar pentru un gateway etc. Accesul este revocabil imediat, iar toate acțiunile sunt jurnalizate cu actor, obiect și rezultat.

Cum se integrează platforma cu CMMS/EMS?

Prin API și webhooks: când o condiție devine alertă confirmată, trimitem un webhook semnat către CMMS, care deschide ticketul și atașează contextul (serii relevante, trend, echipament, versiuni). Starea din CMMS poate fi consumată înapoi pentru închiderea operativă.

Contact tehnic

Scrieți-ne pentru clarificări despre ingestie, normalizare, versionare, retenție, RBAC, API și webhooks. Informațiile furnizate sunt descriptive și metodologice.