表分区的最佳实践 - mysql 5.5

时间:2012-12-11 15:27:38

标签: mysql innodb partitioning

我有一个mysql 5.5服务器,带有一个我想分区的大(~150M记录)innodb表。

如何确定表的最佳分区数?

该表是一个“多对多”连接表,只包含两个int列(aId,bId),

aId大致在1..1,000,000的范围内接收值 bId接收的值大致在1..10,000,000

的范围内

大多数查询首先查找aId。

该表有两个索引: 初级(aId,bId) 指数(BID)

而且,问题是如何确定表的最佳分区数?

由于

1 个答案:

答案 0 :(得分:0)

如果您不想逻辑地构建数据,那么最佳分区数与服务器上的核心数相同。这将有助于多个并发查询。由于使用主索引,单个查询将同时运行。

我建议将您的第二个索引更改为index (bld,ald),因此bld to ald查询只能使用index来获取ald值,而无需转到数据库。