我有一个由两个进程使用的表。
表格如下:
valueID (INT PRIMARY AUTO INCREMENT)
value (VARCHAR 100 UNIQUE)
进程1以>每秒250的速度查询SELECT valueID FROM table WHERE value = '$val'
流程2执行相反的操作:SELECT value FROM table WHERE valueID = '$valid'
,速率>>每秒
所以这张桌子很大,而且非常大>超过5000万行并且快速增长。 由于桌子的大小不断增长,我目前的性能正在下降。我想优化它。考虑分区而不是其他分区将在性能上受到打击。 目前MyISAM也可以使用InnoDB。
关于此表的最佳设置是什么的任何想法?
答案 0 :(得分:0)
您可以在
范围内分配费率SELECT valueID FROM table WHERE value = '$val' at a rate>=250 and rate<=400
AND
SELECT valueID FROM table WHERE value = '$val' at a rate>=401 and rate<=600