MYSQL在不同的表中移动频繁更新的列以获得更好的性能

时间:2016-11-27 16:48:58

标签: mysql pdo

我有一个简单的用户表,其中有一个名为'activationStatus'的列,它不断更新,是否更好的做法是将该列移动到另一个名为'activaton'的表中并使用userId作为其外键

1 个答案:

答案 0 :(得分:0)

可能。 除非能够在负载测试中证明它对您的应用程序产生影响,否则我不会这样做。

性能需要权衡。例如:

  • 您还需要多久将第二个表加入用户表?当您加入主键时,联接并不是那么糟糕,但它们并不是免费的。
  • 读写比例是多少?你说activationStatus是经常更新的,但读取频率仍然是10倍?

最终,Stack Overflow上的任何人都无法为您解答此问题,“但您应该使用自己的代表流量来测试自己的应用程序,以确定。”

另一种策略是将activationStatus存储在Redis等其他数据存储中,因此您总是写入快速内存。