Per funzionalità simili a Amazon Timestream for, prendi in considerazione Amazon Timestream LiveAnalytics per InfluxDB. Offre un'acquisizione semplificata dei dati e tempi di risposta alle query di una sola cifra di millisecondi per analisi in tempo reale. Scopri di più qui.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Funzioni di interpolazione
Se nei dati delle serie temporali mancano valori per gli eventi in determinati momenti, puoi stimare i valori di tali eventi mancanti utilizzando l'interpolazione. Amazon Timestream supporta quattro varianti di interpolazione: interpolazione lineare, interpolazione spline cubica, interpolazione dell'ultima osservazione portata avanti (locf) e interpolazione costante. Questa sezione fornisce informazioni sull'utilizzo di Timestream per le funzioni di interpolazione, oltre a query di esempio. LiveAnalytics
Informazioni di utilizzo
Funzione | Tipo di dati di output | Descrizione |
---|---|---|
|
serie temporali |
Compila i dati mancanti utilizzando l'interpolazione lineare. |
|
double |
Compila i dati mancanti utilizzando l'interpolazione lineare. |
|
serie temporali |
Compila i dati mancanti utilizzando l'interpolazione spline cubica |
|
double |
Compila i dati mancanti utilizzando l'interpolazione spline cubica. |
|
serie temporali |
Compila i dati mancanti utilizzando l'ultimo valore campionato. |
|
double |
Compila i dati mancanti utilizzando l'ultimo valore campionato. |
|
serie temporali |
Compila i dati mancanti utilizzando un valore costante. |
|
double |
Compila i dati mancanti utilizzando un valore costante. |
Esempi di query
Calcola l'utilizzo medio della CPU a intervalli di 30 secondi per un EC2 host specifico nelle ultime 2 ore, inserendo i valori mancanti utilizzando l'interpolazione lineare:
WITH binned_timeseries AS ( SELECT hostname, BIN(time, 30s) AS binned_timestamp, ROUND(AVG(measure_value::double), 2) AS avg_cpu_utilization FROM "sampleDB".DevOps WHERE measure_name = 'cpu_utilization' AND hostname = 'host-Hovjv' AND time > ago(2h) GROUP BY hostname, BIN(time, 30s) ), interpolated_timeseries AS ( SELECT hostname, INTERPOLATE_LINEAR( CREATE_TIME_SERIES(binned_timestamp, avg_cpu_utilization), SEQUENCE(min(binned_timestamp), max(binned_timestamp), 15s)) AS interpolated_avg_cpu_utilization FROM binned_timeseries GROUP BY hostname ) SELECT time, ROUND(value, 2) AS interpolated_cpu FROM interpolated_timeseries CROSS JOIN UNNEST(interpolated_avg_cpu_utilization)
Calcola l'utilizzo medio della CPU eseguito a intervalli di 30 secondi per un EC2 host specifico nelle ultime 2 ore, inserendo i valori mancanti utilizzando l'interpolazione basata sull'ultima osservazione effettuata:
WITH binned_timeseries AS ( SELECT hostname, BIN(time, 30s) AS binned_timestamp, ROUND(AVG(measure_value::double), 2) AS avg_cpu_utilization FROM "sampleDB".DevOps WHERE measure_name = 'cpu_utilization' AND hostname = 'host-Hovjv' AND time > ago(2h) GROUP BY hostname, BIN(time, 30s) ), interpolated_timeseries AS ( SELECT hostname, INTERPOLATE_LOCF( CREATE_TIME_SERIES(binned_timestamp, avg_cpu_utilization), SEQUENCE(min(binned_timestamp), max(binned_timestamp), 15s)) AS interpolated_avg_cpu_utilization FROM binned_timeseries GROUP BY hostname ) SELECT time, ROUND(value, 2) AS interpolated_cpu FROM interpolated_timeseries CROSS JOIN UNNEST(interpolated_avg_cpu_utilization)