Modalità di utilizzo del calcolo intelligente

Calcolo intelligente è abilitato per impostazione predefinita per i cubi di memorizzazione in blocchi. Quando si esegue il primo calcolo completo, Essbase calcola ogni blocco. Quando si ricalcola l'intero cubo, Essbase controlla ogni blocco per verificare se è contrassegnato come pulito o sporco. Evitare ricalcoli non necessari durante i calcoli dei cubi parziali.

In questa sezione vengono fornite informazioni su come attivare e disattivare il calcolo intelligente e utilizzarlo con diversi tipi di calcoli.

Attiva o disattiva calcolo intelligente

Per impostazione predefinita, l'opzione Calcolo intelligente è attivata per un cubo di memorizzazione a blocchi Essbase. È inoltre possibile attivarlo o disattivarlo utilizzando l'impostazione di configurazione UPDATECALC o il comando SET UPDATECALC in uno script di calcolo.

Per impostazione predefinita, l'opzione Calcolo intelligente è attivata. Per modificare l'impostazione predefinita, utilizzare l'impostazione di configurazione UPDATECALC.

Per attivare e disattivare il Calcolo intelligente per la durata di uno script di calcolo, utilizzare il comando SET UPDATECALC in uno script di calcolo.

Calcolo intelligente per un calcolo predefinito e completo

Il calcolo intelligente offre notevoli vantaggi in termini di prestazioni quando si esegue un calcolo completo (CALC ALL) di un cubo di memorizzazione a blocchi Essbase. Se si esegue un calcolo completo, lasciare attivata l'opzione Calcolo intelligente (impostazione predefinita) per sfruttare i vantaggi a livello di prestazioni.

Attenzione

Quando si utilizza il calcolo intelligente, prendere nota delle informazioni contenute in Limitazioni del calcolo intelligente.

Calcolo per la prima volta

Quando si esegue il primo calcolo completo del cubo, Essbase calcola ogni blocco. Le prestazioni sono le stesse se l'opzione Calcolo intelligente è attivata o disattivata.

Ricalcolo in corso

Quando si esegue un ricalcolo completo di un cubo con l'opzione Calcolo intelligente attivata, Essbase controlla ogni blocco per verificare se è contrassegnato come pulito o sporco. Vedere Calcolo intelligente e stato blocco dati.

Il controllo dei blocchi di dati ha un sovraccarico delle prestazioni compreso tra il 5% e il 10%, cosa insignificante rispetto alle prestazioni ottenute abilitando il Calcolo intelligente.

Se, tuttavia, si ricalcola un database in cui sono cambiati più dell'80% dei valori, il costo comune del calcolo intelligente potrebbe superare i vantaggi. In questo caso, disattivare Calcolo intelligente.

Calcolo intelligente per uno script di calcolo, calcolo parziale

Se lo script di calcolo calcola un cubo di memorizzazione a blocchi solo parzialmente, Essbase non contrassegna i blocchi calcolati come puliti a meno che non si utilizzi il comando SET CLEARUPDATESTATUS.

Utilizzare SET CLEARUPDATESTATUS per evitare ricalcoli non necessari.

Essbase contrassegna un blocco dati come pulito quando calcola il blocco dati su un calcolo completo (CALC ALL) o quando calcola tutte le dimensioni in un unico comando CALC DIM. Vedere Calcolo intelligente e stato blocco dati.

In altri calcoli, Essbase non contrassegna i blocchi di dati calcolati come puliti, a meno che non si utilizzi il comando SET CLEARUPDATESTATUS in uno script di calcolo. Ad esempio, se si calcola un subset di un database o si calcola un database in due passaggi di calcolo, Essbase non contrassegna i blocchi calcolati come puliti a meno che non si chiami SET CLEARUPDATESTATUS.

Gli script di calcolo riportati di seguito non consentono a Essbase di contrassegnare i blocchi di dati calcolati come puliti.

FIX("New York")
   CALC DIM(Product, Measures);
ENDFIX
CALC DIM(Measures, Product);
CALC DIM(Market, Year, Scenario);