24h Effizienz Auswertung

Mit diesem Report lässt sich die Effizienz der Maschinen während der letzten 24 Stunden ermitteln.

Die Auswertung erlaubt es, für jede der vergangenen 24 Stunden die Effizienz der Maschinen zu ermitteln. Zusätzlich wird der Mittelwert über die letzten 24 Stunden, ein gleitender Wert über die letzte Stunde und ein Wert seit dem letzten Stundenwechsel zur Verfügung gestellt.

Aufrufparameter

Parameter

Type

Beschreibung

_amcids

Integer[]

SKR-Maschinen-Id’s der Maschinen, für die die Effizienz ermittelt werden soll.
Z.B.: Array[1399537164, 1399537135]

_used_calc_algorithmen

integer

Auswertetkriterium:

1 – Nur Zeiten auswerten, in denen die Maschinen eingeschaltet sind

2 – Auch Zeiten berücksichtigen, in denen die Maschinen ausgeschaltet waren

Rückgabetabelle

Spalte

Type

Inhalt

MC_KEY

integer

Gewählte Zeit Gruppierung der Daten

ACTIVATED

boolean

True, wenn die Maschine im Skr aktiv (nicht stillgelegt) ist

CONNECTED

boolean

True, wenn der PollClient eine TCP/IP Verbindung zur Maschine aufgebaut hat

DATA_UP_TO_DATE

boolean

True, wenn der Inhalt der Daten für diese Maschine mit sehr hoher Wahrscheinlichkeit aktuell ist.

Unsicherheit wegen:
Wird eine TCP/IP z.B. durch einen Netzwerkfehler unterbrochen, wird dies oft/manchmal erst beim nächsten Senden von Daten durch die dann fehlende Empfangsbestätigung vom Kommunikationspartner erkannt.

TS

timestamp

Zeitstempel des letzten verarbeiteten Events

EFF_OVER_CURRENT_1H

real

Gleitender Effizienzwert über die letzten Stunde um einen Trend frühzeitig zu erkennen

EFF_INCOMPLETE_SINCE_01

real

Effizienzwert nach dem letzten Stundenwechsel. Auswertezeitraum wächst entsprechend von 1-59min nach dem Stundenwechsel)

EFF_01

real

Effizienz der letzten Stunde

EFF_02

real

Effizienz vor 2 Stunden

.
.
.

EFF_24

real

Effizienz vor 24 Stunden

EFF_OVER_24H

real

Mittelwert der Effizienz über die letzten 24 Stunden

EFF_OVER_24H_SUM_T

integer

Berücksichtigter Zeitraum über die letzten 24 Stunden

Beispielcode skr_get_mc_efficiency_states.sql

Wichtig:
Diese Auswertung kommt ohne vorherige Erzeugung der Auswert-Hilfstabellen aus.

SELECT skrpps_02.skr_mcid2mcname( "MC_KEY",'skr'::cstring) AS "MC_NAME"    -- adds machine network name to table

,* FROM skrpps_02.skr_get_mc_efficiency_states(
ARRAY[1649425129, 1649425130] –- list of skr machine IDs

, 1 -- 1: only times where MCs were powered on
);

Mittelwert der Effizienz über alle Maschinen

Von Interesse kann auch der Mittelwert der Effizienz über alle Maschinen sein. Der Aufruf dazu würde obige Stored Procedure verwenden und so ergänzen:

SELECT

string_agg(skrpps_02.skr_mcid2mcname( "MC_KEY",'skr'::cstring), ', ') AS "MC_NAMES"

,string_agg("MC_KEY"::text, ', ') AS "MC_KEYS"

,MIN("TS") as "MIN_TS"

,MAX("TS") as "MAX_TS"

,AVG("EFF_OVER_CURRENT_1H") AS "EFF_OVER_CURRENT_1H"

,AVG("EFF_INCOMPLETE_SINCE_01") AS "EFF_INCOMPLETE_SINCE_01"

,AVG("EFF_01") AS "EFF_01" ,AVG("EFF_02") AS "EFF_02"

,AVG("EFF_03") AS "EFF_03" ,AVG("EFF_04") AS "EFF_04"

,AVG("EFF_05") AS "EFF_05" ,AVG("EFF_06") AS "EFF_06"

,AVG("EFF_07") AS "EFF_07" ,AVG("EFF_08") AS "EFF_08"

,AVG("EFF_09") AS "EFF_09" ,AVG("EFF_10") AS "EFF_10"

,AVG("EFF_11") AS "EFF_11" ,AVG("EFF_12") AS "EFF_12"

,AVG("EFF_13") AS "EFF_13" ,AVG("EFF_14") AS "EFF_14"

,AVG("EFF_15") AS "EFF_15" ,AVG("EFF_16") AS "EFF_16"

,AVG("EFF_17") AS "EFF_17" ,AVG("EFF_18") AS "EFF_18"

,AVG("EFF_19") AS "EFF_19" ,AVG("EFF_20") AS "EFF_20"

,AVG("EFF_21") AS "EFF_21" ,AVG("EFF_22") AS "EFF_22"

,AVG("EFF_23") AS "EFF_23" ,AVG("EFF_24") AS "EFF_24"

,AVG("EFF_OVER_24H") AS "EFF_OVER_24H"

,AVG("EFF_OVER_24H_SUM_T") AS "EFF_OVER_24H_SUM_T"

FROM skrpps_02.skr_get_mc_efficiency_states(ARRAY[1649425129, 1649425130, 1649425132]

, 2)