oracle 11g中 Resource Manager的组成元素

来源:互联网 发布:文章cms评测 编辑:程序博客网 时间:2024/05/15 13:40

Resource Manager的组成元素如下表:

组成元素

描述

  Resource consumer group资源消耗组

根据对资源的需求被分配到一起的一组会话。Resource Manager 给资源消耗组分配资源,而不是给单个会话分配

   Resource plan

资源执行计划

一个说明资源被分配给资源的消费群体的指令集装箱。你指定数据库如何通过激活特定的资源计划分配资源。

Resource plan directive资源计划指令

将资源消耗组与一个特定计划联系,指定资源是如何分配给那个资源消耗组的。

 

你使用 DBMS_RESOURCE_MANAGER PL/SQL 包来创建和维护这些元素.这些元素被存储在数据字典中。你可以在数据字典视图中查看关于他们的信息。

 

1、About ResourceConsumer Groups关于资源消耗组

一个资源消耗组是根据他们的处理需求组合到一起的用户会话的集合。当一个会话被创建了, 它是基于我们设置的映射规则自动映射到一个资源消耗组。作为数据库管理员(DBA), 可以手动的将一个会话切换到另一个不同的资源消耗组。同样,一个应用程序可以运行一个PL / SQL包程序,将它的会话切换到某一个特定的资源消耗组。因为只有当一个会话成为资源消耗组的一个成员时,资源管理器才会向该资源消耗组分配资源(如CPU) , 其资源配置是由资源消耗组的分配决定的。数据字典中定义了特殊的资源消耗组,他们不能被修改或删除。这些特殊的资源消耗组是:

  • SYS_GROUP

这是由用户SYS或SYSTEM为所有会话创建的最初的资源消耗组。这最初的资源消耗组可以被会话资源消耗组映射规则覆盖。

  • OTHER_GROUPS     这个资源消耗组包含没有被分配到一个资源消耗组中的所有会话。每个资源计划必须包含一个到OTHER_GROUPS的指令。

2、About Resource PlanDirectives关于资源计划指令

 Resource Manager根据属于当前活跃的资源计划组资源计划指令(指令)给资源消耗组分配资源。资源计划和资源计划指令集之间有一个亲子关系。每个指令引用一个资源消耗组,当前活跃的计划的两个指令为不可以引用相同的消费者群体。

一个指令有几个限制资源消耗组资源分配的方法。例如,它可以控制资源消耗组得到多少CPU,作为总CPU的一个百分比,它可以限制活跃在资源消耗组的会话的总数量。

3、About Resource Plans关于资源计划

除了对于每个Oracle数据库预定义的资源计划,我们还可以创建任意数量的资源计划。然而, 在一个时间点中只有一个资源计划是活跃的。当一个资源计划为活跃状态时,它的每个子资源计划指令对不同资源消耗组的资源分配进行控制。每个计划必须包含一个为命名为OTHER_GROUP资源消耗分配资源的指令,OTHER_GROUPS适用于属于一个不属于当前活动计划资源消耗组的所有会话。

 

注意:尽管术语“资源计划”(或简称“计划”)表示ResourceManager的一个元素。他也用以指一个完整的资源计划模式,包括资源计划元素本身,它的资源计划指令,和指令参考的资源消耗组,。例如,当这一章指DAYTIME资源计划的话,这可能意味着是资源计划的元素名,或DAYTIME资源计划和指令定义的特定的DAYTIME资源分配模式。因此,为了简便起见,可以说,“DAYTIME计划支持在批处理应用程序上交互式应用程序。”

 

如: A SimpleResource Plan 一个简单的资源计划

图27-1显示了一个简单的在线经营事务处理(OLTP)应用程序和同时在白天报告应用程序组织资源规划。当前活跃的计划,白天, 在三个资源消耗组上分配CPU资源。具体来说,OLTP分配了75%的CPU时间,报告是分配了15%,和OTHER_GROUPS收到剩下的10%。

 

数据库提供了一个程序(创建简单的计划), 可以使您快速创建一个简单的资源计划。

注意: 直到CPU使用率为100%,当前活跃的资源计划才会执行分配。如果CPU使用率低于100%,数据库不是CPU绑定的,因此不需要强制分配来确保所有会话得到他们的指定分配的资源。此外,当分配执行,未被任何资源消耗组使用分配的可以被用于其他资源消耗组。在前面的例子中,如果OLTP组不使用它的所有分配资源,那么Resource Manager允许REPORTS组或OTHER_GROUPS组使用未使用的分配。

原创粉丝点击