cancel
Showing results for 
Search instead for 
Did you mean: 
intapiuser
Community Team Member
Community Team Member
To control RAM consumption in Windows you can use the Windows Resource Monitor, the Memory tab. For Linux check this article 
 Resource Monitor can be accessed from Windows Task Manager:
You will be interested in 2 graphics Used Physical Memory (RAM) and Commit Charge (Page File, cache, virtual memory) 
NOTE that if any of RAM or Commit Charge Graphic loaded above 80% will cause an issue of Out of Memory.  Even if RAM will be used for 20% but Commit Charge will be used above 80% -85 - this is where issues will begin due to threshold mechanism (Safe-Mode).

The Commit charge depends on Page File

The Commit charge depends on Page File. Sisense recommends (From Microsoft recommendations)  to have a page file 300% of Current RAM but not more than 124GB.
To configure page file go to the File Explorer and access the properties of "My Computer"
1. Click on Advanced System Settings
2. Switch to the Advanced tab
3. Go to Settings of Performance
4. In the Performance Options Window, switch to Advanced tab
5. Press on "Change" button in Virtual memory frame
6. remove the settings of a page file from Drive C (No Page File) and press on D drive to set parameters
7. Set the Custom Size
8. as Initial set the maximum amount that you will use (300% of current RAM, but not more than 124 GB), in this case you will avoid issues with defragmentation as the page file will have fixed size. Otherwise, the page file allocation will be increased when needed and that will defragment the drive a lot.
9. Set the max amount of dedicated space
10, after setting up Max and min settings press om "Set" to apply changes
11. press on ok, after that, the system will ask to restart the server in order to apply the changes.
Check how much RAM used by a dashboard/widget
 
1. Make sure that no one else is using the dashboards connected to the same cube as the dashboard that you checking
2. Open Performance Monitor, Task Manager and two separate tabs in your browser:
      - Dashboard you would like to check 
      - Elasticube Data Tab 
3. Restart the ElastiCube:
- In Data Tab stop the cube that is a datasource of the Dashboard
- Wait for 5-10 sec and start the cube  (do not use the "restart" option, to get the correct result you need to stop and then start the cube) 
4. In Task manager enable the Command Line, and PID  (right mouse click on "status"). 
5. In "Command line" allocate the cube that is used by the dashboard and remember the PID. (extend the column). The cube name in a MonetDb style, make sure you're checking the correct one 
6. To check the RAM consumption, allocate the cube by PID in the Resource Monitor (memory tab)
7. Reload the dashboard you're checking, and see how much RAM will be used 
 
Using the same technique you can check widget usage, to do so open the required widget by pressing on edit (pencil) button, instead of the entire dashboard and you will be able to restart only the widget page that will send the query only from a particular widget.
 
 
The main reasons of the performance issues are:
- Heavy formulas are used inside widgets. In this case, you can move the calculations to a cube level i.e. create a custom table/column with formulas so they would be calculated when build, and on a dashboard, you will use results and aggregations etc
- Data Security. In case of data security, the main issue is that the results of the queries that Sisense usually re-uses between customers cannot be reused. Data Security adds additional join with Data Security that makes sisense think that the query is unique and calculate result again. 
- Many-to-many 

Many-to-many

The many-to-many relationship is inflating your data due to duplication resulting from the Cartesian product generated from this relationship.
 
Sisense recommend installing the JAQLine plugin in order to inspect the connections between the tables:
DRay_0-1707855394804.png

 

For more information, see the following articles:
Also, please check a comprehensive guide we compiled to troubleshoot the performance issue.
- Elasticube catalog corrupted. A rare case however could happen. Should be used as "last chance".

How to:

Corruption can be caused by connection issues or by insufficient space available on your system (C:\) drive. Make sure no builds are currently running and do the following to rebuild the catalog folder which will most likely resolve the issue: 
 
1. Open the start menu or Task Manager, and search for "Services". 
2. Find the following services and stop them: "Sisense.ECMS" and "Sisense.ECMServer". 
3. Open the following path - C:\ProgramData\Sisense\PrismServer and rename the folder from "ElastiCubeCatalog" to "ElastiCubeCatalog1". 
4. Open the "Services" (same as step 1) and start the "Sisense.ECMS" and "Sisense.ECMServer" services. This may take a longer time than usual because it is forcing Sisense to build a new catalog folder. 
Important note: Catalog folder rebuild erases all build-scheduling settings. Please re-configure them on all your ElastiCubes
Rate this article:
Version history
Last update:
‎02-13-2024 12:17 PM
Updated by: