不设置此参数,tikv内存占用约45%左右,但是把这个参数调小了之后,内存占用下来了,但是sql性能也并没有降低呀,请问此参数的意义和内部逻辑是什么,如果影响不大,是不是可以关掉或者限制成极小
我理解你的sql性能没有下降,可能是这个sql占用的资源本身就不多,可以测试一下一个大表查询大数据量时,这个参数对sql性能的影响。
我测试了,我表里有20亿数据,这个参数设置2G和16G时,查询count时,时间没有变化;查询其中一亿数据order by 排序,limit10000,时间也没有变化,是我哪里设置的不对吗
这是我的测试结果storage.block-cache.capacity :1Gb
mysql> analyze table sbtest10;
Query OK, 0 rows affected (18.52 sec)
storage.block-cache.capacity :2GB
mysql> analyze table sbtest10;
Query OK, 0 rows affected (9.20 sec)
storage.block-cache.capacity :4GB
mysql> analyze table sbtest10;
Query OK, 0 rows affected (8.80 sec)
mysql> select count(*) from sbtest10;
±---------+
| count(*) |
±---------+
| 10000000 |
±---------+
1 row in set (1.02 sec)
1 个赞
我在测试limit 50000数据甚至更大时,时间也是差不多,当sql需要扫描的数据块比较多时,这个参数值的设置对性能还是有影响的。
嗯嗯,这个参数其实大了会更好一些的
1 个赞
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。