基于成本的优化--CBO-------v$SQL视图

详解v$SQL视图
查询消耗磁盘I/O最多的SQL语句
select sql_text,executions,disk_reads
from v$sql
where disk_reads>&number
order by disk_reads desc;

使用变量&number使得用户可以自定义磁盘读取的次数,executions说明语句执行的时间量,包括该语句的等待时间和服务时间

分析缓冲区读取次数最多的SQL语句
查询逻辑读取数最多的SQL语句
select sql_text,buffer_gets,parse_calls
from v$sql
where buffer_gets>&number
order by buffer_gets

查询当前系统耗费CPU资源最多的前24个SQL语句
select sql_text,cpu_time,buffer_gets
from (select sql_text,cpu_time,buffer_gets)
from v$sql
order by cpu_time desc)
where rownum<24

原文地址:http://blog.51cto.com/10579005/2072818

时间: 2024-10-28 10:21:15

基于成本的优化--CBO-------v$SQL视图的相关文章

基于成本的优化--CBO

选择CBO的优化方式 默认条件下,CBO将SQL语句的吞吐量作为优化目标 三种不同的优化方式 ALL_ROWS :该优化方式是Oracle的默认模式,优化目标是实现查询的最大吞吐量 FIRST_ROWS_n:该优化方式使用CBO的成本优化输出查询的前n行数据,目标是以满足快速相应的查询需求, FIRST_ROWS  :该方式是FIRST_ROWS_n优化方式的老版本,作用是使用CBO的成本优化尽快输出查询的前几行数据,满足最小相应时间的需求 查询当前数据库的CBO优化方式 show parame

Apache Spark 2.2中基于成本的优化器(CBO)(转载)

Apache Spark 2.2最近引入了高级的基于成本的优化器框架用于收集并均衡不同的列数据的统计工作 (例如., 基(cardinality).唯一值的数量.空值.最大最小值.平均/最大长度,等等)来改进查询类作业的执行计划.均衡这些作业帮助Spark在选取最优查询计划时做出更好决定.这些优化的例子包括在做hash-join时选择正确的一方建hash,选择正确的join类型(广播hash join和全洗牌hash-join)或调整多路join的顺序,等等) 在该博客中,我们将深入讲解Spar

百万级数据库优化方案数据库SQL优化大总结

一.百万级数据库优化方案 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库. 备注.描述.评论之类的可以设置为 NULL,其他的,最好不要使用NULL. 不要以为 NULL 不需要空间,

基于RULE的优化器(学习笔记)

崔华<基于Oracle的sql优化学习笔记> 1.1 基于RULE的优化器 (1) CBO (2)RBO 和CBO相比,RBO是有其明显权限的.在使用RBO的情况下,执行计划一旦出了问题,很难对其做调整.另外,如果使用了RBO则目标SQL的写法,甚至是目标SQL中所涉及的各个对象在该SQL文本中出现的先后顺序都可能影响RBO执行计划的选择我,更糟糕的是,Oracle数据库中很好的特性.功能不能再RBO中使用因为他们不能被RBO锁支持. 只要出现如下情形之一,那么即便修改了优化器模式或者使用了R

深入MaxCompute理解数据、运算和用户的大脑:基于代价的优化器

回顾大数据技术领域大事件,最早可追溯到06年Hadoop的正式启动,而环顾四下,围绕着数据库及数据处理引擎,业内充斥着各种各样的大数据技术.这是个技术人的好时代,仅数据库领域热门DB就有300+,围绕着Hadoop生态圈的大数据处理技术更是繁花似锦.在云栖社区2017在线技术峰会大数据技术峰会上,阿里云大数据计算平台架构师林伟做了题为<MaxCompute的大脑:基于代价的优化器>的分享,为大家分享阿里巴巴大数据计算服务的大脑--基于代价的优化器的设计和架构. MaxCompute简介 大数据

Hibernate 优化技术之调用视图(View)和存储过程(Procedure)

前言 上一篇blog记录了hibernate抓取策略的相关用法(http://blog.csdn.net/wlwlwlwl015/article/details/42705585),它主要是在对象导航时为我们进行HQL方面的优化.本篇blog将介绍一些通用性的优化方式,即在hibernate中使用视图和存储过程.在数据量比较大时(百万级),使用hibernate时不再推荐使用HQL,而是使用原生的SQL语句,而视图.索引.存储过程等数据库对象也都是基于底层数据库和原生的SQL派生出的优化方案,废

mysql数据库性能优化(包括SQL,表结构,索引,缓存)

优化目标减少 IO 次数IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当然,也是收效最明显的优化手段.降低 CPU 计算除了 IO 瓶颈之外,SQL优化中需要考虑的就是 CPU 运算量的优化了.order by, group by,distinct … 都是消耗 CPU 的大户(这些操作基本上都是 CPU 处理内存中的数据比较运算).当我们的 IO 优化做到一定阶段之后

SQL视图&amp;触发器

SQL视图 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的字段就是来自一个或多个数据库中的真实的表中的字段.我们可以向视图添加 SQL 函数.WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表. SQL CREATE VIEW 语法 CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition 视图的优点:1,可

SQL 视图(Views)

SQL 视图(Views) 视图是可视化的表. 本章讲解如何创建.更新和删除视图. SQL CREATE VIEW 语句 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的字段就是来自一个或多个数据库中的真实的表中的字段. 您可以向视图添加 SQL 函数.WHERE 以及 JOIN 语句,也可以呈现数据,就像这些数据来自于某个单一的表一样. SQL CREATE VIEW 语法 CREATE VIEW view_name AS SELECT