我目前正在使用从Firebase使用Cloud Firestore的系统。该网站有员工用户,他们可以撰写有关股票市场的预测。然后将预测结果添加到用户统计文档中,该文档包含诸如总利润,花费的总资金,ROI等信息,这是使用批处理完成的。我想根据以下信息显示用户统计信息:
用户统计文档当前如下所示:
{
ROI: 50,
totalProfit: 1000,
totalSpent: 1000,
...
}
我也想向用户显示每月和每年的统计信息,到目前为止,我一直在想的是:
{ "stats": { "2020": { "ROI": 50, "totalProfit": 1000, "totalSpent": 1000, "monthly": { "january": { "ROI": 50, "totalProfit": 1000, "totalSpent": 1000 }, "february": { "ROI": 50, "totalProfit": 1000, "totalSpent": 1000 } } }, "2019": { "ROI": 50, "totalProfit": 1000, "totalSpent": 1000, "monthly": { "january": { "ROI": 50, "totalProfit": 1000, "totalSpent": 1000 }, "february": { "ROI": 50, "totalProfit": 1000, "totalSpent": 1000 } } } } }
我真的避免每次用户请求统计信息时都进行统计计算,因为它基本上一直在累积。我用这种方法面临的唯一主要问题是,当它是新的月份或年份时,我必须创建对象字段“ February”,因为它尚不存在,并且似乎无法为此找到一个很好的解决方案。 / p>
我还有其他选择吗?或者这种解决方案还可以吗?