26.3.2024

Enterprise vlastnosti archivácie v SCADA a MES systémoch

V predchádzajúcom článku “Archivácia v SCADA a MES systémoch” sme popisovali vlastnosti archivácie v SCADA/MES systémoch z hľadiska užívateľa (resp. konfigurátora, ktorý vytvára archívne objekty). Tento článok sa zameriava na “enterprise” vlastnosti archívov. Tým nemyslíme podobnosť s kozmickou loďou zo sci-fi seriálu Star Trek, ale vlastnosti, ktoré umožňujú použitie pre rozsiahle podnikové (“enterprise”) riešenia. Nie každý archívny subsystém je totiž vhodný na použitie v aplikáciach s tisíckami archivovaných hodnôt za sekundu, s desaťtisícmi archívnych objektov, stovkami gigabajtov archivovaných dát a stovkami paralelne pripojených užívateľov.

“Enterprise” vlastnosti sú teda vlastnosti ovplyvňujúce schopnosti archivovať dáta, čítať dáta z archívu a využívať zdroje servera (CPU, pamäť) tak, aby bola aplikácia dobre škálovateľná vo viacerých rozmeroch (počet archívnych objektov, množstvo archivovaných hodnôt za sekundu, objem archivovaných dát, počet užívateľov) ako aj vlastnosti ovplyvňujúce dostupnosť archívu a zabezpečujúce minimalizáciu plánovaných a neplánovaných výpadkov. Bonusom je podpora diagnostiky a merania výkonnosti archívneho subsystému. Takže – čo vie v tomto smere ponúknuť aplikačný server reálneho času D2000 a jeho archív?

 

1_enterprise_archiv.png
Obr 1: konfiguračný nástroj Cnf zobrazujúci archívne objekty. V stavovom riadku vidieť informáciu o celkovom počte 125 tisíc archívnych objektov, v záhlaví o celkovom počte objektov (442 tisíc).

Redundancia archivácie a load-balancing

Redundancia archivácie bola už popisovaná v samostatnom článku “Redundantné SCADA / MES systémy a D2000”. Je možné nakonfigurovať viacero archívnych procesov (spravidla na rôznych serveroch) tak, aby archivovali tie isté dáta, každá do vlastnej databázy. Jednotlivé archívne procesy sa nazývajú v systéme D2000 inštancie. Jedna inštancia môže byť aktívna – tá realizuje užívateľské požiadavky o prístup k dátam. Ostatné inštancie sú pasívne – realizujú iba zápis. Pokiaľ je zapnutý load-balancing, aktívnych inštancií je viacero a proces D2000 Server riadi smerovanie požiadaviek na čítanie do tej-ktorej inštancie.

Pokiaľ je jedna z inštancií vypnutá (napr. kvôli údržbe) alebo vypadnutá, dáta archivuje a poskytuje druhá resp. ďalšie inštancie.

Ako riešit situáciu po výpadku alebo vypnutí jednej z inštancií? D2000 Archív umožňuje automatické “zaplátanie” vzniknutej diery v dátach. Dokáže detekovať, za aké časové obdobie chýbajú dáta, a spustiť utilitu, ktorá načíta dáta z druhej inštancie a vloží ich do archívnej databázy. Spravidla sa vkladajú iba primárne dáta a následne po zaplátaní diery vykoná D2000 Archív prepočet štatistických a vypočítaných archívov za toto obdobie.

Pokiaľ zákazník nemá k dispozícii dostatočnú diskovú kapacitu na vytvorenie plnohodnotného redundantného archívu, je možné aj čiastočné riešenie – vytvorenie tzv. krátkodobého archívu. Tento má konfiguračne (štartovacím parametrom) obmedzenú hĺbku archivácie všetkých objektov (napr. na 1 mesiac alebo 1 týždeň) a teda aj podstatne menšie nároky na diskové miesto ako štandardný archív. V prípade výpadku plnohodnotného archívu tak majú užívatelia k dispozícii aspoň niekoľko dní dát – a správcovia niekoľko dní na sfunkčnenie archívu, kým sa nazbierané dáta začnú z krátkodobého archívu vymazávať..

Podpora SQL serverov rôznych výrobcov

D2000 Archív na ukladanie údajov využíva SQL databázy. Je podporených viacero serverov:

  • Microsoft SQL server
  • Oracle
  • PostgreSQL
  • Sybase SQL Anywhere

Microsoft SQL server a jeho voľne šíriteľné verzie MSDE a SQL Express Edition sú prioritne využívané OEM partnermi na tvorbu menších aplikácií. Sybase SQL Anywhere sa osvedčilo na aplikácie do cca. 20-40 GB dát. Oracle databáza má vynikajúci výkon čo sa týka množstva zápisov aj množstva bajtov, ktoré potrebuje na uloženie jednej archivovanej hodnoty. PostgreSQL výkonnostne za Oracle zaostáva, na druhej strane je používaný čím ďalej tým viac kvôli vysokej stabilite a nízkym nárokom na operačnú pamäť a na správu. V “enterprise” riešeniach s veľkými množstvami archivovaných dát sú používané výhradne Oracle a PostgreSQL databázy.

 

2_sv_archiv_performance.png
Obr 2: diagnostická štruktúra zobrazujúca inštancie 1 a 2 archívu. Stĺpec PerformedDatabaseRequest ukazuje priemerný počet hodnôt vložených za sekundu, stĺpec DatabaseSize udáva aktuálnu veľkosť archívnej databázy (2.8 TB) a stĺpec FreeSpace veľkosť voľného miesta v nej (300 GB).


Výber konkrétnej databázy a verzie je ovplyvnený aj zákazníkmi – niektorí vyžadujú napr. použitie Oracle databáz, ktoré majú zavedené ako firemný štandard.

Na pokračovanie článku sa môžete tešiť zase o týždeň.

 

10.7.2017, Ing. Peter Humaj, www.ipesoft.com

Iné blogy