今天看到一篇博客,講述的是Mysql的分表方案,內容比較簡單,不過有個思路卻是挺好的,記錄下,後續分表能夠參考html
做者主要是說到兩種分表,一個是取模,另外一個是範圍分表sql
取模:好比用戶ID%10,分10張表htm
範圍分表:好比約定,用戶ID0~1000w的數據存在表1,1000w~2000w的用戶表2,以此類推get
二者各有優缺點,主要體如今擴展性,冷熱數據均勻分佈的問題。博客
取模的話,冷熱數據比較均衡,可是擴展性比較差,加入後期數據量翻一倍,10個表存不下了,再加10個表咋辦?擴展
範圍分表的話不存在擴展性問題,可是按照通常的用戶來講,新用戶比較活躍,大部分查詢都在最新的表上數據
解決問題很簡單,二者綜合,貌似好多解決方案都是各取所長查詢
首先根據範圍分組,好比用戶ID1~4000w,分在group1,而後在group1裏面作取模分表,至關於group1最大的數據量已經肯定了,擴展問題不存在了解決方案