【发布时间】:2011-12-12 08:34:30
【问题描述】:
假设我有一个很大的 MySQL InnoDB 表 (100Gb),并且想要在分片之间拆分这些数据。这些表看起来像这样Post(id: int, user_id: int, body: text, ...)。表被大量索引。服务器托管在 AWS 上并使用 EBS 磁盘。
应根据user_id 键执行拆分。例如。 id 为 1..100 的用户帖子应该存储在 shard1 上,用户 ID 为 101..200 的帖子应该存储在 shard2 上,依此类推。
我尝试过INSERT .. SELECT,但估计表明这最多需要 5 天。
那么,关于如何在合理的时间内吐出数据有什么想法吗?
【问题讨论】:
标签: mysql innodb partitioning sharding