oracle 查询优化

语法优化

1.索引正确的建立,对于频繁更新的表的字段不适合键索引,将索引建在唯一主键上,如果表数据过大,考虑建分区索引
2.sql语句的写法,尽量减少多表的关联,关联字段走索引字段,避免不走索引的写法,对于字典表这种类似的表没有必要做关联查询,可以放入缓存中做
3.查询的sql拆分,对于复杂的sql,可以拆分成2-3个sql来查询,这样减少每次查询的耗时时间,减少对数据库的影响
4.表字段的返回,sql查询尽量返回需要的自动,不必要的自动没有必要返回,避免select *这种写法

表设计优化

1.建表的时候,表与表之前的关联关系,尤其是大基表,尽量做一些与其他表的主键冗余,这种避免通过中间表才能关联到
2.表设计的字段,避免分配超过该字段长度的太大空间,避免建一些无用的字段,导致资源的浪费
3.避免单表字段过多过长,除非你做表字段冗余查询

架构优化

1.尽量走缓存,减少对数据库的访问
2.对结果数据的缓存,可以将静态数据和动态数据分离,静态数据缓存,动态数据查询,减少字段返回,
3.进行异步查询,避免查询卡死
4.进行热数据提前通知缓存,避免峰值带来的数据库压力
5.进行读写分离,进行容错机制,将对数据库访问流量分离
6.分库分表,对应大数据,高并发查询
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值