分库分表
2022-10-19 12:37:13 52 举报
分库分表介绍,优缺点
作者其他创作
大纲/内容
商品描述
描述id商品id描述信息
商品1
商品id商品名称商铺id产地规格价格
商品描述1
水平分库
以商品id的奇偶进行拆分,此操作要访问表名称的表达式为商品信息[商品ID%2 + 1] 。
商品
卖家库
好处:1)解决业务层面的耦合,业务逻辑清晰2)不同业务。分开管理、维护、监控、扩展多个服务器分摊压力,提高并发度,IO减少
垂直分库
好处:1)充分发挥热门数据的操作效率商品信息操作高效率不受描述信息低效率的影响2)避免IO争抢并减少锁表的几率用户查看商品列表和商品描述互不影响
同一个表的数据按照一定的规则,拆分到不同的库中
商品描述2
水平分表
问题:描述字段访问频次低,但是长度大,占用空间大,访问单个数据IO长;其它字段访问频次高
问题:1)依然没能解决单表数据量过大的问题2)需要解决跨库带来的所有复杂问题
问题:数据量大,磁盘不够了
店铺库
商品1(id%2)
商品id商品名称商铺id产地规格价格描述
商铺表
商铺id商铺名称
商品2
商品2(id%2+1)
问题:查询复杂化1)需要进行额外的路由工作2)需要解决跨库带来的所有复杂问题
好处1)优化单表数据过大产生的性能问题2)避免IO争抢并减少锁表的几率
商品按照店铺id的奇偶进行分库
好处:1)解决单库大数据,高并发性能瓶颈2)提高系统的稳定性(IO冲突减少,锁定减少)及可用性(某个库出现问题,部分可用)
商品库
垂直分表
总结:1)根据耦合松紧度,确定垂直分库,垂直分表方案2)数据量以及访问压力不是特别大情况下,尽量先选择读写分离,缓存、索引技术等方案3)如果数据量极大,且持续增长,那么再考虑水平分表、水平分库的方案
0 条评论
下一页