数据库:存储计算值与计算每个请求

时间:2018-02-06 03:35:46

标签: database-design

你好我有关于存储计算值的困境,或者只是计算每个请求的值。

应用程序需要计算数百万行(它是基于股东的应用程序),但我遇到了DRY原则,该原则声明我们不应该保留任何副本。

从业务角度来看,两种方法都有利弊(保持低成本但确保数据完整性),我应该使用哪种方法,还是有其他选择?

谢谢!

1 个答案:

答案 0 :(得分:0)

我认为DRY与源代码的关系不仅仅是数据库设计。

例如,具有

的表格是正常模式

原始数据(全部) - >每小时汇总数据 - >每日汇总数据等

您需要考虑数据适合的逻辑格式。

其他可能的解决方案是:

查看 - 创建一个视图表,用于计算值并让客户端访问视图(这样您就不必实际存储计算)。

服务器/客户端缓​​存 - 计算客户端的值,并根据计算的生命周期设置相关的缓存时间。