我将遥测推送到 AWS 时间流:
测量值::varchar | 知识产权 | 时间 | 测量名称 |
---|---|---|---|
测试.html | 192.168.1.100 | 2021-05-25 14:27:45 | 命中 |
废话.html | 192.168.1.101 | 2021-05-25 14:27:45 | 命中 |
测试.html | 192.168.1.102 | 2021-05-25 14:27:46 | 命中 |
我希望在时间流中显示数据的聚合,向我显示每小时每个 uri 的点击次数。
测量值::varchar | 数数 | 时间 |
---|---|---|
测试.html | 2 | 2021-05-25 14:00 |
废话.html | 1 | 2021-05-25 14:00 |
我正在尝试使用:
SELECT measure_value::varchar as URIs, CREATE_TIME_SERIES(time, measure_value::varchar) AS served FROM $__database.$__table WHERE $__timeFilter group by measure_value::varchar
但我得到了错误:
ValidationException: Duplicate timestamps are not allowed in a timeseries.
我使用了错误的功能还是我的数据有误?
====================
尝试@berto99 的解决方案...我得到:
SELECT measure_value::varchar AS URIs, date_trunc('hour', time) AS hour, count(measure_value::varchar) as queries
FROM $__database.$__table
WHERE $__timeFilter
GROUP BY measure_value::varchar, date_trunc('hour', time)
======================
更新#2:
SELECT measure_value::varchar AS URIs, bin(time, 15m) AS hour, count(measure_value::varchar) as queries
FROM $__database.$__table
WHERE $__timeFilter
GROUP BY measure_value::varchar, bin(time, 15m) order by hour