Il cubo OLAP, ovvero il nucleo della maggior parte dei sistemi OLAP, è un database multidimensionale basato su array che consente di elaborare e analizzare più dimensioni di dati in modo molto più rapido ed efficiente rispetto a un database relazionale tradizionale.
Una tabella di database relazionale è strutturata come un foglio di calcolo, in cui sono memorizzati i singoli record in un formato bidimensionale, riga per colonna. Ciascun "fatto" di dati nel database si trova all'incrocio di due dimensioni, una riga e una colonna, ad esempio regione e vendite totali.
Gli strumenti di reporting di database SQL e relazionali possono certamente eseguire query, report e analizzare dati multidimensionali memorizzati nelle tabelle, ma le prestazioni rallentano con l'aumento dei volumi di dati. E riorganizzare i risultati per concentrarsi su diverse dimensioni richiede molto lavoro.
È qui che entra in gioco il cubo OLAP. Il cubo OLAP estende la singola tabella con livelli aggiuntivi, ciascuno dei quali aggiunge ulteriori dimensioni, solitamente il livello successivo nella "gerarchia dei concetti" della dimensione. Ad esempio, il livello superiore del cubo potrebbe organizzare le vendite per regione; i livelli aggiuntivi possono essere paese, stato/provincia, città e perfino negozio specifico.
In teoria, un cubo può contenere un numero infinito di livelli. (Un cubo OLAP che rappresenta più di tre dimensioni è talvolta chiamato ipercubo.) Cubi più piccoli possono esistere all'interno dei livelli: ad esempio, ogni livello del data store potrebbe contenere cubi che organizzano le vendite per venditore e prodotto. In pratica, gli analisti di dati creano cubi OLAP contenenti solo i livelli di cui necessitano, per attività di analisi e prestazioni ottimali.