Modifica limite concorrenza servizio MEDIO (modello di calcolo OCPU)

Se la tua applicazione richiede un'accesso concorrente personalizzata, puoi modificare il limite di concorrenza per il tuo servizio Autonomous Database MEDIUM.

La selezione di uno dei servizi predefiniti fornisce valori di concorrenza che funzionano correttamente per la maggior parte delle applicazioni. Nei casi in cui la selezione di uno dei servizi predefiniti non soddisfa le esigenze di prestazioni dell'applicazione, è possibile utilizzare il servizio MEDIUM e modificare il limite di concorrenza. Ad esempio, quando si eseguono benchmark a utente singolo, è possibile impostare il limite di concorrenza del servizio MEDIUM su 1 per ottenere il massimo grado di parallelismo (DOP).

Nota

La modifica del limite di concorrenza è consentita solo per un'istanza con due (2) o più OCPU.

Ad esempio, se l'istanza è configurata con 100 OCPU, per impostazione predefinita Autonomous Database fornisce un limite di concorrenza pari a 126 per il servizio MEDIUM:

Sessioni 1.26 x number of OCPUs (fino a 126 query concorrenti)

In questo esempio, l'utilizzo del servizio MEDIUM supporta un'applicazione con un massimo di 126 query concorrenti con DOP di 4. Se sono necessarie solo 50 query concorrenti e si desidera un DOP più elevato, è possibile ridurre il limite di concorrenza e quindi aumentare il DOP. A tale scopo, impostare il limite di concorrenza del servizio MEDIUM su 50. Quando si modifica il limite di concorrenza, il sistema calcola e imposta il DOP in base al limite di concorrenza selezionato e al numero di OCPU. In questo esempio, con il limite di concorrenza impostato su 50, il nuovo DOP è 12. Quando l'opzione Ridimensionamento automatico OCPU è abilitata, il valore DOP viene impostato su un valore tre volte superiore. In questo esempio il valore DOP sarebbe 36.

È possibile modificare il limite di concorrenza per il servizio MEDIUM in Database Actions o utilizzando il package PL/SQL CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE.

Per modificare il limite di concorrenza del servizio MEDIUM in Database Actions, attenersi alla procedura riportata di seguito.

  1. Accedere a Database Actions come utente ADMIN.

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

  2. Nel Launchpad Database Actions, in Amministrazione, fare clic su Imposta regole di Resource Management.
  3. Nella pagina Imposta regole Resource Management, selezionare la scheda Limite concorrenza.
  4. Per il servizio MEDIUM, modificare il valore nel limite di concorrenza desiderato immettendo un valore o facendo clic sulle icone Decremento o Incremento.

    Se il limite di concorrenza specificato non è valido, in base al numero di OCPU, si riceverà un messaggio simile al seguente, che elenca l'intervallo di valori valido per l'istanza:

    Please enter a concurrency limit between 1 and 300

    Questo esempio di messaggio di errore proviene da un'istanza con 100 OCPU (il valore massimo 300 visualizzato è 3 x il numero di OCPU).

  5. Fare clic su Salva modifiche.
  6. Fare clic su OK.

Per ripristinare il valore predefinito del limite di concorrenza per il servizio MEDIUM, fare clic su Carica valori predefiniti e fare clic su Salva modifiche.

Modifica del limite di concorrenza del servizio MEDIUM con la procedura PL/SQL UPDATE_PLAN_DIRECTIVE (modello di calcolo OCPU)

In alternativa all'utilizzo della scheda Imposta regole di Resource Management in Database Actions, è possibile utilizzare PL/SQL per modificare il limite di concorrenza per il servizio MEDIUM.

Per modificare il limite di concorrenza del servizio MEDIUM con CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE:

  1. Chiamare la procedura PL/SQL CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE per aggiornare il limite di concorrenza per il gruppo di consumer MEDIUM.

    Ad esempio, con 3 OCPU, modificare il limite di concorrenza del servizio MEDIUM su 2, come indicato di seguito.

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

    Se il valore concurrency_limit specificato non è valido, in base al numero di OCPU, si riceverà un messaggio, ad esempio il seguente, che elenca l'intervallo di valori valido per l'istanza:

    ORA-20000: Invalid or missing value. Concurrency limit must be between 1 and 9 for the specified OCPU count

    Questo esempio di messaggio di errore proviene da un'istanza con 3 OCPU.

  2. Utilizzare la funzione PL/SQL CS_RESOURCE_MANAGER.LIST_CURRENT_RULES per verificare il limite di concorrenza del servizio MEDIUM aggiornato e il grado di parallelismo:
    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 
    
    

    Questa procedura restituisce l'elenco di valori per tutti i gruppi di consumer. Dopo aver modificato il limite di concorrenza come specificato nel Passo 1, controllare i valori del servizio MEDIUM CONCURRENCY_LIMIT e DEGREE_OF_PARALLELISM per verificare le modifiche.

  3. Dopo aver modificato il limite di concorrenza per il servizio MEDIUM, eseguire il test dell'applicazione collegandosi al servizio MEDIUM per verificare che il limite di concorrenza personalizzato soddisfi gli obiettivi di prestazioni.

Per tornare ai valori predefiniti, utilizzare la procedura PL/SQL CS_RESOURCE_MANAGER.REVERT_TO_DEFAULT_VALUES per ripristinare le impostazioni predefinite per il servizio MEDIUM.

Ad esempio:

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

Per ulteriori informazioni, vedere CS_RESOURCE_MANAGER Package.

Modifica note limite concorrenza servizio MEDIUM (modello di calcolo OCPU)

  • La modifica del limite di concorrenza è consentita solo per il servizio MEDIUM.

  • La modifica del limite di concorrenza è consentita solo quando il numero di OCPU è maggiore di 1.

  • La modifica del limite di concorrenza modifica anche il grado di parallelismo (nella maggior parte dei casi, a seconda dell'entità della differenza tra il vecchio limite di concorrenza e il nuovo valore impostato).

  • Il limite di concorrenza impostato deve essere compreso nell'intervallo:

    • Con la ridimensionamento automatico di OCPU disabilitata: tra 1 e 3 x the number of OCPUs

    • Con la ridimensionamento automatico OCPU abilitata: tra 1 e 9 x the number of OCPUs

  • Per impostazione predefinita, il servizio MEDIUM imposta il limite di concorrenza e i valori DOP seguenti:

    Servizio di database MEDIO Valore predefinito con scala automatica OCPU disabilitato Valore predefinito con scala automatica OCPU abilitata

    Limite di accesso concorrente

    1,26 × numero di OCPU quando il numero di OCPU è ≥ 4

    5 quando il numero di OCPU è < 4

    3,78 × numero di OCPU quando il numero di OCPU è ≥ 4

    15 quando il numero di OCPU è < 4

    DOP

    4 quando il numero di OCPU è ≥ 4

    In alternativa

    Numero di OCPU, quando il numero di OCPU è < 4

    4 quando il numero di OCPU è ≥ 4

    In alternativa

    Numero di OCPU, quando il numero di OCPU è < 4

  • Modificando il valore del limite di concorrenza, il DOP del servizio MEDIUM può arrivare fino a 2 e fino a: 2 x number of OCPUs (se la scala automatica di calcolo è disabilitata) o 6 x number of OCPUs (se la scala automatica di calcolo è abilitata).

    Per informazioni sulla scala automatica della computazione, vedere Usa scala automatica.

  • È possibile tornare in qualsiasi momento ai valori predefiniti per il limite di concorrenza del servizio MEDIUM e il DOP.