优化 MongoDB 上的查询

问题描述

我正在开发一个健身应用程序。我已将 fitbit/garmin 与它集成。

所以我从这些供应商那里获得的心率数据是基于 Unix 时间戳的:

HEARTRATES COLLECTION

1614975688461 : 58BPM 
1614975688461 : 33BPM 
1614975688461 : 99BPM 
1614975688461 : 44BPM 
1614975688461 : 67BPM 
1614975688461 : 89BPM 

我的 mongoDB 中有一个集合,它将每个时间戳映射到心率。

现在我计划制作一个图表,显示该人每周、每月和每年的平均心率。

现在要做到这一点,我总是可以对我的数据库中的时间戳进行小于更大的查询(几个月的跨度为 30 天,年度图的跨度为 365 天),计算并获得应用程序的平均值,然后显示。但我的疑问是,这样的规模能达到 100 万用户吗?

我想到的替代解决方案:每次用户同步他们的 fitbit/garmin 设备时,我都会在每天结束时运行 cronjobs,为每个用户更新“每周”和“每年”的集合。这样,应用程序所要做的就是查询查询​​日期开始的每周数据的每周集合或从查询日期开始的数据的年度集合。

WEEKLY COLLECTION : WHICH UPDATES EVERDAY:
DAY 1: 56BPM
DAY 2: 56BPM
DAY 3: 56BPM
DAY 4: 56BPM
DAY 5: 56BPM
DAY 6: 56BPM
DAY 7: 56BPM

替代解决方案是否有意义还是让事情变得更糟?如果您有更好的解决方案,请告诉我,谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)