Comprendere la semantica delle transazioni in Essbase

Quando un cubo è in modalità di lettura/scrittura, Essbase considera come transazione ogni richiesta di aggiornamento (ad esempio, un caricamento di dati, un calcolo o un'istruzione in uno script di calcolo) inoltrata al server.

Ogni transazione dispone di uno stato corrente: attiva, commit eseguito o interrotta. Dopo l'esecuzione del commit, i dati vengono acquisiti dalla memoria del server e scritti nel cubo sul disco.

Le opzioni Esegui commit blocchi ed Esegui commit righe della scheda Transazioni delle impostazioni dell'Inspector del cubo indicano la frequenza alla quale Essbase esegue il commit dei blocchi o della righe di dati.

Essbase consente alle transazioni di mantenere i lock di lettura/scrittura blocco per blocco; Essbase rilascia un blocco dopo che è stato aggiornato, ma non esegue il commit dei blocchi finché la transazione non sarà stata completata o non sarà stato raggiunto il limite ("punto di sincronizzazione") impostato.

Specificando i parametri di punto di sincronizzazione riportati di seguito, è possibile controllare quando Essbase esegue un'operazione di commit esplicita.


Immagine dell'opzione Accesso senza commit nella scheda Inspector del cubo > Impostazioni > Transazioni nell'interfaccia Web di Essbase.

  • Esegui commit blocchi (numero di blocchi modificati prima che si verifichi un punto di sincronizzazione). Essbase esegue il commit al raggiungimento del numero di blocchi specificato. Questa frequenza può essere regolata in modo dinamico durante un calcolo.

    Se si imposta Esegui commit blocchi su 0, il punto di sincronizzazione si verificherà alla fine della transazione.

  • Esegui commit righe (numero di righe da caricare prima che si verifichi un punto di sincronizzazione). L'impostazione predefinita è 0: tale valore indica che il punto di sincronizzazione si verifica alla fine del caricamento dei dati.

Se il valore di una delle opzioni Esegui commit blocchi ed Esegui commit righe è diverso da zero, il punto di sincronizzazione si verificherà in base alla prima soglia raggiunta. Ad esempio, se l'opzione Esegui commit blocchi è impostata su 10, ma l'opzione Esegui commit righe è impostata su 0 e si caricano i dati, il punto di sincronizzazione si verificherà dopo l'aggiornamento di 10 blocchi. Se l'opzione Esegui commit blocchi è impostata su 5 e l'opzione Esegui commit righe è impostata su 5 e si caricano i dati, il punto di sincronizzazione si verificherà dopo il caricamento di 5 righe o l'aggiornamento di 5 blocchi, a seconda della soglia raggiunta per prima.

Se il server Essbase è in esecuzione in Oracle Exalytics In-Memory Machine, le impostazioni di accesso senza commit non sono applicabili. Il commit si verifica alla fine del comando o della richiesta. Tutte le modifiche apportate alle impostazioni Esegui commit blocchi o Esegui commit righe verranno ignorate.

Se il server Essbase è in esecuzione su una distribuzione indipendente Windows, l'opzione Esegui commit blocchi è impostata su 3000 per impostazione predefinita.

Se la soglia definita dall'utente viene superata durante un'operazione, Essbase crea un punto di sincronizzazione per eseguire il commit dei dati elaborati fino a quel punto. Essbase crea tutti i punti di sincronizzazione che sono necessari per portare a termine l'operazione.

Essbase analizza i valori delle opzioni Esegui commit blocchi ed Esegui commit righe durante l'analisi della fattibilità per l'uso del calcolo parallelo. Essbase aumenta in modo automatico i valori considerati troppo bassi.

Essbase conserva i dati ridondanti per rafforzare la semantica delle transazioni. Consentire una quantità di spazio su disco che sia il doppio della dimensione del database per la memorizzazione dei dati ridondanti, in particolar modo quando le opzioni Esegui commit blocchi ed Esegui commit righe sono entrambe impostate su 0.

Per impostare il commit di blocchi e di righe, effettuare le operazioni riportate di seguito.
  1. Passare a Transazioni nell'interfaccia Web di Essbase.
    Nell'interfaccia Redwood:
    1. Nella pagina Applicazioni aprire l'applicazione, quindi aprire il database (cubo).
    2. Fare clic su Personalizzazione, su Impostazioni e su Transazioni.
    Nell'interfaccia Web classica:
    1. Espandere l'applicazione nella pagina Applicazioni.
    2. Nel menu Azioni a destra del nome del cubo fare clic su Impostazioni, quindi su Transazioni.
  2. Effettua le selezioni desiderate e fare clic su Salva.