Part 2 — Improving Web Player Load Time

  • Would you like better web player load time?
  • Would you like to be able to move more users to web player to get beyond slow DXP loads?

If the answer to any of these questions is yes, then this post is for you, as it focuses on improving web player load time using Scheduled Updates.  This is the second part of a three part series on improving load times.  Last week’s post discussed how to troubleshoot long load times in a DXP.  Use the link below to check that out.  To close out the series, I’ll discuss improving DXP load times using a combination of cached information links and scheduled updates.

Part 1 — Troubleshooting Long Load Times

Part 2 — Improve Web Player Load Time with Scheduled Updates

Part 3 — Improve DXP Load Times

What is a Scheduled Update?

(from TIBCO Spotfire Help)

In Spotfire Server, you can configure and run automated data updates to existing analyses. This saves web player load time for end users because they do not have to wait for the new data to download when they open the analysis.  For analyses that contain links to large amounts of data, downloading fresh data can take a significant amount of time. Scheduled updates save time by downloading the latest data before users need it.

How Does it Work?

(from TIBCO Spotfire Help)

You can trigger updates in two ways:

  1. In Spotfire Server, administrators create rules specifying the analysis to pre-load, when to do it, whether the new data is automatically displayed to the end user, and so on.
  2. Using TIBCO Enterprise Message Service™ (EMS) or a web service, administrators  can create “event-driven updates” that are triggered by an external process. (not the focus of this post)

When scheduling an update in Spotfire Server, you can configure the following options:

  • The days of the week that the update runs.
  • The times of day between which the updated analysis is available to end users.
  • How often the server checks for new data.
  • The resource pool on which to preload the analysis, and the number of Spotfire Web Player instances that should be available for users opening the analysis.
  • Whether the updated data is automatically displayed in the user’s copy of the analysis, or the user decides when to refresh the information.
  • Whether to allow cached and pre-computed data.

 

Requirements & PreRequisites

  • Spotfire Server –> In order to run Scheduled Updates, you must select a DXP from the Spotfire Library, which means you need Spotfire Server.  Thus, if you are using the desktop product, this will unfortunately not be of much help.
  • Web Player –> Scheduled Updates are primarily for speeding up Web Player loading, and the DXP must load successfully on the Web Player to run a Scheduled Update.  This post does not cover all of the details required for web player configuration.  That is a HUGE topic in and of itself.  Just know that if your DXP doesn’t load into web player, the Scheduled Update will not work.
  • Don’t recommend Prompts on Information Links -> Scheduled Updates can work for DXPs with prompts, but (and this is a big BUT) it will open the DXP using the responses that were used when the DXP was last opened and saved.  Thus, if you have a process for opening and saving, it could work.  If you don’t, data loads could be messy and inconsistent.  Unfortunately, this is a deal breaker for many DXPs, as prompts are very common, especially with large data sets.

Configuration

Scheduled Updates are configured in the administration console, in the Scheduling & Routing section.  Configuring Scheduled Updates is a two step process.

  1. Create the schedule (Use Create Schedule button)
  2. Create the rule (Use Create Rule button)

Create schedule to improve web player load timeCreate rule to improve web player load time

 

Create the Schedule

  1. Give the schedule a name.  I like to indicate how often and/or when it runs.
  2. Specify which days of the week the job should run (only daily or weekly jobs are possible).
  3. Specify the hours the job should run (ex. between 6am and 6pm).
  4. Specify the time zone.
  5. Specify the reload interval (i.e. check for updates).

 

Create the Rule

  1. Specify the type of rule.  In this case, the rule type is FILE.
  2. Give the rule a name.  For example, “Early Morning 1hr Refresh” is a good name for something that kicks off early and refreshes every hour.
  3. Browse through the library to find the DXP.
  4. Select a resource pool and specify the number of instances.  These settings will vary depending on how your web player is setup.
  5. Set a priority.  For example, if you are running 10 scheduled updates, prioritize them 0-9 with 0 as the highest priority.
  6. Select which schedule should apply to the update.  Note, even though I showed you how to create a rule first, you can also create schedules in this screen.  I prefer to setup schedules in advance so I can see how a new schedule fits into what’s already being loaded.

Improve Web Player Load Time Improve Web Player Load Time

 

End Result

When I configure Scheduled Updates, they are configured to start before folks get into the office (6am) so data is loaded and ready to go when people arrive.  When users open a DXP on the Web Player that has a Scheduled Update behind it, that file will load much faster.  Lastly, an Administrator can monitor the success (or failure) of Scheduled Updates in the Scheduling & Routing section of the Administration Console.

There you have it!  In conclusion, scheduled updates will help dramatically improve web player load times.  Stay tuned next week for a post on how to improve the load time of DXPs from the desktop.

7 thoughts on “Part 2 — Improving Web Player Load Time

  1. I don’t think so, for the same reason that you can’t use prompts. Without the marking or property control it doesn’t know what to load, and that is selected after the DXP is opened.

  2. Thank you for yet another interesting article, Julie!

    Regarding “NO PROMPTS ON INFORMATION LINKS”:

    An important fact to be aware of is also that not all data sources in an analysis must be treated the same way – you can set some data tables to be reloaded for each user, while still allowing others ones to only be pre-loaded by Scheduled Updates. For more information, please refer to https://docs.tibco.com/pub/sfire-analyst/7.10.1/doc/html/en-US/TIB_sfire-analyst_UsersGuide/data/data_details_on_data_table_properties_scheduled_updates.htm

    Another approach to consider (when appropriate) is also if data can be retrieved On-Demand instead (Tyler Palmer: regarding your question, the On-Demand will be run during Scheduled Updates, but then also later when needed, e.g. if the marking driving the On-Demand has changed)

    Also, one alternative approach that should also be considered when thinking about what to put in Scheduled Updates (it all depends on your use case) is using Automation Services to (regularly) create a version of an analysis with embedded data, allowing that analysis to be opened faster than if you have to wait for the linked data to be retrieved, while also possibly reducing the load on the system by not needing to have that analysis loaded in memory (as Scheduled Updates does) when no users are using it.

  3. Regarding “NO PROMPTS ON INFORMATION LINKS”:
    If a DXP uses an Information Link that has prompts, Scheduled Updates will open the DXP using the responses that were used when the DXP was last opened and saved. We have a report that loads 73+ million rows in Scheduled Updates. We deliberately open, load and save the DXP using no responses for this to occur. It takes over an hour for this to open. The report is designed with filters that match the prompts so that a web user is quickly able to zero in on their area of interest. For users on the client, they are able to use the prompts to only load the rows for the area they are interested in. One thing we learned with this is that you should be very careful with calculated columns, as they can take a long time when there are this many rows.

    1. There is a setting in the Preferences tab to control whether or not calculated columns are embedded. I referenced this in this post: https://datashoptalk.com/administration-manager-preferences/

      “I also learned about this in a TIBCO Knowledge Base article, and this one was surprising. Even though data sources are linked, the data in calculated columns is embedded by default. This is why you see ‘Loading embedded data’ when the DXP is loading, regardless of whether the data tables are linked. The end result is longer file load time. When the preference is set to false, calculated columns are not embedded, and they will still update when the file is opened.”

      Might help.

Leave a Comment

Your email address will not be published. Required fields are marked *