Aggregierte Messdaten
Vorbereitung
Wenn die alte Datenaggregation (<=8.1.2) aktiv ist, muss der PostgreSQL-Synchronisierungsauftrag 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'));"
Darüber hinaus ist es ratsam, die alten Aggregat-Tabellen zu entfernen und die Datenabfragen so umzugestalten, dass sie die von der neuen Datensynchronisierung erstellten verwenden.
Stellen Sie sicher, dass die Einstellungen in /etc/stablenet-fdw/stablenet-fdw.conf
korrekt sind.
Anfängliche Synchronisierung
Die folgenden Befehle werden verwendet, um Messdaten von StableNet/Oracle/MySQL zu synchronisieren.
Die Befehle sollten beim ersten Mal manuell in sequenzieller Reihenfolge ausgeführt werden, um sicherzustellen, dass alles einwandfrei funktioniert.
Wenn Sie die Befehle zum ersten Mal ausführen, werden nur die Daten des aktuellen Tages synchronisiert. Historische Daten können später synchronisiert werden, nachdem die automatische Synchronisierung eingerichtet wurde.
Das Argument server_id
wird nur benötigt, wenn es konfiguriert ist. Diese Befehle müssen für jeden server_id
einzeln ausgeführt werden.
Synchronisierung der Messungen
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/measurement-sync.sh [server_id>]
Dieser Befehl synchronisiert die Messungen von der StableNet-API basierend auf den konfigurierten Tag-Filtern. Dies wird später bei der inkrementellen Synchronisierung verwendet, um nur Daten für erforderliche Messungen zu synchronisieren.
Inkrementelle Synchronisierung
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/incremental-sync.sh [server_id>]
Mit diesem Befehl werden Rohmessdaten von Oracle/MySQL mit PostgreSQL synchronisiert. Bei jedem Durchlauf werden nur neue Daten synchronisiert. Die Daten werden in 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 value_avg
, value_min
und value_max
enthält.
Aggregierte Synchronisierung
Dieser Schritt ist optional und nur erforderlich, wenn Sie die 5- und 15-Minuten-Buckets benötigen. Wenn nicht, fahren Sie stattdessen mit der stündlichen Synchronisierung fort.
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/aggregate-sync.sh [server_id>]
Fasst die Rohdaten aus der inkrementellen Synchronisierung in 5-Minuten- und 15-Minuten-Buckets zusammen. Die Daten werden in 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.
Aggregierte stündliche Synchronisation
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/aggregate-hourly-sync.sh [server_id>]
Aggregiert Daten aus der Tabelle stablenet_measurement_data_minutely
in stablenet_measurement_data_hourly
. Diese Tabelle enthält keine Durchschnitts-, Minimal- und Maximalwerte, sondern stattdessen zeitlich skalierte Statistikspalten (stats_agg statssummary2d
, stats_agg_max statssummary2d
, percentile_agg uddsketch
, percentile_agg_max uddsketch
). Diese Spalten können später verwendet werden, um viele statistische Informationen über die aggregierten Daten zu erhalten.
Statistik-Synchronisation
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/aggregate-hourly-sync.sh [server_id>]
Führt ein Rollup der statistischen Daten von 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 wir die Synchronisierungsbefehle manuell ausgeführt haben, wollen wir einige Jobs in der SKOOR Engine einrichten, um die Synchronisierung automatisch durchzuführen.
Erstellen Sie eine Gruppe namens
StableNet Data Sync
im StammverzeichnisErstellen Sie ein Gerät namens
localhost
unterhalb der GruppeStableNet Data Sync
Erstellen Sie 5 Execute-Jobs unter localhost
StableNet Measurement Sync [server_id]
Intervall:1 hour, fix, if longer immediately
Programmpfad:/opt/stablenet-fdw/measurement-data-sync/measurement-sync.sh [server_id]
Ausgabe in Datei speichern:stablenet-measurement-sync.log
StableNet Incremental Sync [server_id]
Intervall:1 minute, fix, if longer immediately
Programmpfad:/opt/stablenet-fdw/measurement-data-sync/incremental-sync.sh [server_id]
Ausgabe in einer Datei speichern:stablenet-incremental-sync.log
StableNet Aggregate Sync
(OPTIONAL, nur hinzufügen, wenn Sie 5- und 15-Minuten-Intervalle benötigen)
Intervall:1 minute, fix, if longer immediately
Programmpfad:/opt/stablenet-fdw/measurement-data-sync/aggregate-sync.sh [server_id]
Ausgabe in einer Datei speichern:stablenet-aggregate-sync[-server_id].log
StableNet Aggregate Hourly Sync
Intervall:10 minutes, fix, if longer immediately
Programmpfad:/opt/stablenet-fdw/measurement-data-sync/aggregate-hourly-sync.sh [server_id]
Ausgabe in einer Datei speichern:stablenet-aggregate-hourly-sync[-server_id].log
StableNet Stats Sync
Intervall:1 hour, fix, if longer immediately
Programmpfad:/opt/stablenet-fdw/measurement-data-sync/stats-sync.sh [server_id]
Ausgabe in einer Datei speichern:stablenet-stats-sync[-server_id].log
Historie Sync
Führen Sie diesen Befehl NACH der ersten Synchronisierung und NACH der Einrichtung der automatischen Synchronisierung aus.
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/history-sync.sh [server_id>]
Dieser Befehl synchronisiert historische Daten auf der Grundlage der Konfiguration [history_sync]
days
, start_date
und end_date
. In der Regel möchten Sie bei der ersten Synchronisierung nur days
einstellen oder die Einstellungen unverändert lassen und einfach ein Jahr lang zurücksynchronisieren.
Es könnte auch eine gute Idee sein, nohup
zu verwenden, um den Befehl auszuführen, da es einige Zeit dauern kann, bis er abgeschlossen ist.