我正在寻找一个最优的解决方案来处理我的数据库(MySQL),但是我卡在了一个决定上,即是否存储一个Total
列。
这是我的数据库的简化版本:
我有一个Team
表,一个Game
表和一个'Score'表。 Game
将有{teamId,scoreId,...}
,而Score
表将有{scoreId,Score,...}
(这里的...表示表中的其他列)。
在主页上,我需要显示团队及其得分的列表。随着时间的推移,团队的数量将增长到数百个,而得分列表将增长到数万个。哪种方式更好:
- 每次请求页面时,我应该总结得分并显示在团队旁边。(我不想缓存,因为得分会不断变化)还是
- 我应该在
Team
表中有一个total_score
字段,在为该组添加新得分时更新该团队的总得分?
这两种方法哪种更好,或者是否有其他更好的方法?