Dati di misurazione aggregati
Preparazione
Se è attiva la vecchia aggregazione dei dati (<=8.1.2), è necessario disabilitare il lavoro di sincronizzazione di PostgreSQL.
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'));"
Inoltre, si consiglia di rimuovere le vecchie tabelle aggregate e di rifattorizzare le query di dati per utilizzare quelle create dalla nuova sincronizzazione dei dati.
Assicurarsi che le impostazioni di /etc/stablenet-fdw/stablenet-fdw.conf
siano corrette.
Sincronizzazione iniziale
I seguenti comandi sono utilizzati per sincronizzare i dati di misura da StableNet/Oracle/MySQL.
I comandi devono essere eseguiti manualmente la prima volta in ordine sequenziale per assicurarsi che tutto funzioni correttamente.
Quando si eseguono i comandi per la prima volta, vengono sincronizzati solo i dati del giorno corrente. I dati storici possono essere sincronizzati in seguito, dopo aver impostato la sincronizzazione automatica.
L'argomento server_id
è necessario solo se configurato. Questo comando deve essere eseguito separatamente per ogni server_id
.
Sincronizzazione delle misure
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/measurement-sync.sh [server_id>]
Questo comando sincronizza le misure dall'API StableNet in base ai filtri tag configurati. Viene poi utilizzato nella sincronizzazione incrementale per sincronizzare solo i dati delle misure richieste.
Sincronizzazione incrementale
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/incremental-sync.sh [server_id>]
Questo comando sincronizza i dati di misura grezzi da Oracle/MySQL a PostgreSQL. Ad ogni esecuzione, vengono sincronizzati solo i nuovi dati. I dati sono memorizzati in sn_ping_data
, sn_snmp_data
e sn_usrscript_data
.
Sincronizzazione aggregata
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/aggregate-sync.sh [server_id>]
Aggrega i dati grezzi dalla sincronizzazione incrementale in bucket di minuti, 5 minuti e 15 minuti. I dati sono memorizzati in stablenet_measurement_data_minutely
, stablenet_measurement_data_5_minutely
e stablenet_measurement_data_15_minutely
. Le tabelle risultanti contengono le colonne value_avg
, value_min
e value_max
per le righe aggregate.
Sincronizzazione oraria aggregata
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/aggregate-hourly-sync.sh [server_id>]
Aggrega i dati della tabella stablenet_measurement_data_minutely
in stablenet_measurement_data_hourly
. Questa tabella non contiene valori medi, minimi e massimi, ma colonne statistiche timescaledb (stats_agg statssummary2d
, stats_agg_max statssummary2d
, percentile_agg uddsketch
, percentile_agg_max uddsketch
). Queste colonne possono essere utilizzate in seguito per ottenere molte informazioni statistiche sui dati aggregati.
Sincronizzazione delle statistiche
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/aggregate-hourly-sync.sh [server_id>]
Esegue un rollup dei dati statistici da stablenet_measurement_data_hourly
a stablenet_measurement_data_daily
, stablenet_measurement_data_weekly
, stablenet_measurement_data_monthly
, stablenet_measurement_data_quartely
e stablenet_measurement_data_yearly
.
Sincronizzazione automatica
Dopo aver eseguito i comandi di sincronizzazione manualmente, vogliamo impostare alcuni job in SKOOR Engine per eseguire la sincronizzazione automaticamente.
Creare un gruppo chiamato
StableNet Data Sync
in rootCreare un dispositivo chiamato
localhost
sotto il gruppoStableNet Data Sync
Creare 5 lavori Execute sotto localhost
StableNet Measurement Sync [server_id]
Intervallo:1 hour, fix, if longer immediately
Percorso del programma:/opt/stablenet-fdw/measurement-data-sync/measurement-sync.sh [server_id]
Salva l'output su file:stablenet-measurement-sync.log
StableNet Incremental Sync [server_id]
Intervallo:1 minute, fix, if longer immediately
Percorso del programma:/opt/stablenet-fdw/measurement-data-sync/incremental-sync.sh [server_id]
Salva l'output su file:stablenet-incremental-sync.log
StableNet Aggregate Sync
Intervallo:5 minutes, fix, if longer immediately
Percorso del programma:/opt/stablenet-fdw/measurement-data-sync/aggregate-sync.sh [server_id]
Salva l'output su file:stablenet-aggregate-sync[-server_id].log
StableNet Aggregate Hourly Sync
Intervallo:15 minutes, fix, if longer immediately
Percorso del programma:/opt/stablenet-fdw/measurement-data-sync/aggregate-hourly-sync.sh [server_id]
Salva l'output su file:stablenet-aggregate-hourly-sync[-server_id].log
StableNet Stats Sync
Intervallo:1 hour, fix, if longer immediately
Percorso del programma:/opt/stablenet-fdw/measurement-data-sync/stats-sync.sh [server_id]
Salva l'output su file:stablenet-stats-sync[-server_id].log
Sincronizzazione cronologia
Eseguire questo comando DOPO la sincronizzazione iniziale e DOPO aver impostato la sincronizzazione automatica.
sudo -u eranger /opt/stablenet-fdw/measurement-data-sync/history-sync.sh [server_id>]
Questo comando sincronizza i dati storici in base alla configurazione di history_days
.