oracle-决定回表性能的因素
2013-12-25 22:17
232 查看
oracle里面根据rowid再查询数据的过程叫做回表,有时候回表是不能避免的,那么回表的性能是什么决定的呢?下面我们来做一个实验。
1,首先创建一张表,脚本如下
这张表只有2列,X列是有序的数字,Y是随机数字转换的字符串,在表上面建立X的索引。
2.根据第一步创建的表,创建第二张表,这个表是建立Y的索引
3.在两张表上面分别运行
通过比较两者性能差异显著,这是为什么呢?
知道为什么了吧 ,聚合因子这2列查很多啊,知道什么决定回表的性能了吧。
注:为了确保能走索引,上面2条select用了Hints
1,首先创建一张表,脚本如下
这张表只有2列,X列是有序的数字,Y是随机数字转换的字符串,在表上面建立X的索引。
2.根据第一步创建的表,创建第二张表,这个表是建立Y的索引
3.在两张表上面分别运行
select /*+ index( colocated colocated_pk ) */ * from colocated where x between 20000 and 40000; select /*+ index( disorganized disorganized_pk ) */* from disorganized where x between 20000 and 40000; |
通过比较两者性能差异显著,这是为什么呢?
知道为什么了吧 ,聚合因子这2列查很多啊,知道什么决定回表的性能了吧。
注:为了确保能走索引,上面2条select用了Hints
相关文章推荐
- 减少oracle sql回表次数 提高SQL查询性能
- 减少oracle sql回表次数 提高SQL查询性能
- oracle 性能优化操作十八: 决定使用全表扫描还是使用索引
- 减少oracle sql回表次数 提高SQL查询性能
- 减少oracle sql回表次数 提高SQL查询性能
- Oracle优化01-引起数据库性能问题的因素
- 减少oracle sql回表次数 提高SQL查询性能
- oracle 性能优化操作十八: 决定使用全表扫描还是使用索引
- 12年资深DBA教你Oracle开发与优化——性能优化部分
- 降低磁盘IO使Oracle性能优化(转)
- 记一次处理oracle分区表索引"乱用"引起的SQL性能问题
- Oracle性能优化
- Oracle 怎么创建一个性能最优,最安全的线上用户!
- Oracle sql 性能优化调整
- Oracle SQL性能优化实例(2)
- oracle 性能优化建议小结
- 如何诊断Oracle Redo Log引发的性能问题
- Oracle性能优化之操作系统工具_超越OCP精通Oracle视频教程培训37
- oracle 数据库访问性能优化-1
- Oracle性能调优方法详解