Pregled osnovnih modula

U podsistemu Data Platform podaci su organizovani u tabele koje mogu da se razvrstaju prema glavnim modulima predstavljanja podataka.

Ovi moduli opisuju kako se u jednu celinu uklapaju neobrađeni merni podaci, uređaji koji ih generišu, komunikacione sesije tokom kojih se prikupljaju i šifarnici po kojima se razvrstavaju. Tabele u nastavku detaljno prikazuju ključna polja svakog modula i strane ključeve koji ih povezuju.

Arhive podataka

Arhive podataka čuvaju istorijske informacije, kao što su pokazatelji IoT uređaja, podaci o opremi i druga merenja. Glavna tabela za čuvanje arhivskih podataka je channel_data.

PoljeTipOpis
idbigintJedinstveni identifikator zapisa (primarni ključ).
equipment_idbigintReferenca na opremu (equipment.id).
seance_idbigintReferenca na sesiju (seances.id).
channel_idbigintReferenca na kanal (channels.id).
unit_idbigintReferenca na jedinicu mere (units.id).
archive_type_idintegerReferenca na tip arhive (referenceparameters.id).
event_timeintegerVreme događaja (npr. vremenska oznaka).
valuecharacter varying(100)Vrednost primljena sa kanala.
created_attimestamp(6) without time zoneVreme kreiranja zapisa.
updated_attimestamp(6) without time zoneVreme poslednjeg ažuriranja zapisa.

Ova tabela čuva podatke primljene sa kanala opreme i preko stranih ključeva povezuje svaki zapis sa opremom, sesijom, kanalom i jedinicom mere. Zahvaljujući tome, podaci mogu da se klasifikuju po navedenim atributima radi dalje analize i obrade.

  • equipment_id upućuje na tabelu equipment.
  • seance_id upućuje na tabelu seances.
  • channel_id upućuje na tabelu channels.
  • unit_id upućuje na tabelu units.
  • archive_type_id upućuje na tabelu referenceparameters.

Merna mesta

Tabela equipment čuva informacije o opremi koja se koristi u sistemu. Ovaj modul je ključan za upravljanje podacima povezanim sa fizičkim uređajima, kao što su merila, senzori, kontroleri i drugi tipovi opreme.

PoljeTipOpis
idbigintJedinstveni identifikator zapisa (primarni ključ).
equipment_type_idbigintReferenca na tip opreme.
serial_numbercharacter varying(25)Serijski broj opreme.
manufacture_datetimestamp(6) without time zoneDatum proizvodnje opreme.
installation_datetimestamp(6) without time zoneDatum ugradnje opreme.
program_versioncharacter varying(100)Verzija softvera opreme.
created_attimestamp(6) without time zoneVreme kreiranja zapisa.
updated_attimestamp(6) without time zoneVreme poslednjeg ažuriranja zapisa.

Tabela equipment:

  • čuva osnovne podatke o opremi, kao što su serijski broj i datumi proizvodnje i ugradnje;
  • pomoću polja program_version prati verziju softvera instaliranog na opremi;
  • pomoću polja created_at i updated_at prati izmene podataka o opremi;
  • povezana je preko stranih ključeva sa drugim tabelama, kao što su equipment_types, channel_data i channels;
  • omogućava da dodajete, ažurirate i preuzimate informacije o opremi u sistemu.

Modul predstavljanja podataka zasnovan na tabeli equipment omogućava efikasno upravljanje informacijama o opremi u sistemu.

Modul obezbeđuje:

  • čuvanje osnovnih podataka o opremi;
  • upravljanje verzijama softvera;
  • vezu sa drugim entitetima u sistemu.

Komunikacione sesije

Tabela seances čuva informacije o komunikacionim sesijama i aktivnosti opreme. Sesije su periodi aktivnosti tokom kojih oprema i sistem razmenjuju podatke. Ovaj modul je ključan za upravljanje podacima povezanim sa komunikacionim sesijama i za njihovu analizu.

Pogledajmo ovaj modul detaljnije.

PoljeTipOpis
idbigintJedinstveni identifikator zapisa (primarni ključ).
telemetry_idbigintReferenca na telemetriju (telemetry.id).
event_timeintegerVreme događaja.
evtidsmallintIdentifikator događaja.
trycntsmallintBroj pokušaja.
tryflcharacter varying(12)Indikator pokušaja.
statesmallintStatus sesije.
btmintegerNapunjenost baterije.
rssiintegerJačina signala (ako se koristi).
created_attimestamp(6) without time zoneVreme kreiranja zapisa.
updated_attimestamp(6) without time zoneVreme poslednjeg ažuriranja zapisa.

Modul seances se koristi za:

  • čuvanje informacija o komunikacionim sesijama i radu opreme;
  • upravljanje podacima povezanim sa sesijama (na primer, vreme događaja, status sesije, jačina signala i napunjenost baterije);
  • analizu sesija radi otkrivanja problema ili optimizacije performansi sistema;
  • upravljanje statusom sesije: polje state omogućava da pratite status sesije (na primer, uspešno, greška itd.);
  • analizu sesija: polja duration_session i session_traffic omogućavaju da analizirate trajanje sesije i obim njenog saobraćaja;
  • praćenje izmena: polja created_at i updated_at omogućavaju da pratite izmene podataka o sesijama.

Tipovi arhiva

Atribut archive_type_id razvrstava podatke u tabeli channel_data po tipu arhive. Tako podaci mogu da se organizuju u različite kategorije, kao što su satne, dnevne i mesečne arhive, nenormalni režimi rada i drugi tipovi arhiva. Tabela referenceparameters čuva šifarnik tipova arhiva.

Ovaj modul se zasniva na vezi između tabela channel_data i referenceparameters.

PoljeTipOpis
idbigintJedinstveni identifikator zapisa (primarni ključ).
namecharacter varying(30)Naziv tipa arhive.
varnamecharacter varying(30)Kratko ime promenljive za tip arhive.
descriptioncharacter varying(100)Opis tipa arhive.
parent_idintegerReferenca na nadređeni parametar (hijerarhija).
referencemodel_idintegerReferenca na model šifarnika.
created_attimestamp(6) without time zoneVreme kreiranja zapisa.
updated_attimestamp(6) without time zoneVreme poslednjeg ažuriranja zapisa.
deleted_attimestamp(6) without time zoneVreme logičkog brisanja zapisa (soft delete).

Polje archive_type_id u tabeli channel_data omogućava da razvrstate podatke po tipu arhive.

Na primer:

ruby
[ 'Archive types', 'archive_types', 'Archive types (hourly, daily, monthly)',
  [
    ['Hourly readings archive', 'hourly'],
    ['Daily readings archive', 'daily'],
    ['Monthly readings archive', 'monthly'],
    ['Emergency situations archive', 'nesht'],
    ['Events archive', 'event'],
    ['Valve status', 'valve'],
    ['Current state', 'current_state'],
    ['Updated firmware', 'update_app'],
    ['Send SMS', 'send_sms'],
    ['Send JSON', 'send_json'],
    ...
  ]
]

Po potrebi ove arhive mogu da se organizuju u grupe:

  • trenutni podaci (current_state) – očitavanja u trenutku komunikacione sesije;
  • agregirani podaci (hourly, daily, monthly) – zbirna očitavanja za određeni vremenski period;
  • događaji i nenormalni režimi rada (nesht, event) – zapisi o značajnim promenama ili pojavama u sistemu. Mogu da se odnose na opremu, korisnike ili spoljne faktore;
  • status ventila (valve) – stanje ventila merila, ako postoji, i upravljanje njime;
  • upravljačke radnje (update_app, send_sms, send_json) – zapisi o komandama ili radnjama izvršenim radi upravljanja sistemom ili opremom;
  • i tako dalje.

Modul predstavljanja podataka archive_type_id omogućava da efikasno razvrstate podatke po tipovima arhiva i upravljate šifarnikom. On obezbeđuje:

  • klasifikaciju podataka u tabeli channel_data;
  • upravljanje šifarnikom tipova arhiva;
  • analizu podataka po tipu arhive.

Povezane teme

Poslednje ažuriranje

Da li vam je ova stranica bila korisna?