CS_RESOURCE_MANAGER-Package

Das Package CS_RESOURCE_MANAGER bietet eine Schnittstelle zum Auflisten und Aktualisieren von Consumer-Gruppenparametern und zum Zurücksetzen von Parametern auf Standardwerte.

Funktion LIST_CURRENT_RULES

Diese Funktion listet die Parameterwerte für jede Consumer-Gruppe auf.

Syntax

CS_RESOURCE_MANAGER.LIST_CURRENT_RULES
   RETURN TABLE;

Beispiel

SELECT * FROM CS_RESOURCE_MANAGER.LIST_CURRENT_RULES();

CONSUMER_GROUP ELAPSED_TIME_LIMIT IO_MEGABYTES_LIMIT SHARES CONCURRENCY_LIMIT DEGREE_OF_PARALLELISM 
-------------- ------------------ ------------------ ------ ----------------- --------------------- 
HIGH                                                      4                 3                     3 
MEDIUM                                                    2                 2                     9 
LOW                                                       1               900                     1 

Funktion LIST_DEFAULT_RULES

Diese Funktion gibt die Standardwerte für alle Consumer-Gruppen zurück.

Syntax

CS_RESOURCE_MANAGER.LIST_DEFAULT_RULES
  RETURN TABLE;

Hinweis zur Verwendung

  • Standardmäßig lautet der Parallelitätsgrad-Policy-Wert MANUAL für die Consumer-Gruppe TPURGENT. Die Funktion CS_RESOURCE_MANAGER.LIST_DEFAULT_RULES zeigt keinen Wert für den Standardwert für DEGREE_OF_PARALLELISM für die Consumer-Gruppe TPURGENT an.

Beispiel

SELECT * FROM CS_RESOURCE_MANAGER.LIST_DEFAULT_RULES();
CONSUMER_GROUP ELAPSED_TIME_LIMIT IO_MEGABYTES_LIMIT SHARES CONCURRENCY_LIMIT DEGREE_OF_PARALLELISM 
-------------- ------------------ ------------------ ------ ----------------- --------------------- 
HIGH                            0                  0      4                 3                     1 
MEDIUM                          0                  0      2                 1                     1 
LOW                             0                  0      1               300                     1 
TP                              0                  0      8               300                     1 
TPURGENT                        0                  0     12               300                       

REVERT_TO_DEFAULT_VALUES-Prozedur

Diese Prozedur setzt die Planeigenschaften des angegebenen Resource Managers auf Standardwerte zurück.

Syntax

CS_RESOURCE_MANAGER.REVERT_TO_DEFAULT_VALUES(
   consumer_group         IN VARCHAR2,
   shares                 IN BOOLEAN   DEFAULT FALSE,
   concurrency_limit      IN BOOLEAN   DEFAULT FALSE);

Parameter

Parameter Beschreibung

consumer_group

Gibt die Consumer-Gruppe an, die zurückgesetzt werden soll.

Gültige Werte sind je nach Workload: HIGH, MEDIUM, LOW, TP oder TPURGENT.

shares

Wenn der Wert TRUE lautet, setzen Sie die Shares für den Service auf den Standardwert zurück.

concurrency_limit

Wenn der Wert TRUE lautet, setzen Sie den concurrency_limit-Wert für den Service auf den Standardwert zurück. Wenn Sie concurrency_limit zurücksetzen, werden sowohl concurrency_limit als auch degree_of_parallelism auf die Standardwerte gesetzt.

Hinweis zur Verwendung

  • Wenn der Workload-Typ "Data Warehouse" lautet, sind folgende Werte für consumer_group gültig: HIGH, MEDIUM oder LOW.

Beispiele

BEGIN
   CS_RESOURCE_MANAGER.REVERT_TO_DEFAULT_VALUES(
      consumer_group => 'MEDIUM', 
      concurrency_limit => TRUE);
END;
/

BEGIN
   CS_RESOURCE_MANAGER.REVERT_TO_DEFAULT_VALUES(
      consumer_group => 'HIGH', 
      shares => TRUE);
END;
/

Prozedur UPDATE_PLAN_DIRECTIVE

Mit dieser Prozedur können Sie den Ressourcenplan für eine angegebene Consumer-Gruppe aktualisieren.

Syntax

CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(
   consumer_group         IN VARCHAR2,
   io_megabytes_limit     IN NUMBER   DEFAULT NULL,
   elapsed_time_limit     IN NUMBER   DEFAULT NULL,
   shares                 IN NUMBER   DEFAULT NULL,
   concurrency_limit      IN NUMBER   DEFAULT NULL);

Parameter

Parameter Beschreibung

consumer_group

Gibt die zu aktualisierende Consumer-Gruppe an.

Gültige Werte sind je nach Workload: HIGH, MEDIUM, LOW, TP oder TPURGENT.

io_megabytes_limit

Gibt die maximalen I/O-Megabyte an, die ein SQL-Vorgang ausgeben kann.

Geben Sie einen NULL-Wert an, um den Grenzwert zu löschen.

elapsed_time_limit

Legt die maximale Zeit in Sekunden fest, die ein SQL-Vorgang ausführen kann.

Geben Sie einen NULL-Wert an, um den Grenzwert zu löschen.

shares

Gibt den Wert für Shares an. Eine im Vergleich zu anderen Consumer-Gruppen höhere Anzahl von Shares erhöht die CPU- und I/O-Priorität der Consumer-Gruppe.

concurrency_limit

Gibt die maximale Anzahl gleichzeitig ausgeführter SQL-Anweisungen an.

Dieser Parameter ist nur mit der Consumer-Gruppe MEDIUM gültig.

Hinweise zur Verwendung

  • Wenn eine SQL-Anweisung im angegebenen Service mehr als die angegebene Laufzeitgrenze (elapsed_time_limit) überschreitet oder mehr I/O ausführt als angegeben (io_megabytes_limit), wird die SQL-Anweisung beendet.

  • Wenn der Workload-Typ "Data Warehouse" lautet, sind folgende Werte für consumer_group gültig: HIGH, MEDIUM oder LOW.

  • Wenn der Parameter concurrency_limit angegeben wird, lautet der einzige gültige Wert für consumer_group MEDIUM.

Beispiele

BEGIN
   CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(
      consumer_group => 'HIGH', 
      shares => 8);
   CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(
      consumer_group => 'MEDIUM', 
      shares => 2);
   CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(
      consumer_group => 'LOW', 
      shares => 1);
END;
/

BEGIN
   CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(
      consumer_group => 'HIGH', 
      io_megabytes_limit => null, 
      elapsed_time_limit => null);
END;
/

BEGIN
   CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(
     consumer_group => 'MEDIUM', 
     concurrency_limit => 2);
END;
/