Traditional web-based reporting with SAS BI tools

ERROR: Insufficient memory - in the "CROSSJOIN" function

Reply
Contributor RSB
Contributor
Posts: 72

ERROR: Insufficient memory - in the "CROSSJOIN" function

I am getting the "Insufficient memory" error while trying filter on a list of customers in the cube through WRS. There are some 15k+ customers in the list.

The current MEMSIZE is 1 GB for the OLAP server, does increasing the MEMSIZE to 5 GB makes any difference, given that we have 30 GB memory available on the server?

at present we have a maximum of 2-3 users using the application parallel.

Thanks in Advance.
SAS Employee
Posts: 238

Re: ERROR: Insufficient memory - in the "CROSSJOIN" function

If this is a Windows 32-bit machine, you are limited to 2GB per process. Windows 64-bit can be set higher (this is defined in the sasv9_olapserver.cfg file (Windows) or OLAPServer.sh file (Unix)) and might allow for enough space to generate the result.

The important item to note is that queries against cubes with high cardinality levels (such as your >15k customer list) can result in a large memory usage. You might want to add a hierarchical structure in the customer dimension to reduce the cardinality - such as having the 1st level in the hierarchy = the alphabet.

~ Angela
Contributor RSB
Contributor
Posts: 72

Re: ERROR: Insufficient memory - in the "CROSSJOIN" function

Hi Angela, Thanks for the Reply ,We have a 64-bit machine so I guess increasing the MEMSIZE to 5 GB might work for me.

I will certainly consider adding the Hierarchical structure to reduce the cardinality.

Thanks for your suggestion, very useful indeed. Message was edited by: RSB
SAS Employee
Posts: 37

Re: ERROR: Insufficient memory - in the "CROSSJOIN" function

You can check out http://support.sas.com/kb/19/765.html for more information about how cardinality affects result set size (and in turn memory consumption).
Ask a Question
Discussion stats
  • 3 replies
  • 574 views
  • 0 likes
  • 3 in conversation