Gestisci condivisioni CPU/IO in Autonomous Database

Autonomous Database è dotato di condivisioni CPU/IO predefinite assegnate a gruppi di consumer diversi. È possibile modificare queste condivisioni CPU/IO predefinite se il carico di lavoro richiede allocazioni di risorse CPU/IO diverse.

Le condivisioni CPU/IO assegnate ai gruppi di consumer determinano le risorse CPU/IO che un gruppo di consumer può utilizzare rispetto agli altri gruppi di consumer. Le condivisioni CPU/IO predefinite dipendono dal carico di lavoro di Autonomous Database.

Le condivisioni CPU assegnate a ciascun servizio determinano la quantità di CPU e I/O che le sessioni che utilizzano tali servizi otterranno quando l'utilizzo della CPU nel database raggiungerà il 100%. In tal caso, ogni servizio otterrà risorse CPU e I/O proporzionali alle condivisioni CPU assegnate. I processi interni Oracle eseguiti come task automatici su Autonomous Database, come la raccolta automatica delle statistiche dell'optimizer, vengono eseguiti con una condivisione delle risorse pari a 1.

Tipo di carico di lavoro Dettagli

Data warehouse

Per impostazione predefinita, le condivisioni CPU/IO assegnate ai gruppi di consumer HIGH, MEDIUM, LOW sono rispettivamente 4, 2 e 1. Con le impostazioni predefinite il gruppo di consumer HIGH sarà in grado di utilizzare 4 volte più risorse CPU/IO rispetto a LOW e 2 volte più risorse CPU/IO rispetto a MEDIUM, quando necessario. Il gruppo di consumer MEDIUM sarà in grado di utilizzare 2 volte più risorse CPU/IO rispetto a LOW, quando necessario.

Elaborazione transazione

Database JSON

Per impostazione predefinita, le azioni CPU/IO assegnate ai gruppi di consumer TPURGENT, TP, HIGH, MEDIUM e LOW sono rispettivamente 12, 8, 4, 2 e 1. Con le impostazioni predefinite, il gruppo di consumer TPURGENT sarà in grado di utilizzare 12 volte più risorse CPU/IO rispetto a LOW, quando necessario. Il gruppo di consumer TP sarà in grado di utilizzare 4 volte più risorse CPU/IO rispetto a MEDIUM, quando necessario.

È possibile impostare condivisioni CPU/IO in Database Actions o utilizzare il package PL/SQL CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE.

Per utilizzare Database Actions per modificare i valori di condivisione CPU/IO per i gruppi di consumer, effettuare le operazioni riportate di seguito.

  1. Accedere a Database Actions come utente ADMIN.

    Per ulteriori informazioni, vedere Accedere alle azioni del database come ADMIN.

  2. Nel Launchpad Azioni database, in Amministrazione, fare clic su Imposta regole di Resource Management.
  3. Selezionare la scheda Condivisioni CPU/IO per impostare i valori di condivisione CPU/IO per i gruppi di consumer.
  4. Impostare il valore di condivisione CPU/IO desiderato per un gruppo di consumer immettendo un valore o facendo clic sulle icone Decremento o Incremento.
  5. Fare clic su Salva modifiche.
  6. Fare clic su OK.

Per ripristinare i valori predefiniti delle condivisioni CPU/IO, fare clic su Carica valori predefiniti e fare clic su Salva modifiche per applicare i valori popolati.

In alternativa all'uso di Database Actions, è possibile utilizzare la procedura PL/SQL CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE per modificare i valori di condivisione CPU/IO per i gruppi di consumer.

Ad esempio, in un database Autonomous Data Warehouse, eseguire lo script seguente come utente ADMIN per impostare le condivisioni CPU/IO su 8, 2 e 1 rispettivamente per i gruppi di consumer HIGH, MEDIUM e LOW. Ciò consente al gruppo di consumer HIGH di utilizzare 4 volte più risorse CPU/IO rispetto al gruppo di consumer MEDIUM e 8 volte risorse CPU/IO rispetto al gruppo di consumer LOW:

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;
/

Ad esempio, in un Autonomous JSON Database o in un database Autonomous Transaction Processing, eseguire lo script seguente come utente ADMIN per impostare le condivisioni CPU/IO su 12, 4, 2, 1 e 1 per i gruppi di consumer, rispettivamente TPURGENT, TP, HIGH, MEDIUM e LOW. Ciò consente al gruppo di consumer TPURGENT di utilizzare 3 volte più risorse CPU/IO rispetto al gruppo di consumer TP e 12 volte risorse CPU/IO rispetto al gruppo di consumer MEDIUM:

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

Per tornare ai valori predefiniti delle condivisioni, è possibile utilizzare la procedura PL/SQL CS_RESOURCE_MANAGER.REVERT_TO_DEFAULT_VALUES per ripristinare le impostazioni predefinite.

Ad esempio, in un database Autonomous Data Warehouse, eseguire lo script seguente come utente ADMIN per impostare le condivisioni CPU/IO sui valori predefiniti per i gruppi di consumer HIGH, MEDIUM e LOW:

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

Ad esempio, in un database Autonomous JSON o in un database Autonomous Transaction Processing, eseguire lo script seguente come utente ADMIN per impostare i valori predefiniti per le condivisioni CPU/IO per i gruppi di consumer TPURGENT, TP, HIGH, MEDIUM e LOW:

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

Per ulteriori informazioni, vedere CS_RESOURCE_MANAGER Package.