今天看到一篇博客,讲述的是Mysql的分表方案,内容比较简单,不过有个思路却是挺好的,记录下,后续分表能够参考html
做者主要是说到两种分表,一个是取模,另外一个是范围分表sql
取模:好比用户ID%10,分10张表htm
范围分表:好比约定,用户ID0~1000w的数据存在表1,1000w~2000w的用户表2,以此类推get
二者各有优缺点,主要体如今扩展性,冷热数据均匀分布的问题。博客
取模的话,冷热数据比较均衡,可是扩展性比较差,加入后期数据量翻一倍,10个表存不下了,再加10个表咋办?扩展
范围分表的话不存在扩展性问题,可是按照通常的用户来讲,新用户比较活跃,大部分查询都在最新的表上数据
解决问题很简单,二者综合,貌似好多解决方案都是各取所长查询
首先根据范围分组,好比用户ID1~4000w,分在group1,而后在group1里面作取模分表,至关于group1最大的数据量已经肯定了,扩展问题不存在了解决方案