3

鉴于您有一组具有日期或期间(2013-01)属性的文档,使用 MongoDB 的聚合框架计算移动平均统计数据(例如 3-m avg.)的最佳方法是什么?

4

1 回答 1

1

最好以合理的时间间隔运行整个聚合,并重新计算整个集合。如果您要计算 3 个月的平均值,请设置一个每天晚上运行的 cronjob 并计算平均值。

var minus3Months = new Date();
minus3Months.setMonth(now.getMonth()-3);
db.myCollection.aggreage([
    {"$match": {"createdAt": {"$gte": minus3Months}}},
    ......
])
于 2013-04-17T00:26:41.643 回答