我知道我们可以明确地定义分区修剪。但是,我想知道它是否默认提供。我已经尝试过MySQL的官方文档站点。该网站称,“在MySQL 5.6.8及更高版本中,使用提供自动分区的存储引擎(如MySQL集群使用的NDB存储引擎)对所有表禁用分区修剪”。一个快速而切中要害的回答和解释将是值得的。
提前感谢
发布于 2016-05-26 09:23:41
简短的回答是:是的。
长长的答案:注意一些微妙的术语...
InnoDB没有“自动分区”;必须显式指定分区。NDB会自动对数据进行分区。
InnoDB将自动修剪到WHERE子句通过“分区键”上的条件隐式指定的分区。
但是,请注意,修剪通常并不比在未分区的表上创建一个好的复合索引更好。
我声称只有4 use cases能让PARTITIONing提供任何性能上的好处。此外,我认为BY RANGE是唯一有用的方法。
如果您愿意向我们展示您的SHOW CREATE TABLE和SELECT,我们可以讨论一下PARTITIONing是否有任何好处。如果没有好处,为什么。
https://stackoverflow.com/questions/37340007
复制相似问题