创建/销毁查询比编辑/更新更快?

时间:2017-11-10 00:40:24

标签: javascript sql ruby-on-rails database performance

创建/销毁查询的速度是否比编辑/更新更快?

如果我们想要在帖子中添加相似的功能,最好创建一个新表格"喜欢"使用user_id和post_id列或在帖子表上创建一个新列likes_number?

非常感谢。

1 个答案:

答案 0 :(得分:1)

这在很大程度上取决于许多不同的参数,但通常会考虑以下因素:

  • 是否有特定于旗帜的元数据?在喜欢的情况下,可能存在:制作类似的用户,类似时间的时间戳作为示例。在post表中跟踪这些数据将需要每列数据的列。如果要存储此元数据,则应使用另一个表。

  • 是否存在一对多关系?在这种情况下,可以有许多喜欢的人。这表明另一个表中的行可能有值。每一行都存储元数据。

  • 如何使用表 - 锁定会对性能产生影响吗?在你的情况下,我怀疑它,但可能是锁定到行以更改类似计数可能会导致性能问题。如果相同的数据位于不同的表中,则不会产生任何影响。

对我而言,似乎很清楚,在这种情况下,另一个表是有道理的。

其他类型的数据可能是另一种方式 - 例如,在待办事项列表中完成任务的标志。在这种情况下,只添加一列是有意义的。

至于创建/存储与编辑/更新 - 它在很大程度上取决于许多细节,但我会说通常编辑/更新更快。