Я хотел бы спросить, является ли непрерывное агрегирование наиболее оптимальным решением, если я хочу получать агрегированные значения за все время, а не за конкретное время? Вот запрос, который я составил
CREATE VIEW device_summary
WITH (timescaledb.continuous)
AS
SELECT
time_bucket('1 day', module_timestamp) as bucket,
sum(CAST(component_data->'common'->'bat' AS INT)) as bat_sum
FROM
main_componentmessage
GROUP BY bucket;
Я думаю, один Решением было бы увеличить интервал времени до действительно большого числа (скажем, 999999 недель, чтобы включить «начало времени»), но опять же я не уверен, что это сработает, поскольку он не будет отличаться от обычного агрегированного запроса, так как интервал времени рефрема sh будет очень большим, и это побеждает цель. Я мог бы просто сделать запрос суммы для всех записей
Вторым решением было бы создать сумму поверх однодневных запросов с интервалом, чтобы я мог получить общую сумму, но я не уверен, имеет ли это смысл.
SELECT SUM(bat_sum) from device_summary
Любые предложения о том, как go об этом?