SQL优化
优化目标
减少IO次数‘
IO是数据库最容易遇见瓶颈的地方,这是由于数据库自身的职责所决定的,大部分的数据库操作中超过百分之九十的时间都是IO操作所占用的,减少IO次数永远是SQL优化中需要第一时间优先考虑的。同时,这也是最有效的手段之一。
降低CPU计算
除了 IO 瓶颈之外,SQL优化中需要考虑的就是 CPU 运算量的优化了。order by, group by,distinct … 都是消耗 CPU 的大户(这些操作基本上都是 CPU 处理内存中的数据比较运算)。当我们的 IO 优化做到一定阶段之后,降低 CPU 计算也就成为了我们 SQL 优化的重要目标
优化措施
添加索引
可以先在我们的组件上面添加索引,从而提高查询效率;也可以在经常使用的一些字段上面添加索引,从而提高查询效率。
避免模糊查询%开头
对于查询语句优化:尽量避免百分号以like开头的查询语句,尽量避免触发全表扫描的查询语句。
避免全表扫描和冗余数据等
数据库结构优化,可以根据我们的实际业务需求来设计合理的数据库结构,然后避免冗余的数据和不必要的字段。
计合理的数据库结构,然后避免冗余的数据和不必要的字段。