Mysql分表分库
Mysql分表分庫
垂直拆分(根據業務拆分)、水平拆分(將一張大的表 拆分成n多張不同的子表。)。
大型互聯網公司中
會根據業務來實現拆分
分成不同的團隊 每個團隊中都有自己獨立的數據庫
會員服務—會員db
訂單服務—訂單db
支付服務-----支付db
垂直拆分
淘寶網—是否屬于垂直電商? 不是
當當網----主要核心的業務賣書籍 —垂直電商
什么是垂直拆分
1.數據庫拆分主要指分庫分表,其目的主要是分散數據庫壓力,達到橫向擴展,滿足均衡訪問等。
2.數據庫拆分主要有兩種方式:垂直拆分和水平拆分。
A.垂直拆分:
將不同業務功能相關的表放到不同的數據庫中 也就是類似于 微服務架構中 會員數據庫/訂單數據庫/支付數據庫
例如 當當網(賣書)
http://static.mayikt.com/dagang.html
什么是水平拆分
B.水平拆分:
當一張表的業務量行數如果超過500萬行(阿里巴巴java開發手冊官方推薦),分頁/排序效率還是非常低,可以對同一張表數據實現拆分放到多個不同的表中存放。
User表 —500萬行數據 考慮分表
User0----500萬行數據
User1----500萬行數據
User2----500萬行數據
User3----500萬行數據
總結
- 上一篇: Seata阿里分布式事务中间件(一):S
- 下一篇: linux cmake编译源码,linu