当前位置:网站首页>MySQL的分库分表策略及应用场景
MySQL的分库分表策略及应用场景
2022-06-29 08:17:00 【amateur12】
分库
解决单台数据库的性能问题
水平分库:取模
确定需要将数据平均分配到多少个库中,也就是:库容量
对用户ID进行取模,user_id%库容量,结果为0的在第一个库,结果为1的在第二个库。。。
垂直分库:根据业务拆分
订单数据过多时可给订单单独创建数据库
分表
解决单表海量数据的查询性能问题
水平分表
以行为单位对数据进行拆分
分表之后,所有表的结构都是一样的
解决表数据太多的问题
方法:确定需要将数据平均分配到多少张表中,也就是:表容量
对用户ID进行取模,user_id%表容量,结果为0的在第一张表,结果为1的在第二张表。。。
垂直分表
按列分为多张表,多张表通过主键进行关联,从而组成完整的数据
分表之后,每张表的结构都不相同
解决列太多的问题
同时分库分表
中间变量 = user_id%(库容量*每个库的表容量)
库号 = 取整(中间变量/每个库的表容量)
表号 = 中间变量%每个库的表容量
弊端
原本跨表的事物变成了分布式事物;
由于记录被切分到不同的数据库和不同的数据表中,难以进行多表关联查询,并且查询要指定数据的库号表号。
对系统进行进一步的扩阵容(库号表号变更),将变得非常不方便,需要我们重新进行数据迁移。
多少数据量分表合适
理论500w可分表(分表后比较快)
实际1000w-2000w左右才分表
总之不能超过5000w才分表,5000w是索引极限
补充:如果订单数据需要做出统计,统计每个月销售量之类的信息,可以使用按月分表,否则,不建议,因为可能会造成某个月份数据太多,而某个月份数据很少的情况
边栏推荐
- Backpack Lecture 9 - detailed understanding and code implementation
- 启牛学堂让开的证券账户是真的安全靠谱吗?
- 背包九讲——全篇详细理解与代码实现
- C# 语音端点检测(VAD)实现过程分析
- 关于父母离婚后子女姓名变更有关问题的批复
- 城通网盘仿蓝奏网盘源码 附带视频教程
- 2022年7月产品经理认证招生简章(NPDP)
- 目标跟踪【单目标跟踪(VOT/SOT)、目标检测(detection)、行人重识别(Re-ID)】
- NP5 格式化输出(三)
- A high-frequency problem, three kinds of model thinking to solve this risk control problem
猜你喜欢

MQTT第二话 -- emqx高可用集群实现

Some "non-technical" Thoughts on distributed digital identity

【最全】PS各个版本下载安装及小试牛刀教程(PhotoShop CS3 ~~ PhotoShop 2022)

Leetcode (142) - circular linked list II

批量处理实验接触角数据-MATLAB分析

航芯开发板&调试器

互斥量互斥锁

The @dynamicmemberlookup and callasfunction features in swift implement the object transparent proxy function

The sixth season of 2022 perfect children's model Qingyuan competition area audition came to a successful conclusion

Oracle-子查询
随机推荐
js for in循环 for of循环的区别以及用法
Core development board & debugger
NP3 格式化输出(一)
Simple use of vlookup function in Excel -- exact matching or approximate matching data
目标跟踪【单目标跟踪(VOT/SOT)、目标检测(detection)、行人重识别(Re-ID)】
分布式数字身份的几个“非技术”思考
2022年7月产品经理认证招生简章(NPDP)
TypeScript 變量聲明 —— 類型斷言
(pytorch进阶之路三)encoder self attention mask
Speech signal processing - Fundamentals (I): basic acoustic knowledge
开发小技巧-图片资源管理
New spark in intelligent era: wireless irrigation with Lora wireless transmission technology
Voice annotation automatic segment alignment tool sppas usage notes
The sixth season of 2022 perfect children's model Qingyuan competition area audition came to a successful conclusion
P6772 [noi2020] gourmet (matrix fast power)
Debugging nocturnal simulator with ADB command
Some behaviors of Apple developers that are prone to investigation
51单片机中断与定时器计数器,基于普中科技HC6800-ESV2.0
(III) encoder self attention mask
Message Oriented Middleware: pulsar