Oracle 优化策略

1.    普通表转分区表(大表-2G,多于1000万条记录)

2.    索引(减少非索引扫描)

建立索引在约束条件列,选择性高列,被驱动表(内表)连接列(驱动表的连接列不一定)

结果集在总行数的2%-4%,应建索引(编号,日期,外键)

函数索引- QUERY_REWRITE_INTEGRITY = TRUSTED,QUERY_REWRITE_ENABLED = TRUE,

bitmap/bitmap join 索引- STAR_TRANSFORMATION_ENABLED=TRUE,bitmap join index 将join信息存储在index里,适用于dim/fact join)

本地索引-索引字段=分区字段,不保证唯一性,

复合索引-leading column/Selectivity

3.    减少远程数据库(DB link-collocated in line view~subquery in remote db)的访问(采用MQT或临时表,实现hash join)

4.    分拆存储过程,以便并行执行。

5.    归档部分历史数据到备份表

6.    加大commit的行数

7.    Select/fetch BULK COLLECT INTO,FORALL insert/delete/update

8.    Hints(CBO,统计信息要更新)

9.    Merge 代替 update and insert(大表更新大表)

10. 消除占位操作和开关操作(如果存在)

11. 消除绑定变量(会导致执行计划不是最优)

12. 使用Star query(bitmap index in fact table, STAR_TRANSFORMATION_ENABLED=TRUE)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值