Slide 37
Slide 37 text
©, 2020 Amazon Web Services, Inc. or its Affiliates. All rights reserved.
WITH binned_timeseries AS (
SELECT country, city, hostname,
bin(time, 10m) AS binned_time,
avg(measure_value::double) AS avg_cpu_utilization
FROM MyDatabase.MyTable
WHERE measure_name = 'cpu_utilization' AND time > ago(2h)
GROUP BY country, city, hostname, bin(time, 10m)
), interpolated_timeseries AS (
SELECT country, city, hostname,
INTERPOLATE_LINEAR(
CREATE_TIME_SERIES(binned_time, avg_cpu_utilization),
SEQUENCE(min(binned_time), max(binned_time), 1m)
) AS interpolated_avg_cpu_utilization
FROM binned_timeseries
GROUP BY country, city, hostname
)
SELECT country, city, hostname, time, round(avg(value), 2) AS interpolated_cpu
FROM interpolated_timeseries
CROSS JOIN UNNEST(interpolated_avg_cpu_utilization)
GROUP BY country, city, hostname, time