Database performance options

Calculations and other operations that call on more memory than is available to an OLAP database are handled automatically. The calculation is canceled, an error message is displayed, and the situation is logged.

These controls take into account these factors:

  • Free system memory limit.

    The percentage of system memory that must not be used by the MDX engine. This keeps memory free for other processes.

  • Memory limit per MDX request.

    The maximum percentage of system memory that can be used by a single request. If the memory requirement exceeds the free system memory limit, then the amount of memory available for the request is reduced.

In addition, the Database Performance dashboard has options to maintain database performance. Select Dashboards > OLAP > Database Performance.

You can specify that cubes that have not been accessed for a specified period are unloaded from memory. Select Unload idle cubes and specify the idle period.

You can specify that cubes are optimized periodically. Select Optimize cubes and select the time at which the first optimization should occur and the interval between subsequent optimizations. An optimization re-indexes all cubes if more than 100,000 cell changes have been executed. The count is based on the number of changes on basic values. If there have been fewer than 100,000 changes, then the cube is not optimized.

Although concurrent calculations of multiple requests are always distributed among available processor cores, the Multi-thread calculation option enables OLAP to take advantage of multiple cores for a single request. Calculation tasks of one request can then be split into separate threads, which can be run, in parallel, on different cores. This functionality is used especially when many values are expected during an aggregation. If multi-threading is off, then each request is calculated by a single thread. But, if there are two or more concurrent requests, multiple threads can be calculated simultaneously. For example, on a four-core system, four requests can be calculated simultaneously, with negligible slow down.