Aggregierte Messdaten

Vorbereitung

Wenn die alte Datenaggregation (<=8.1.2) aktiv ist, muss der PostgreSQL-Synchronisierungsjob deaktiviert werden.

psql -U infosim -d infosim -c "SELECT delete_job((SELECT max(job_id) FROM timescaledb_information.jobs where proc_schema = 'stablenet' AND proc_name = 'update_measurement_data_aggregated'));"

Außerdem wird empfohlen, die alten Aggregattabellen zu entfernen und die Datenabfragen so umzugestalten, dass sie die von der neuen Datensynchronisation erstellten Tabellen verwenden.

Stellen Sie sicher, dass die Einstellungen in „/etc/stablenet-fdw/stablenet-fdw.conf“ korrekt sind.

Erstsynchronisierung

Die Synchronisierung der Messdaten aus StableNet/Oracle/MySQL erfolgt mithilfe der folgenden SKOOR-Skripte, die bei Ausführung von „init-data-source.py“ in der StableNet-Gruppe erstellt werden.

Die Skripte sollten beim ersten Mal manuell in der vorgegebenen Reihenfolge ausgeführt werden, um sicherzustellen, dass alles ordnungsgemäß funktioniert.

Bei der ersten Ausführung der Skripte werden nur die Daten des aktuellen Tages synchronisiert. Historische Daten können später, nach Einrichtung der automatischen Synchronisation, synchronisiert werden.

Die Umgebungsvariable `SERVER_ID` wird nur benötigt, wenn sie konfiguriert ist. Diese Befehle müssen für jede `SERVER_ID` separat ausgeführt werden.

Messwert-Synchronisierung

Dieses Skript synchronisiert die Messwerte aus der StableNet-API basierend auf den konfigurierten Tag-Filtern. Dies wird später bei der inkrementellen Synchronisierung verwendet, um nur Daten für die erforderlichen Messungen zu synchronisieren.

Inkrementelle Synchronisierung

Dieser Befehl synchronisiert Rohmessdaten von Oracle/MySQL nach PostgreSQL. Bei jedem Durchlauf werden nur neue Daten synchronisiert. Die Daten werden in den Tabellen „sn_ping_data“, „sn_snmp_data“ und „sn_usrscript_data“ gespeichert. Zusätzlich werden diese Rohdaten in der Tabelle „stablenet_measurement_data_minutely“ aggregiert, die die Spalten „value_avg“, „value_min“ und „value_max“ enthält.

Aggregierte Synchronisierung

Dieser Schritt ist optional und nur erforderlich, wenn die 5- und 15-Minuten-Bucket benötigt werden. Ist dies nicht der Fall, fahren Sie stattdessen mit der stündlichen Synchronisierung fort. Wenn Sie diese nicht benötigen, sollten Sie auch die entsprechenden Bucket-Größen aus der Datenabfrage „dq_stablenet_measurement_data“ entfernen.

Aggregiert Rohdaten aus der inkrementellen Synchronisierung in 5-Minuten- und 15-Minuten-Bucket. Die Daten werden in den Tabellen „stablenet_measurement_data_5_minutely“ und „stablenet_measurement_data_15_minutely“ gespeichert. Die resultierenden Tabellen enthalten die Spalten „value_avg“, „value_min“ und „value_max“ für die aggregierten Zeilen.

Aggregation der stündlichen Synchronisierung

Aggregiert Daten aus der Tabelle „stablenet_measurement_data_minutely“ in „stablenet_measurement_data_hourly“. Diese Tabelle enthält zwar „value_min“ und „value_max“, jedoch nicht „value_avg“. Stattdessen enthält sie Spalten mit TimescaleDB-Statistiken („stats_agg statssummary2d“, „percentile_agg uddsketch“, „state_agg stateagg“). Diese Spalten können später verwendet werden, um zahlreiche statistische Informationen über die aggregierten Daten zu erhalten.

Messungen, für die „state_agg“-Daten abgerufen werden sollen, müssen in der Datei /etc/stablenet-fdw/stablenet-fdw.conf mithilfe der Option „snmp_state_agg_measurements“ konfiguriert werden. Messungen werden durch den Vorlagennamen und den Metrikschlüssel definiert. Beispiel:

snmp_state_agg_measurements = Interface Relative IPMPLS 64Bit#1008

Mehrere Messungs-/Metrikschlüssel-Paare können durch ein Komma getrennt werden.

Aktivieren Sie „state_agg“ nur bei Messungen/Metriken mit geringer Kardinalität, d. h. bei denen es nur sehr wenige unterschiedliche Werte gibt (z. B. Aufzählungen).

Statistik-Synchronisierung

Führt eine Zusammenfassung der statistischen Daten aus „stablenet_measurement_data_hourly“ in „stablenet_measurement_data_daily“, „stablenet_measurement_data_weekly“, „stablenet_measurement_data_monthly“, „stablenet_measurement_data_quartely“ und „stablenet_measurement_data_yearly“ durch.

Automatische Synchronisierung

Nachdem die Synchronisierungsskripte manuell ausgeführt wurden, möchten wir die Skript-Zeitpläne aktivieren, um die Synchronisierung automatisch durchzuführen.

image-20261021-095724.png

Historische Synchronisierung

Führen Sie dieses Skript NACH der ersten Synchronisierung und NACH der Einrichtung der automatischen Synchronisierung aus.

Dieses Skript synchronisiert historische Daten basierend auf den Konfigurationsparametern „[history_sync]“, „days“, „start_date“ und „end_date“. Für eine erste Historiensynchronisierung möchten Sie in der Regel nur die Anzahl der Tage festlegen oder die Einstellungen unverändert lassen und einfach Daten aus einem Jahr synchronisieren.