postgresql 不覆盖整个时间间隔的连续聚合

qaxu7uf2  于 2023-08-04  发布在  PostgreSQL
关注(0)|答案(1)|浏览(117)

我创建了一个连续聚合,时间桶为5分钟。在添加策略时,我给出了如下策略:

SELECT add_continuous_aggregate_policy('public.test_five_min_view',
                                  start_offset => INTERVAL '1 hour',
                                  end_offset => INTERVAL '0 minute',
                                  schedule_interval => INTERVAL '1 hour');

字符串
在检查日志时,我发现它默认跳过5分钟。

2023-08-03 12:12:50.924 UTC [2771] LOG:  refreshing continuous aggregate "test_five_min_view" in window [ 2023-08-03 11:15:00+00, 2023-08-03 12:10:00+00 ]


预计它将在11:10:00到12:10:00开始,现在不是这样。

mf98qq94

mf98qq941#

start_offset:相对于策略运行时间的刷新窗口开始时间
end_offset:相对于策略运行时间的刷新窗口结束时间
两者都与策略运行时间有关。在您的案例中,策略在2023-08-03 12:12:50.924上运行。为了避免聚合中的差距,选择start_offset大于schedule_interval(考虑您的项目历史数据填充),并且timescale仅对数据更改的存储桶进行聚合。

相关问题