分库分表之拆分键设计
一、 水平、垂直拆分
-
垂直拆分:简单的说就是将数据库及表由一个拆分为多个,如我们这里的电商数据库,可以垂直拆分为用户数据库、商品数据库和订单数据库,订单表可以垂直拆分为订单基本信息表,订单收货地址表、订单商品表等,每一个表里保存了一个订单的一部分数据。
-
水平拆分:简单地说就是将一个库、一个表扩展为多个库,多个表,每一个拆分后的表中保存的依然是一个订单的完整信息。如电商数据库,我们按水平拆分数据库和表后,每一个拆分后的数据库表与现有未拆分前的都保持一致。
-
常用拆分方法:上述仅从理论上讲解了可行的水平、垂直拆分方法,在实际的生产上,我们拆分一般是按照水平拆表、垂直拆库这一原则进行,在业务比较复杂的场景下也会对表进行垂直拆分。
拆分键 | 商品编号 | 收货地址 |
Order_id | Sku_code | address |
拆分键 | 订单号 | 重量 |
Waybill_code | Order_Id | weight |
非拆分键查询条件 | 拆分键 |
用户编码 | 订单号 |
运单号 | 订单号 |
拆分键 | 商品编号 | 收货地址 |
Order_id | Sku_code | address |
拆分键 | 订单号 | 重量 |
Waybill_code | Order_Id | weight |
三、 拆分键的生成
免责声明:
1、本站资源由自动抓取工具收集整理于网络。
2、本站不承担由于内容的合法性及真实性所引起的一切争议和法律责任。
3、电子书、小说等仅供网友预览使用,书籍版权归作者或出版社所有。
4、如作者、出版社认为资源涉及侵权,请联系本站,本站将在收到通知书后尽快删除您认为侵权的作品。
5、如果您喜欢本资源,请您支持作者,购买正版内容。
6、资源失效,请下方留言,欢迎分享资源链接
文章评论