用于存储商店/反馈的表格的结构

时间:2013-10-03 17:52:43

标签: sql ruby-on-rails database postgresql

我将使用Rails / PostgreSQL制作一些Web应用程序,我需要您对一个数据库结构的建议。有2个表:商店和反馈。 “商店”必须存储一些基本信息:名称,地址等。“反馈”必须存储有关反馈的信息:描述,用户对商店的评级。 网络应用必须显示商店及其平均评分。我可以在“反馈”表中存储有关评级的所有信息,并使用SQL函数计算平均值(通过shop_id获取所有反馈,将其求和并除以反馈数)。但是为了更快地在“商店”表中增加2个额外字段“rating”,“count_of_feedbacks”可能会更好吗?拜托,给我建议。

1 个答案:

答案 0 :(得分:1)

事实上,你正在描述(创建额外的字段“以便更快地完成”),甚至在知道它是否会变慢之前称为过早优化。 Ant是一件坏事。一件非常非常糟糕的事情。

您还希望在数据库中复制数据 - 这也是一件坏事。您必须为每次更新维护正确的rating版本 - 这对于多个并发事务/连接来说并不容易。

我的建议 - 保持简单,只有当它们变为现实时才能解决性能问题。有很多方法可以在现代数据库中修复它们。