数据库优化介绍

鉴于公司分享会,结合公司项目数据特地写下自己的理解,欢迎大家纠正,予以补充

 

当前主流计算机性能数据

延迟响应时间:表示硬件的突发处理能力

宽带吞吐量:代表硬件的持续处理能力

 

 

数据库访问优化法则简介

正常情况下,一般设备的瓶颈点我们都能快速的定位到,比如下载时候的网络速度回事瓶颈点,复制文件的时候硬盘读取速度回事瓶颈点,要正确优化SQL ,我们需要快速定位性能的瓶颈点,也就是快速找到主要的开销在哪里

 

数据访问的漏斗法则

 

 
这个优化法则归纳为5个层次:每一层优化法则都是解决其对应硬件的性能问题,所以带来的性能提升比例也不一样
减少数据访问 1~1000 低   创建并使用正确的索引  只通过索引访问数据  优化sql的执行计划
返回更少数据 1~100  低   数据分页处理(客户端分页,服务端分页,数据库分页) 只返回需要的字段
减少交互次数 1~20  低      比如 一次提交所有数据, 使用存储过程,查询数据使用in list+,优化业务逻辑
减少服务器CPU开销 1~5 低  使用绑定量 减少比较操作 比如like运算
利用更多资源 @~10  高     数据库并行访问数据
 
优化的主要考虑方向
 
1.查询的执行计划(即描述了一个查询是如何被执行的)
2.什么索引被使用,什么索引本来应该被用到,但是又没有使用。(因为此时存在缺失索引的性能问题)
3.I/O的状态(包含逻辑I/O操作和物理的I/O操作)
4.查询执行消耗的时间
5.查询等待其他资源消耗的时间 
6.查询在等待什么资源
 
 
sql查询数据库都进行了什么操作
 
待续...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

posted @ 2017-03-29 11:09  石猿  阅读(310)  评论(0编辑  收藏  举报