Web Workspaces: Default Behavior Configuration and Optimization
Overview
Hubble ’s workspaces have always aimed to provide an up-to-date view of the user’s data where possible. To do this, the reports that drive a workspace’s views are automatically run when the containing page is opened. As more and more users have become proficient in data exploration, the demand for customizing filters before running a report has grown. To ensure users of Hubble have the most friction-less experience possible, we have introduced Run On-Demand as the default for workspace views.
Configuring the Default Behavior
As already outlined, Hubble’s new default behavior is to not automatically run workspace views. This can be configured during installation by uncommenting the WorkspaceViewAutoRun key in the yellowbox.config file and modifying its value attribute.
<!-- Place this file in C:\Insight\YellowBoxWeb\Config\YellowBox.config --
>
<appSettings>
...
...
<!-- Workspace Settings -->
<add key="WorkspaceViewAutoRun" value="true" />
</appSettings>
This change MUST take place on every web server, and the IIS service on each will need to be restarted to adopt the modified configuration.
Workspace Optimization
Multi-thread mode
The multi-thread mode feature allows running multiple reports simultaneously in a workspace.
When you enable the multi-thread mode feature in a multi-view workspace, each views’ report is visible immediately after it is generated as opposed to earlier when you had to wait for all the views to be generated to view a single report or multiple reports. For workspaces with multiple views, and medium to long running views, the report viewing time is significantly reduced to 15 seconds or
more per view. The multi-thread mode feature can be enabled or disabled depending on the how a user typically uses the Hubble workspaces.
Single-thread mode
In the single-thread mode, the views share the same run context and run in a sequence. The reports for all the views are visible only when all the views in the sequence are run. For example, if there are two views, View1 and View2, View2 is run only when View1 is completed. If View1 takes one minute to run and View2 takes five seconds to run, the reports or results are visible only after one minute and five seconds.
The below list mentions the default preference opted for different release versions.
Mode |
Setting preference |
Version |
|---|---|---|
|
Workspaces with small number Single-thread mode |
default |
20.4, 23.4.2, & 24.1.1 onwards |
Multi-thread mode |
default |
21., 22.x, 23.x (except 23.4.2), 24.1 |
Single-thread mode versus multi-thread mode
Features |
Single-thread mode |
Multi-thread mode |
|---|---|---|
Pros |
|
|
Cons |
|
|
When to select single-thread mode?
Following are our recommendations to use the single-thread mode:
- Workspaces are typically small (1 - 3 views per workspace) and the views run quickly (less than 10 seconds each)
- The user doesn’t need frequent data refresh (after opening a workspace and running the views once the user doesn’t need to run them again soon)
- A user uses multiple workspaces but only runs each once
- Example of when to use:
- Workspace has a single view
- Workspace has more than one view, each of them is quick to run (5 seconds each) and the user only runs each workspace once
- A user uses multiple workspaces with long-running views but only runs each workspace once before logging out.
When to select multi-thread mode
Following are our recommendations to use the multi-thread mode:
- Workspaces are typically big (4 or more views per workspace) and the reports are long-running (10 seconds or more each)
- The user needs frequent data refresh, the first run can be slower than single-thread mode, but the following runs should be much faster.
- The workspace has more than one view and all are very long running.
- A user uses multiple workspaces and runs each more than once before logging out again.
- Example of when to use:
- Typically, a workspace has 4 or more views, each takes at least 10 seconds to run
- Typical workspace has more than one view and each takes 1 minute to run
- A user uses 2 or more workspaces and refreshes each more than once.
Configurations
The configuration for this feature is set on all Web Servers, on C:\Insight\YellowBoxWeb\Config\YellowBox.config
The key is ReportingServiceMultiThreaded:
Single-thread mode is the default and can be set in the following ways:
-
this key is commented out (default)
-
Example
<!-- <add key="ReportingServiceMultiThreaded" value="false" /> -
->
-
Example
-
or this key value is set to false
-
Example
<add key="ReportingServiceMultiThreaded" value="false" />
-
Example
-
or this key value is different than true or false
-
Example
<add key="ReportingServiceMultiThreaded" value="abcd" />
-
Example
Multi-Thread mode can be set in the following ways:
-
this key value must be set to true and not commented out
-
Example
<add key="ReportingServiceMultiThreaded" value="true" />
-
Example
Known Limitations
For multi-thread mode, the maximum number of loaded reports on the web at a given time is equal to the maximum number of logged-in users for a single-thread at a given time.
Example: For a single-thread, the maximum number of logged-in users is 100. For multi-thread, the maximum number of loaded reports is 100.
Known Issues
In the multi-thread mode, the following message sometimes occurred when accessing filters in the workspace view:
Filters for this view are no longer available. Please refresh the view and try again.