前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >性能测试中的DB优化

性能测试中的DB优化

原创
作者头像
漫谈测试
发布2025-02-08 09:45:26
发布2025-02-08 09:45:26
1021
举报
文章被收录于专栏:漫谈测试

对使用数据库通常有3个要求:性能好,数据一致性有保障,数据安全可靠。数据库优化的前提也是这3个要求。有一句玩笑叫做“少做少错,不做不错。”DB优化的思路就是少做:减少请求次数,减少数据传输量,减少运算量(查询,排序,统计)。

以Oracle为例,大体从下面几个方向进行优化。

1>优化物理结构。数据库逻辑设计与物理设计要科学高效,例如分区设置,索引建立,字段类型及长短,沉余设计等。

2>共享SQL,绑定变量,降低高水位。

共享SQL,绑定变量旨在减少SQL语句的编译分析分析时间;降低高水位旨在减少遍历范围,提高查询效率。

3>优化查询器。特殊情况下优化执行计划,指定的执行计划加快查询速度。例如连接查询时指定驱动表,减少表的扫描次数。

4>优化单条SQL。对单条SQL进行优化分析,例如查询条件选择索引列。

5>并行SQL。对数据量巨大的表的数据遍历,用多少个线程分块处理任务。

6>减少资源争用(锁,缓存等)。可以提高IO效率,减少响应时间,从而降低吞吐量来缓解争用,例如用缓存,可以用物理拆分把热点数据分布在不同表空间。

7>优化内存,减少物理IO访问。

SGA(缓存高频访问数据),例如我们把客户信息加载到内存中。

PGA(排序,散列)

AMM(自动内存管理)人工干预

优化IO,进行条带化,读写分离,减少热点等。

注意:

单系统性能分析的思路是通过现象结合监控锁定性能问题(程序,配置,IO等)。

单系统性能调优的思路是减少资源占用,减少请求。

阅读后若有收获,不吝关注,分享,在看等操作!!!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档