We have repeatedly encountered the 4,294,967,296 tuple limit in our MDX queries, when using the Non Empty Operator on a Cross Join of fields:
Example
WITH
MEMBER [Date].[DateID].[M1] AS
AGGREGATE({[Date].[DateID].&[20070101]:[Date].[DateID].&[20070103]})
SET [M2] AS
({[dimension7].[attribute7].[value7]})
SELECT {[Measures].[count]} ON COLUMNS,
NON EMPTY {([dimension1].[attribute1].Children,[dimension2].[attribute2].Children,[M2],[dimesnsion3].[attribute3].Children,[dimension4].[attribute4].Children,[dimension5].[attribute5].Children,[dimension6].[attribute6].Children)} ON ROWS FROM MyCube WHERE {([Date].[DateID].[M1])}
Error
The expression contains a function that cannot operate on a set with more than 4,294,967,296 tuples.
We have followed Microsoft's best practices for Cube Design, while balancing the needs of our application.
Is it a coincidence that the 4,294,967,296 = 2^32 on the order of 4 GigaBytes and our server is of 32-bit architecture?. Will scaling up to a 64-bit architecture machine help? Then will our tuple limit be 2^64 which is on the order of 18 ExaBytes or 18 qunintllion bytes?
This post may help. You may want to follow up on the Analysis Services forum.
|||Thanks for your reply Teo. I have already refered to this post and unfortunately I'm unable to use the Exists function in this context due to certain limitations in our application.
I have also posted the same issue on the Analysis services forum.
Thanks again for your help.
No comments:
Post a Comment