NoSQL数据应该是预先计算的数据吗?

NoSQL数据应该是预先计算的数据吗?,nosql,Nosql,我的问题如下,在NoSQL家族中,当我们存储值时 存储的值是否应完全准备好供应用程序直接使用?或者,以一种可能需要额外处理才能用于应用程序的方式存储值也可以吗 举个简单的例子,如果我们想计算一整天的平均值,那么总是存储平均值是否更有意义,或者最好是使用一些键,表示每个值,然后让应用程序计算平均值 第一种方法在我们获得值后会更快,但会被限制为从全天获取值,而第二种方法会更慢(我们需要每次计算平均值),但我们也可以计算每小时的平均值 对我来说,这是一个哲学问题,同样,NoSQL数据库中的数据应该完全

我的问题如下,在NoSQL家族中,当我们存储值时

存储的值是否应完全准备好供应用程序直接使用?或者,以一种可能需要额外处理才能用于应用程序的方式存储值也可以吗

举个简单的例子,如果我们想计算一整天的平均值,那么总是存储平均值是否更有意义,或者最好是使用一些键,表示每个值,然后让应用程序计算平均值

第一种方法在我们获得值后会更快,但会被限制为从全天获取值,而第二种方法会更慢(我们需要每次计算平均值),但我们也可以计算每小时的平均值

对我来说,这是一个哲学问题,同样,NoSQL数据库中的数据应该完全准备好使用,或者以需要一些额外处理的方式拥有数据是有意义的


非常感谢:)

您的考虑事项与NoSQL没有直接关系-它们是需要决定的应用程序级问题

也就是说,在聚合方面,有一些特定的NoSQL数据库在性能方面优于其他数据库。例如寻找利用MapReduce创建聚合的方法


还可以看到这个类似的问题和答案:

在我的理解中,NOSQL哲学告诉我们要存储预先计算好的值以备使用
我们可以考虑让它有点失速,例如,重新计算每小时的日平均值。br> 我可以将NOSQL视为RDBMS,它放弃了连接和扫描,并发誓总是通过主键访问数据。为此,它被授予了可伸缩性。因此,将复杂性的一部分转移到应用层就变得简单了。因此,我觉得有责任在应用程序级别保持平均值是合乎逻辑的

我们也可以从不同的角度看待同一个问题。让我们假设NOSQL服务器端具有良好的分组功能(我们没有…)。对于“按键”访问的“主要”情况,很难确保良好的服务质量。即使对于成熟的RDBMS,在混合OLAP-OLTP负载上确保良好的性能也不是一件容易的事。

还有一个考虑因素。如果我们想要存储平均值的预先计算的信息,那么就意味着要一直读写noSQL解决方案,假设noSQL通常不提供任何事务,如果两个实体尝试获取当前平均值,然后尝试计算新的平均值,我将没有一致的数据。