跟踪点:插入还是更新?

时间:2011-07-27 21:59:34

标签: php ruby-on-rails ruby database database-design

我正在为我的应用添加积分系统,对于用户采取的每项操作(注册,投票,评论等),他们都会获得积分。由于它是一个相当常见的功能,我想了解其他人如何实现他们的积分系统。

更具体地说,在跟踪点时,无论是在点表中进行新插入,还是在需要总计时执行SUM,或者是为每个用户更新单个条目。哪些关键因素会影响另一方面的决策,以及有哪些权衡取舍?

直观地说,由于插入通常比更新便宜,我认为插入是假设每个用户的平均点数不是太高的方法。但是,我不是数据库专家,所以我很想得到你的想法。

1 个答案:

答案 0 :(得分:0)

  

哪些关键因素会影响另一方面的决定,并且   有什么权衡取舍?

性能可能不会影响它。主要的摇摆可能是你是否想跟踪获得积分的方式。用户可能想要返回并查看他的动作和后续要点。在这种情况下,您需要以某种方式跟踪每个奖励。

考虑到这一点,你应该倾向于某种点表,每个用户/一行有一行。