Mysql分库分表

本文探讨了两种常见的数据库切分策略:垂直切分和水平切分。垂直切分通过业务拆分降低系统耦合,便于维护,但可能增加SQL查询复杂度;水平切分则解决了数据量大和高并发问题,但面临跨分片事务和复杂查询的挑战。这两种方法各有优劣,适用于不同的系统需求和场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 垂直切分

 冷热数据切分

按照业务进行拆分


优点:
解决系统业务层面耦合,业务清晰
便于开发运维人员维护,扩展,监控等
提升磁盘IO,查询效率

缺点:
表join过多导致sql查询复杂度提升
随着业务的开展依然可能存在单表过大的问题
分布式问题

2 水平切分

 按照时间切分

RANGE(根据范围进行切分)

地理区域切分

Hash取模(使用较多)

优点:
1. 不存在单库数据量过大、高并发的性能瓶颈,提升系统稳定性和负载能力
2.应用端改造较小,不需要拆分业务模块
3. “冷热数据分离”实现方案

缺点:
1. 跨分片事务难以保证2. 跨分片的复杂查询如join关联查询3. 数据多次扩展难度和维护量极大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值