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 30L'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 5Per ottimizzare i dati di origine consentendo l'importazione di molte celle per record,
-
Assicurarsi che i record siano raggruppati in base a combinazioni univoche di membri di dimensioni sparse.
-
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 8Si 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.