MySQL分表实现上百万上千万记录分布存储的批量查询设计模式2011-10-24我们知道可以将一个海量记录的 MySQL 大表根据主键、时间字段,条件字段等分成若干个表甚至保存在若干服务器中。唯一的问题就是跨服务器批量查询麻烦,只能通过应用程序来解决。谈谈在Java中的解决思路。其他语言原理类似。这里说的分表不是 MySQL 5.1 的 partition,而是人为把一个表分开存在若干表或不同的服务器。1. 应用程序级别实现见示意图

SelectThreadManager 分表数据查询管理器它为分表的每个database or server 建立一个 thread pooladdTask() - 添加任务stopTask() - 停止任务getResult() - 获取执行结果最快的执行时间 = 最慢的 MySQL 节点查询消耗时间最慢的执行时间 = 超时时间