基于另一个表中的列对MySQL表进行分区

时间:2011-07-07 19:54:16

标签: mysql sql partitioning database-partitioning

我正在设计一个需要处理大量数据的新数据库。它将是一个数据仓库系统,因此将围绕中央集线器表进行组织:

create table hub(id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
date_time DATETIME NOT NULL, bit_of_data INT NOT NULL);

当这个表变得非常大时,似乎有必要根据'date_time'列对其进行分区,每个分区就是一个月的数据。但是,还会有另一张表:

create table other_data(id BIGINT NOT NULL PRIMARY KEY, 
more_data INT NOT NULL, FOREIGN KEY(id) REFERENCES hub(id));

第二个表格将包含主要“hub”表中出现的约90%ID的记录。我想分区'other_data'表和'hub'表,并让分区基本上相互匹配。有没有办法在日期范围内对“hub”表进行分区,然后在同一日期范围内对“other_data”表进行分区?

谢谢!

1 个答案:

答案 0 :(得分:1)

只能通过在其他数据表中添加(冗余)日期列来完成此操作。