数据库资源管理器通过控制数据库内部的执行调度来控制资源在各个会话之间的分布。通过控制所要运行的会话以及会话运行的时间长度,数据库资源管理器可以确保资源分布与计划指令相匹配,因此也符合业务目标。
   请注意,oracle resource manager对CPU的限制粒度为消费组(consumer group), 无法细化控制消费组内个别进程消耗CPU的比例,只要不超出该消费组的CPU限制,消费组内的单个或多个进程的CPU使用不受限制。 

10g中Resource Manager资源管理器可以控制的资源种类:

  1. Oracle进程的CPU使用率
  2. 并行度(Parallel)
  3. UNDO数量
  4. SQL语句操作执行时间(Execute Time)
  5. 会话空闲时间(Idle Time)  ---连接用户处于unactive状态超过idle time,会话自动被kill
  6. 活跃会话(session)数   --- 注意:是活跃即处于active状态的会话

CPU资源使用说明:

 一, EMPHASIS CPU 分配方法确定在资源计划中对不同使用者组中的会话的重视程度。CPU

占用率的分配级别为从1 到8,级别1 的优先级最高。百分比指定如何将CPU 资源分配

给每一级中的各个使用者组。

以下规则适用于EMPHASIS 资源分配方法:

CPU 资源在给定级别按指定的百分比分配。为资源使用者组指定的CPU 百分比是该

使用者组在给定级别可以使用的最大值。

给定级别上没有使用的使用者资源可供下一级别的使用者组使用。例如,如果级别1

的使用者组只使用了60% 的可用资源,则其余的40% 可供级别2 的使用者组使用。

任何给定级别的百分比总和必须小于等于100。

对于没有明确指定计划指令的所有级别,其所有子计划或使用者组的默认资源是0%。

EMPHASIS 资源分配方法避免了资源缺乏问题,该问题导致优先级较低的使用者没

有运行的机会。

二,RATIO 策略是一个单级别CPU 分配方法。将指定要为使用者组分配的CPU 比率相对应的数字,而不是百分比。例如,假定有三个使用者组OLTP_USERS、DSS_USERS 和BATCH_USERS,可以指定下列比率:

OLTP_USERS:4

DSS_USERS:3

BATCH_USERS:2

OTHER:1

这就类似于让OLTP 用户获得40% 的资源、DSS 用户获得30% 的资源、批用户获得20%的资源、所有其它使用者组获得10% 的可用资源。如果OTHER 或DSS_USERS 使用者组中当前都没有使用者在使用CPU 资源,则OLTP_USERS 使用者组将获得三分之二的可用资源,而BATCH_USERS 使用者组将获得三分之一。

最大估计执行时间:

1.     数据库资源管理器可以预先估计操作的执行时间。

2.     可以在资源使用者组级别为操作指定最大估计执行时间。

3.     如果估计时间超过MAX_EST_EXEC_TIME,则操作不会启动。(ORA-07455)

4.     此功能的好处是消除了使用过多系统资源的异常大的作业。

5.     默认值为UNLIMITED。

通过设置资源计划指令的MAX_EST_EXEC_TIME 参数,可以定义任何给定时间发生的

任何操作的最大估计执行时间。设置了此参数后,数据库资源管理器将估计特定作业消

耗的时间。如果操作的估计时间超过MAX_EST_EXEC_TIME,则不启动操作并发出

ORA-07455 错误。这样可以消除占用过多系统资源的任何异常大的作业。

如果有多个计划指令引用了某个资源使用者组,则该组可能有多个MAX_EST_EXEC_TIME。

数据库资源管理器将选择所有传入值中限制性最强的那个值。

使用基于成本的优化程序的统计信息,可以计算出给定语句的估计执行时间。

并行度

PARALLEL_DEGREE_LIMIT_MTH 限制任何操作的最大并行度。只能为资源使用者组,

而不能为子计划指定此方法。ABSOLUTE 方法是可能值,该方法指定可以为一个操作分配

的进程数量。如果有多个计划指令引用了相同的子计划或使用者组,则使用所有可能值中

的最小值作为该子计划或使用者组的并行度限制。

活动会话池

ACTIVE_SESS_POOL_MTH 限制活动会话的数量。所有其它会话均为非活动的,在队列

中等待激活。ACTIVE_SESS_POOL_ABSOLUTE 是默认且唯一的可用方法。

使用活动会话池功能,可以控制每个资源使用者组的最大并发活动会话数。使用此功能,

由于资源的消耗与活动会话的数量成比例,所以DBA 能间接控制任何资源使用者组使用

的资源量。使用活动会话池有助于减少从系统中获取资源的服务器数量,因而可以避免

由于试图同时运行过多作业而导致的低效的分页、交换和其它资源损耗(如内存)。

使用活动会话填充活动会话池后,资源管理器对尝试成为活动会话的所有后续会话进行

排队,直到其它活动会话完成或成为不活动会话。活动会话是事务处理、查询或并行操作

中当前涉及的会话。单独的并行从属进程不被视为会话;而将整个并行操作视为一个活动

会话。

每个资源使用者组只有一个队列,排队方法是先进先出(FIFO),并带有超时。队列采用

内存结构,不能直接查询。

参考:刘相兵的博客

Oracle资源管理器介绍(一)的更多相关文章

  1. Oracle优化器介绍

    Oracle优化器介绍 本文讲述了Oracle优化器的概念.工作原理和使用方法,兼顾了Oracle8i.9i以及最新的10g三个版本.理解本文将有助于您更好的更有效的进行SQL优化工作. RBO优化器 ...

  2. Oracle资源管理器(二)-- 创建和使用数据库资源计划

    (参考 http://blog.csdn.net/mrluoe/article/details/7969436 -- 整理并实践通过) 第1步,创建3个用户 SQL> create user s ...

  3. Oracle的优化器介绍

    Oracle优化器介绍 本文讲述了Oracle优化器的概念.工作原理和使用方法,兼顾了Oracle8i.9i以及最新的10g三个版本.理解本文将有助于您更好的更有效的进行SQL优化工作. RBO优化器 ...

  4. Oracle 优化器

    http://blog.csdn.net/it_man/article/details/8185370一.优化器基本知识   Oracle在执行一个SQL之前,首先要分析一下语句的执行计划,然后再按执 ...

  5. ORACLE优化器RBO与CBO介绍总结

    RBO和CBO的基本概念 Oracle数据库中的优化器又叫查询优化器(Query Optimizer).它是SQL分析和执行的优化工具,它负责生成.制定SQL的执行计划.Oracle的优化器有两种,基 ...

  6. 【推荐】介绍两款Windows资源管理器,Q-Dir 与 FreeCommander XE(比TotalCommander更易用的免费资源管理器)

    你是否也像我一样,随着硬盘.文件数量的增加,而感到对于文件的管理越来越乏力. 于是我试用了传说中的各种软件,包括各种Explorer外壳,或者第三方资源管理器. 最后我确定下来经常使用,并推荐给您的是 ...

  7. 10gocm->session5->数据库管理实验->GC资源管理器的资源消耗组介绍

    <GC资源管理器>  官方文件:administrator's Guide->24 Using the Database Resource Manager 用法:在实际生产环境中使用 ...

  8. oracle监控资源管理器

    资源管理器的配置在一组dba视图显示,主要是如下视图: dba_rsrc_plans 显示计划和状态. dba_rsrc_plan_directives 显示计划指令 dba_rsrc_consume ...

  9. 怎样在Windows资源管理器中添加右键菜单以及修改右键菜单顺序

    有时,我们需要在Windows资源管理器的右键菜单中添加一些项,以方便使用某些功能或程序. 比如我的电脑上有一个免安装版的Notepad++,我想在所有文件的右键菜单中添加一项用Notepad++打开 ...

随机推荐

  1. <<< Tomcat 部署项目There are no resources that can be added or removed from the server

    错误信息:没有资源可以添加或删除的服务器 解决方式: 方式1.选中项目右键——找到Project Facets——勾选Dynamic Web Project和java 方式2.新建一个同名web项目, ...

  2. mate-desktop安装在其他目录时一些配置信息

    1.mate-desktop安装在其他目录时一些配置信息 2.BIN目录下添加相应的mate-session_gtk2/3 3.首先配置如下环境变量 #!/bin/sh if [[ "${E ...

  3. Container View 使用小技巧

    一.传值,顺传 -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { TVC *vc = segue.destin ...

  4. [Unity] 3D数学基础 - 2D旋转矩阵

    2D矩阵的旋转: NewX = X * Cos(α) - Y * Sin(α) NewY = X * Sin(α) + Y * Cos(α) 一般在三角函数中使用的是弧度,我们可以通过下面的公式将角度 ...

  5. MYSQL提权方法

    cve-2016-6662 MYSQL提权分析 MySQL <= 5.7.15 远程代码执行/ 提权 (0day) 5.6.33 5.5.52 Mysql分支的版本也受影响,包括: MariaD ...

  6. 几款开源ESB总线的比较

    现有的开源ESB总线中,自从2003年第一个开源总线Mule出现后,现在已经是百花争鸣的景象了.现在我就对现有的各种开源ESB总线依据性能.可扩展性.资料文档完整程度以及整合难易程度等方面展开. CX ...

  7. winform 多线程编程

    参考资料: WinForm中新开一个线程操作 窗体上的控件(跨线程操作控件) c# 使用定时器Timer

  8. asp.net core 使用EF7 Code First 创建数据库,同时使用命令创建数据库

    1.首先下载vs2015的Asp.Net Core(RC2)的插件工具(https://www.microsoft.com/net/core#windows)2.创建一个asp.net Core的项目 ...

  9. oracle merge into用法

    转载:http://blog.163.com/duanpeng3@126/blog/static/885437352011724104741817/ 在 平时更新数据时,经常有这样一种更新,即将目标表 ...

  10. [Python] 学习资料汇总

    Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大且完善的通用型语言,已经有十多年的发展历史,成熟且稳定.Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用 ...