美文网首页
NoSQL数据模型设计 - 特殊应用建模 - 计算数据

NoSQL数据模型设计 - 特殊应用建模 - 计算数据

作者: 李桐2000 | 来源:发表于2020-10-03 22:40 被阅读0次

本文为NoSQL数据模型设计系列的一部分。

如果经常需要获取保存数据的某个计算结果,并且读次数远多于写次数,可以采用计算模式。

计算模式

应用将计算结果保存在一个单独字段中,需要时直接使用,不用再反复计算。如果写操作并不频繁,可以在在写的同时更新计算结果值,反之,应通过定时任务更新计算值。

考虑下面影屏集合

// screenings collection

{
    "theater": "Alger Cinema",
    "location": "Lakeview, OR",
    "movie_title": "Reservoir Dogs",
    "num_viewers": 344,
    "revenue": 3440
}
{
    "theater": "City Cinema",
    "location": "New York, NY",
    "movie_title": "Reservoir Dogs",
    "num_viewers": 1496,
    "revenue": 22440
}
{
    "theater": "Overland Park Cinema",
    "location": "Boise, ID",
    "movie_title": "Reservoir Dogs",
    "num_viewers": 760,
    "revenue": 7600
}

针对某个电影,经常需要查询总观影人数和总销售额。为了避免每次都计算这些汇总值,使用计算模式计算好这些汇总值,并存入电影集合。

// movies collection

{
    "title": "Reservoir Dogs",
    "total_viewers": 2600,
    "total_revenue": 33480,
    ...
}

如果系统数据更新不频繁,可在更新影屏数据时同时更新电影数据。如果数据更新频繁,应定时例如每小时计算电影数据。

完整内容请查看NoSQL数据模型设计系列

相关文章

网友评论

      本文标题:NoSQL数据模型设计 - 特殊应用建模 - 计算数据

      本文链接:https://www.haomeiwen.com/subject/hzrcuktx.html