oracle使用索引和不使用索引性能分析
首先准备一张百万条数据的表,这样分析数据差距更形象!
下面用分页表数据对表进行分析,根据EMP_ID 字段排序,使用索引和不使用索引性能差距!
sql查询语法准备,具体业务根据具体表书写sql语法:
SELECT *
FROM (SELECT ROW_.*, ROWNUM ROWNUM_
FROM (SELECT *
FROM KQS_SQ_INFO i
ORDER BY i.EMP_ID desc ) ROW_
WHERE ROWNUM <= 20)
WHERE ROWNUM_ >= 10;
使用 explain plan for可以分析sql
如下:
explain plan for SELECT *
FROM (SELECT ROW_.*, ROWNUM ROWNUM_
FROM (SELECT *
FROM KQS_SQ_INFO i
ORDER BY i.EMP_ID desc ) ROW_
WHERE ROWNUM <= 20)
WHERE ROWNUM_ >= 10;
计算出SQL性能,使用
select * from TABLE(dbms_xplan.display);打印出性能分析表
如下图:
使用索引后:
使用索引前
可以清晰看到使用后cpu使用率很低,并且检索是从索引开始而不是全文检索
注意:为了提升性能,建议排序列为not null,具体为啥,当然百度咯
转载于:https://www.cnblogs.com/shihaibin821/p/9772026.html
oracle使用索引和不使用索引性能分析相关推荐
- Java 性能分析工具一览(JDK自带)
Jdk自带的监控程序 1. jstat 分析JVM HEAP占用情况 2. jps 查看JVM 进程 3. jmap 分析内存对象占用情况 4. jstack 查看JVM 调用堆栈情况 5. hppr ...
- OLTP系统的Oracle RAC性能调优,索引分区极大提升提交性能
有个误区:Oracle的表分区会增加查询性能,因为只需要在部分数据里查了:会增加降低插入性能,因为多了一步指定分区的操作.实际情况并非如此,至少在OLTP系统中,分区不一定会增加查询性能,但很可能会增 ...
- oracle的优化适用于mysql吗_性能优化之数据库优化,适用于Sqlite、Mysql、Oracle、Sql server,详细介绍了索引和事务及部分针对Sqlite的优化...
本文为性能优化的第一篇--数据库性能优化,原理适用于大部分数据库包括Sqlite.Mysql.Oracle.Sql server,详细介绍了索引(优缺点.分类.场景.规则)和事务,最后介绍了部分单独针 ...
- oracle建倒序索引,使用倒序索引提升ORDER BY DESC性能
使用倒序索引提升ORDER BY DESC性能 类别:Oracle数据库 作者:码皇 来源:踩点 的DBA生涯 点击: 使用倒序索引提升ORDER BY DESC性能使用倒序索引(IN ...
- 小编带你了解oracle使用索引和不使用索引性能分析
首先准备一张百万条数据的表,这样分析数据差距更形象! 下面用分页表数据对表进行分析,根据EMP_ID 字段排序,使用索引和不使用索引性能差距! sql查询语法准备,具体业务根据具体表书写sql语法: ...
- 【C/C++9】天气APP:Oracle的虚表/日期/序列,索引/视图/链路/同义词,数据库高可用性
文章目录 1.虚表/日期/序列:SEQUENCE 2.索引/视图/链路/同义词:create index/view/link/synonym 3.表空间/数据文件/启动关闭/权限/备份恢复:exp/i ...
- Oracle之表分区、分区索引(二)
其实range分区你学会了,其他的分区你也学会了,在这我就不敲了,咱们简单来看一下,hash分区,hash分区实现负载均衡,平均分配值进行分区,那这个哈希就是平均分配的,也是一张表,还是partiti ...
- oracle表重命名 索引,CSS_在Oracle数据库中按用户名重建索引的方法,如果你管理的Oracle数据库下某 - phpStudy...
在Oracle数据库中按用户名重建索引的方法 如果你管理的Oracle数据库下某些应用项目有大量的修改删除操作, 数据索引是需要周期性的重建的. 它不仅可以提高查询性能, 还能增加索引表空间空闲空间大 ...
- Oracle 19c 新特性:自动化索引 Automatic indexing 实践
老张拉呱:thomas zhang,甲骨文云平台事业部资深技术顾问,2008年加入甲骨文公司数据库咨询部门,10+年甲骨文解决方案咨询支持经验,资深系统工程师.Oracle OCM认证专家,具有丰富的 ...
最新文章
- 1091 Acute Stroke 需再做
- 用脑机接口创作音乐,将音乐与思想进行合成
- Linux内核源码树建立加载hello模块
- 网页编程技术二(块级元素和行内标签)
- 如何生成自己的Yaas Service yaas
- CentOS配置syslog发送到服务器
- 苹果x为什么是android,技术角度分析:这就是苹果手机和安卓手机为什么有差距的主要原因...
- Mysql连接失败报Received fatal alert: protocol_version问题解决
- 问题:pom文件飘红, parent.relativePath
- windows 两条命令快速关闭 445等危险端口
- 科沃斯的技术跃进:交互与场景才是未来
- 前端PDF文件转图片方法
- oracle查询一年的第几周,Oracle--计算某一日期为一年中的第几周
- HTML5 基础入门教程
- 电脑设备打印机驱动安装失败如何解决
- 20155322 2016-2017-2 《Java程序设计》第8周学习总结
- CSS布局之各种需要掌握的小技巧~
- 【饥荒脚本】饥荒控制台代码自动输入
- Hbuilder中如何快速输入注释标签_vscode中20个让人眼前一亮的插件
- 深度理解GRUU-Net
热门文章
- 拦截 数据_大数据之六类Flume拦截器配置
- c++求几个数的最大公约数_最大公约数,最小公倍数 A3
- java匹配机制_Java Spring:需要通配符@RequestMapping来匹配所有BUT / images / *以及对原始URL的访问权限...
- 华为服务器如何开机自动启动不了,华为手机开不了机停在开机画面怎么办【详解】...
- 关于高效、高质和高产
- 解决 ImportError: No module named 'pip._internal'问题
- Python代码规范(PEP8)问题及解决
- 《大数据导论》——2.3节业务流程管理
- php 简易验证码(GD库)
- Android用ImageView显示本地和网上的图片