码迷,mamicode.com
首页 > 数据库 > 详细

Mysql分表的一个考虑

时间:2019-06-10 13:52:06      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:根据   记录   一个   detail   用户表   简单   geek   思路   问题   

  今天看到一篇博客,讲述的是Mysql的分表方案,内容比较简单,不过有个思路倒是挺好的,记录下,后续分表可以参考

作者主要是说到两种分表,一个是取模,另一个是范围分表

取模:比如用户ID%10,分10张表

范围分表:比如约定,用户ID0~1000w的数据存在表1,1000w~2000w的用户表2,以此类推

 

两者各有优缺点,主要体现在扩展性,冷热数据均匀分布的问题。

取模的话,冷热数据比较均衡,但是扩展性比较差,加入后期数据量翻一倍,10个表存不下了,再加10个表咋办?

范围分表的话不存在扩展性问题,但是按照一般的用户来说,新用户比较活跃,大部分查询都在最新的表上

 

解决问题很简单,两者综合,貌似好多解决方案都是各取所长

首先根据范围分组,比如用户ID1~4000w,分在group1,然后在group1里面做取模分表,相当于group1最大的数据量已经确定了,扩展问题不存在了

 

参考文章: https://www.geek-share.com/detail/2771122100.html 

Mysql分表的一个考虑

标签:根据   记录   一个   detail   用户表   简单   geek   思路   问题   

原文地址:https://www.cnblogs.com/xiaoqifeng/p/10996891.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!