Hordozható adatkockák készítése

A kockafájlok (local cube; off-line cube, portable cube, ...) a többdimenziós nézetnek megfelelően tárolják OLAP adatkockáink adatait, és segítségükkel az OLAP szerver elérése nélkül is tudjuk elemezni kockánk adatait. Ezeket a kockafájlokat létrehozhatjuk Excelből is, de ha előállításuk rendszeresen (automatikusan) szükséges, akkor más módszerhez kell folyamodnunk.

Kockafájlt a "CREATE CUBE" MDX utasítással hozhatunk létre. DTS-ből úgy tudjuk létrehozni, hogy felveszünk egy OLAP adatforrást (Microsoft OLE DB provider for SQL Server és a Data Source -nál kiválasztjuk Microsoft OLE DB provider for OLAP Services 8.0 providert) és egy Execute SQL Task-ot. A taskba beírjuk a create cube utasítást amely például a következőképpen néz ki:

CREATE GLOBAL CUBE [Cash Flow 2005]
STORAGE 'C:\VIR\LocalCubes\CashFlow2005_11.cub'
FROM [Cash Flow 2005]
(
MEASURE [Cash Flow 2005].[Cash In],
MEASURE [Cash Flow 2005].[Cash Out],
MEASURE [Cash Flow 2005].[Cash Flow],
DIMENSION [Cash Flow 2005].[Kumulálás],
DIMENSION [Cash Flow 2005].[Idöszak],
DIMENSION [Cash Flow 2005].[Cash flow sorok]
)

De Kockafájlt létrehozhatunk közvetlenül SQL-ből is Linked server és OpenQuery segítségével (igaz, ez hibaüzenetet ad, de működik):

SELECT * FROM OPENQUERY(LinkedOLAPServer, '
CREATE GLOBAL CUBE [Cash Flow 2005]
STORAGE ''C:\VIR\LocalCubes\CashFlow2005.cub''
FROM [Cash Flow 2005]
(
MEASURE [Cash Flow 2005].[Cash In],
MEASURE [Cash Flow 2005].[Cash Out],
MEASURE [Cash Flow 2005].[Cash Flow],
DIMENSION [Cash Flow 2005].[Kumulálás],
DIMENSION [Cash Flow 2005].[Idöszak],
DIMENSION [Cash Flow 2005].[Cash flow sorok]
)
')

Kővári Attila - BI projekt

Új hozzászólás