Hello,
I have some questions about the performance of SSAS subcubes and MDX queries in general.
We have a database of a couple of million records (company records to be exact). We have to be able to make reports and view grid data against a subset of these records. These records are "random", they come from another datasource. We decided to make a seperate session for each of these subsets with a predefined subcube. Queries for a particular subset are executed within the associated session of the subcube.
This solution works well for relatively small subcubes, say, less than 100 000 records. The MDX queries execute in less than 1 second.
However, for large subsets (> 500 000 records), the performance becomes an issue, queries can take more than 10 seconds. For creating reports this is not a problem, but for reviewing the data in an interactive grid it is.
MDX queries against the complete set of data (no subcube) take less than 1 second.
We run SSAS on SQL Server 2008 R2. The server is a Windows 2008 R2 machine. We have 4 cores and 16 GB of RAM. The server is shared with a MSSQL database server instance. It seems that memory usage is not an issue though. After a restart of the server
the memory usage was 10% and we had the same results.
So my questions are:
Is this normal behaviour?
Is there a way to speed up the subcube?
Or is there a better way to deal with large subsets of data?
Is "preparing" or "pre-caching" maybe an option?
I hope you can give me some pointers in the right direction. I am relatively new to SSAS so I might have missed something obvious.
Kind regards,
Hans Blom