我有以下情况的问题:
我已经有一个分数表,存储每个用户的每个游戏的最佳分数。大约一个用户在得分表中大约有 10 行该用户的 10 场比赛的最高得分。如果我想获得排行榜的整体前 10 名用户,理论上我可以直接查询分数表。但是我担心如果score表中的用户太多,同时有很多用户同时查询前10名,在服务器上查询会不会太长?
是否值得创建一个单独的表来缓存每个游戏的前 10 名用户,这样缓存表的大小是固定的,并且查询时间不会随着用户数量的增加而增加?我可以每隔一小时更新一次缓存表。
我不确定不同的数据库是否会有所不同。现在我使用的是 Parse.comd Server 提供的 MongoDB。稍后我可能会转移到其他数据库(如 MySql)。