MySQL数据库分区

时间:2012-02-01 01:42:21

标签: mysql sql partitioning

我有一张巨大的桌子name, date, source, detail, viewsname, date, source, detail在一起作为PK。 source最初是ENUM类型。

现在我打算对表进行分区。我计划将source更改为sourceid (INT)PARTITION BY LIST (sourceid)。我在另一张小桌子上测试过。

我的问题是,我是否需要一些添加过程(例如,修剪)以使后面的SELECT命令更快? AND将简单SELECT * FROM tb WHERE sourceid = 1命令更快(只查找正确的分区而不是整个表)?

1 个答案:

答案 0 :(得分:0)

  

我是否需要一些添加过程(例如,修剪)以使后来的SELECT命令更快?

使用分区不会神奇地使SELECT更快。

  

简单SELECT * FROM tb WHERE sourceid = 1命令会更快(只查找正确的分区而不是整个表)?

MySQL会分析WHERE子句来决定从哪个分区读取?是。

这会比sourceid上的索引更快吗?在不了解您的数据库的情况下无法说出来。