我正在研究数据库性能优化问题,我在mysql集群上做了一个简单的测试,问题是为什么30M记录中的单个group by语句需要花费1m20s这么长时间。
环境:
linux x64 centos
mysql cluster 7.4.8
集群:
1个主节点32GB内存,40个核心cpu
3个数据节点32GB内存,40个核心cpu(每个节点)
3个sql节点32GB内存,40个核心cpu(每个节点)
测试用例:
30,000,000个测试表中的recods
测试sql:
select count(*), sum(impress), sum(click) from test1 group by entitykey order by null;
2m20s,其中实体键列已编入索引。 1m20s没有实体键列索引。
这个测试结果让我困惑,为什么它如此痛苦
比较:
MS SQL SERVER:lenovo记事本,8GB内存,磁盘存储,i5 8核心cpu,以10秒完成!
我想知道,如果我错过了一些sql节点配置或其他什么?