Combinazioni membri sparsi gruppo

Per migliorare le prestazioni del caricamento dati BSO (Block Storage) di Essbase, è possibile strutturare i dati in modo da ridurre al minimo la quantità di I/O su disco necessario (letture e scritture).

Questa sezione non si applica ai cubi di memorizzazione di aggregazione.

La strategia più efficace per migliorare le prestazioni consiste nel ridurre al minimo il numero di I/O su disco che Essbase deve eseguire durante la lettura o la scrittura nel cubo. Poiché Essbase carica il blocco dati per blocco, l'organizzazione dei dati di origine in modo che corrispondano all'organizzazione del blocco fisico riduce il numero di I/O del disco fisico che Essbase deve eseguire.

Disporre i dati di origine in modo che i record con la stessa combinazione univoca di dimensioni sparse vengano raggruppati. Questa disposizione corrisponde ai blocchi nel database.

Gli esempi riportati in questo capitolo illustrano i modi in cui è possibile organizzare i dati seguendo questa strategia. In questi esempi viene utilizzato un subset del cubo Sample.Basic, come descritto di seguito.

Tabella 33-1 Dimensioni e valori per esempi

Dimensioni sparse, non attributo Dimensioni dense

Scenario (budget, effettivo)

Misure (vendite, margine, COG, profitto)

Prodotto (Cola, Root Beer)

Anno (gennaio, febbraio)

Mercato (Florida)

 

Nota

Poiché i dati non vengono caricati nelle dimensioni attributo, non sono rilevanti per questa discussione, anche se sono sparsi.

Prendere in considerazione la seguente origine dei dati. Poiché non è raggruppato per combinazioni di membri di dimensioni sparse, questi dati non sono stati ordinati in modo ottimale. Quando Essbase legge ogni record, deve gestire membri diversi delle dimensioni sparse.

Jan
Actual    Cola          Ohio      Sales    25
Budget    "Root Beer"   Florida   Sales    28
Actual    "Root Beer"   Ohio      Sales    18
Budget    Cola          Florida   Sales    30

L'origine dei dati riportata sopra viene caricata lentamente perché Essbase accede a quattro blocchi anziché a uno.

La seguente fonte di dati più organizzata per lo stesso cubo Sample Basic ha record ordinati in base a una combinazione unica di membri sparse-dimension: Actual -> Cola -> Ohio. Essbase accede a un solo blocco per caricare i seguenti record:

Actual     Cola    Ohio    Jan   Sales     25
Actual     Cola    Ohio    Jan   Margin    18
Actual     Cola    Ohio    Jan   COGS      20
Actual     Cola    Ohio    Jan   Profit     5

Per ottimizzare i dati di origine consentendo l'importazione di molte celle per record,

  1. Assicurarsi che i record siano raggruppati in base a combinazioni univoche di membri di dimensioni sparse.

  2. Ordinare i record in modo che la dimensione nel record per cui si forniscono più valori sia una dimensione densa.

Nell'esempio successivo viene utilizzato un record di intestazione per identificare i membri della dimensione Misure, che è densa. I dati vengono ordinati prima in base ai membri della dimensione densa Anno, quindi raggruppati gerarchicamente in base ai membri delle altre dimensioni. In ogni record vengono forniti più valori per la dimensione Misure.

                                 Sales  Margin   COG  Profit
Jan Actual  Cola         Ohio       25      18    20       5
Jan Actual  Cola         Florida    30      19    20      10
Jan Actual  "Root Beer"  Ohio       18      12    10       8
Jan Actual  "Root Beer"  Florida    28      18    20       8

Si noti che l'intestazione e la prima riga di dati che richiedono due righe in questo esempio; l'esempio precedente richiede quattro righe per gli stessi dati.