【发布时间】:2021-04-18 17:56:57
【问题描述】:
我们目前正在使用一个汇总表,以 UTC 时间每小时为基础为我们的用户汇总信息。我们遇到的问题是这个表变得太大并且极大地减慢了我们的系统。我们已经完成了为 PostgreSQL 推荐的所有调整技术,但我们仍然遇到缓慢的问题。
我们的想法是按天而不是按小时开始汇总,但问题是我们允许客户更改时区,从而重新计算当天的数据。
有谁知道如何存储每日摘要,但在切换时区时仍然尊重数字和总数?
【问题讨论】:
-
我们是在谈论地球上的所有时区吗?
-
严格来说,对于数据建模,当您进行日粒度时,您会丢失时区级别的详细信息。但是,您也许可以按时区汇总,尤其是当@MPelletier 的问题的答案是“否”时。
-
@MPelletier 我们现在按小时聚合,所以我们只支持“整点”的时区
-
@bobs 这行数据没有时区信息,都是UTC。当用户想要查看他们在某一天、某个时区赚了多少时,就会发生这种变化。
-
进一步澄清,如果他们在 1 日每小时赚 1 美元 (UTC),然后在 2 日和 3 日每小时赚 2 美元 (UTC),如果他们在美国东部标准时间观看第二次加起来应该是 20 美元,如果他们将时区更改为 UTC,那么加起来是 24 美元
标签: sql database database-design data-warehouse