关于使用tiflash后mpp的问题

【 TiDB 使用环境】测试
【 TiDB 版本】7.1
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
测试tiflash的mpp
增加了2个tifash组件,然后使用
ALTER TABLE z_dev.clerk_daily_report SET TIFLASH REPLICA 2;
命令增加了2个副本
这个表大约6千万条数据
问题是很少再执行计划中看到mpp, 什么情况下才有走mpp的
表结构


执行计划如下,对一列求和

你可以通过修改变量 tidb_allow_mpptidb_enforce_mpp 的值来更改选择策略。
如果是测试的话,可以把两个选项都开了,那样所有的sql都会走mpp

好的,我试试

我什么都没动,过会儿查又走mpp了,挺奇怪的


如果是allow=on,enforce是off的话,就是优化器选择了。。。

1 个赞

目前默认是allow=on,enforce是off

优化器自己的选择

可以参考下先

https://docs.pingcap.com/zh/tidb/stable/use-tiflash-mpp-mode

这种大表全表扫描场景基本都会走tiflash,你这里开始没走可能是数据库还没完全同步到tiflash中,需要看下tiflash数据同步状态(information_schema.tiflash_replica),如果都完全同步了就稳定走tiflash了。

TiDB 默认由优化器自动选择是否使用 MPP 模式,你可以通过修改变量 tidb_allow_mpp 和 tidb_enforce_mpp 的值来更改选择策略。


同步完后过了一天查都没走,我怀疑和执行计划缓存有关系,最后重启tidb server正常了

同步完成后没有分析表

有道理,不过这个不应该自动分析吗

tidb会自动分析选择的