数据库信息
- 具有单个表的数据库(innodb存储引擎)
- 此表约为350GB,包括表和索引。
- 表大小〜250GB
- 索引大小〜110GB
- 表已分区,分区大小从1G到10G
- 表包含3个索引。
- 一个是主要的(带有非自动增量列)。
- 其余两个索引不唯一
- 此服务器上没有其他应用程序在运行。
我有一个查询仅击中该表的一个分区,第一次运行花了30秒。但是,在随后的运行中,仅需2秒钟。
查询
- 为什么第一次执行要花30秒,而随后要花2秒?
- 是否要将特定分区的整个索引数据带入内存?
- 由于查询同时使用了PRIMARY和Secondary索引,是否会将data + index都带入内存?
执行计划,以防万一。
Execution plan