Cache Behavior of Jedox Web Spreadsheets
When a Jedox Web Spreadsheet is being loaded in the browser, or when a user scrolls through a spreadsheet, Jedox Web is aware of the viewport (i.e., the area that is visible in the user’s browser window), and fetches data only for that viewport, plus a buffer space. This reduces the amount of data that needs to be transferred from the Jedox Web server to the browser. On the other hand, this also implies that when a user navigates/scrolls through the spreadsheet, at some point additional data needs to be fetched. This can cause a very short pause in the scrolling mechanism.
You can increase the amount of data that is fetched both during the initial load of a spreadsheet and when scrolling through the sheet. To do so, open the Jedox Web Administration panel and navigate to Settings > Spreadsheet > Cache. The following two settings control the cache behavior:
- preload_coef: controls the amount of data fetched during the initial load of spreadsheet
- readahead_coef: controls the amount of data that appears when scrolling
The value is a factor for the buffer of data fetched in relation to the viewport (the visible area of your screen). When you view a spreadsheet on your monitor, Jedox fetches the data for the portion of the spreadsheet that you can see plus a factor of X, as defined in the cache settings. By default, the cache is set to 2, which is roughly two screens of a spreadsheet.
Depending on the layout of the spreadsheet (specifically, the height of rows and thus their amount in the visible area of web spreadsheets), it may be necessary for Jedox Web to fetch data when scrolling is started in some cases, regardless of the aformentioned setting values.
Note: the default values for both settings appear as 0 in the user interface, but in practice, the default values are 2. This anomaly is due to legacy constraints in the software.
Note also that while increasing these settings may prevent data fetching while scrolling in a spreadsheet, it may also increase the time required for the initial load of the sheet, as more data has to be fetched upfront. However, you would probably need a quite big, calculation-heavy report to notice the impact of these settings.