短链平台开发-分库分表

面对单表大量数据,可以通过数据库参数调优、索引优化等软优化手段提升性能。当数据量巨大,考虑分库分表,如根据ID范围或Hash取模策略。分库分表能解决并发和性能问题,但会引入分布式事务和ID冲突等挑战,常用解决方案包括雪花算法等。
摘要由CSDN通过智能技术生成

问题引入:

假设一个面试题:这边有个数据库,单表数据1000w数据,未来一年还会增加500w,性能会比较慢,怎么优化?

思路:

        不分库分表:

                软优化:数据库参数调优;分析慢查询sql,分析执行计划,进行sql改写以及程序改写;优化数据的索引结构;优化数据表结构;引入NoSQL数据库和程序架构调整。

                硬优化:

                        提升系统硬件(更快的IO、更大的内存)- 带宽、CPU、硬盘。

        分库分表:

                1.根据业务情况而定、选择合适的分库分表策略(没有通用策略)

                        外卖、物流 、电商领域。

                2.先看只分表是否满足业务的需求和未来增长的数据量

                        数据库分表能够解决单表数据量很大时,数据查询效果问题,

                        无法给数据库的并发操作带来效率上的提高,分表的实质上还是在一个数据库中进行操作,收到IO性能限制,

                        如果单表解决不了需求,再进行分库分表操作。

结论:在数据量访问压力不是特别大的情况下,首先考虑读写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值