88

Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM
Page 2: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Welcome

Page 3: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance

# T C 1 8

Brad Wheeler - VP, Analytics & Outcomes, IBM Watson Health

Eman Alvani - Tableau Analyst, IBM Watson Health

Page 4: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

AgendaA Brief Background of our Tableau Story

Why Performance Matters

General Guidelines

Using Performance Recorder

Dashboard Tuning Examples

Monitoring Dashboard Performance

Page 5: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Brief Background

Page 6: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

17 years of healthcare technology experience

2000 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18

Started at OmniSYS in Marketing during college

BBA in Marketing and MBA from Texas A&M -

Commerce

Transitioned to Software Development

Created Business Intelligence Department as

Director, Business Intelligence

Director, Business Operations

Sr. Director, Software Development

VP, Implementations & Analytics

VP, Analytics & Outcomes

Page 7: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

10+ years of business analysis experience

2006 07 08 09 10 11 12 13 14 15 16 17 18

BA from Southern Methodist University

Began working as associate at GS

Sr. Financial Analyst, FP&A

Business Data Analyst at Dimont; CRM Reporting

Lead

Tableau Analyst

MBA from Pepperdine University

Page 8: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Our Legacy Environment

SQL Server data warehouse consolidates

multiple production databases into single source for reporting

Excel reports driven by complex SQL data

aggregations and Excel macros

Individual reports generated for each client

and manually uploaded to web portal

Page 9: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Our New Environment – Powered by Tableau

Online dashboards powered by Tableau

Clients login to web portal for access to data refreshed nightly

New dashboards provide many more insights and

greater level of detail

Page 10: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Before & After Report Example

Individual filters used for each table and chart in the dashboard

User clicks to view terminology stored in separate table

Very heavy table and text usage. Lack of “headline” or key takeaway

Page 11: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Before & After Report Example

Visual heavy representation of all the

same data shown in original version

Filters apply across all dashboard

elements and are hidden by default

“Headlines” and bold

callouts call attention to

key takeaways

Terminology and field definitions

stored in tooltips

Page 12: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

After One Year of Tableau

95% of all client reports are automated and delivered via Tableau

Clients have near real-time access to their data, compared to monthly static reports

Dedicated client reporting staffing reduced from 13 to 3, freeing team up to work on

more meaningful tasks across Watson Health

A typical client user has access to 30-40 dashboards

Fast loading dashboards are critical, especially when dealing with large data

sets!

5.3 second average dashboard load time

93% of all dashboards load in under 10 seconds

Page 13: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Few General Performance Guidelines

Extracts generally perform 30% – 40% faster than live connections so use them whenever possible

Count Distinct functions are notoriously slow and a common cause for slow performance

Using calculated fields in filters can cause slow performance so filter on native fields when possible

Many filters with “Show Relevant Values Only” can cause slow dashboard interactions

When using Set filters, the In/Out option is usually more efficient that the Members in Set option

Watch out for too many fields in the Details shelf or ATTR() fields in the tooltip

Reducing the number of queries required to load a dashboard can often help improve performance

Most importantly

Performance tuning is often more of an art than a science and requires curiosity, creativity, experimentation, and patience

Page 14: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Why Performance Matters

Page 15: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Using Performance Recorder

Page 16: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Accessing Performance RecorderFrom Tableau Desktop: Help -> Settings and Performance -> Start Performance Recording

Page 17: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Reading Performance Recorder ResultsAfter stopping the recording a new Tableau workbook will open with the results

Dashboard events sorted chronologically

Dashboard events sorted by time

Clicking an event will show the query

Page 18: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

The Results Workbook is EditableThe performance recording results are returned in a Tableau workbook that is fully editable, so you may customize to help understand the data

Original Customized

Page 19: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Dashboard Tuning Example 1Clinical Medical Conditions Overview

Page 20: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

The Starting Point

This dashboard examines medical condition, service categories, and totals by state in four broad sections:

Key Metrics

Top conditions (bar chart)

Filled map by state

Service Category (tree map)

Parameters allow users to set the number of top conditions to show and toggle between various metrics

Original Load Time: 49 seconds

Page 21: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Original Performance Recording ResultsRunning the Performance Recorder we can see that the Top Conditions sheet is the “long pole in the tent” so we’ll start there

Page 22: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Testing the FiltersJust as a test, let’s delete all the filters to see if that’s the problem

Original filters on Top Conditions Sheet

We’ll keep the action filter, Top N, and Clinical Condition to force a refresh

Page 23: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Filters Are Not the ProblemRemoving all filters had minimal effect so we’ll undo that change

Removing all filters only decreased the

load time by 2 seconds. They’re not the

problem so we can add them back

Page 24: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Filters Are Not the ProblemRemoving all filters had minimal effect so we’ll undo that change

Removing all filters only decreased the

load time by 2 seconds. They’re not the

problem so we can add them back

Page 25: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Closer Look at the Detail ShelfHaving calculated fields in the Detail shelf can often cause slow performance; let’s see what removing c_sort Measure Name does

Page 26: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Significant Reduction in Load TimeRemoving that one field from the detail reduced the load time by 33%!

Load time dropped from 49

seconds to 34

Page 27: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Field Required for TitleBut now that the field is gone, we get “None” in the chart title

Page 28: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Alternative: New SheetWe can solve that by making a new sheet just for the title

Page 29: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Putting it Together on the DashboardWe’ll hide the original sheet title and replace it with the newly created “Title Sheet”

Title Sheet

Original Sheet

Page 30: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Calculated Field Being Used as a FilterLet’s take a closer look at this Top N filter

Page 31: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Combination of Two FieldsThis filter is using a combination of two calculations to limit our results to top N

Page 32: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Alternative: Using a SetWe can achieve the same result by using a Set

Set the filter to “In” the Top

Clinical Conditions Set. All

filters must be in context

when using sets

Page 33: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Checking the ResultsOur results are exactly the same when using a Set filter compared to the calculated field

Using Set filter

Using original filter

Page 34: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Checking the ResultsUsing the Set filter reduced the query time for Top Locations to 19 seconds!

After these two changes, Top Locations is no

longer the longest running query and our overall

load time decreased to 25 seconds

Let’s move on to Geo next

Page 35: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Another Calculated Field in the Detail ShelfWe have another calculated field in the Detail shelf.

Let’s take the same approach as the Top Locations and create a new title sheet

Page 36: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Checking the ResultsMoving the c_Metric_Name field from the Geo Detail shelf to its own title sheet reduced the Geo load time by 58%

Geo load time dropped

from 24 seconds to 10

Page 37: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Still Room for Improvement

Let’s see if there’s something we can do to decrease the Top Conditions query time

Top Conditions running at

nearly 18 seconds

Page 38: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Calculated Field in the Text FieldAfter some experimenting, the C_Cost Label field stands out as an improvement opportunity

Page 39: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Closer Look at the CalculationThis field uses a calculated field whose sole purpose is to show or hide a “$” symbol in the chart label

Page 40: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

An Alternative – Two New Fields with Default Formatting

After trying multiple options, it was discovered that the most effective way to achieve this functionality for this workbook was to 1) create two “label” fields, 2) set default formatting for each, and 3) add them both to the label

Step 1 – create two “label” fields and set default formatting for each

Page 41: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

An Alternative – Two New Fields with Default Formatting

After trying multiple options, it was discovered that the most effective way to achieve this functionality for this workbook was to 1) create two “label” fields, 2) set default formatting for each, and 3) add them both to the label

Step 2 – set default formatting for each field

Page 42: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

An Alternative – Two New Fields with Default Formatting

After trying multiple options, it was discovered that the most effective way to achieve this functionality for this workbook was to 1) create two “label” fields, 2) set default formatting for each, and 3) add them both to the label

Step 3 – add both fields to the data label

Page 43: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Checking the ResultsUsing this method still provides the “$” when needed and reduces the query time by about 6 seconds

Page 44: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Dashboard Load Time Comparison Total run time decreased from 49 seconds to 12!

Original – 49 seconds Revised - 12 seconds

Page 45: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Review of our ChangesAll changes are “behind the scenes” that are invisible to the end user

76% reduction in load time compared to

original view

Page 46: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Dashboard Tuning Example 2Outreach Modality Overview

Page 47: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

The Starting PointOutreach Modality Overview dashboard showing count and rates by communication modality

Original load time: 135 seconds

Page 48: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Update 1: Default SortingSorting requires running an extra query to determine the sort order for a chart

Sorting queries are usually fast but in this instance it’s taking 33 seconds

Page 49: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

This Chart is Being Sorted by Patient Response Rate

Page 50: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Let’s Take a Closer Look at that FieldPatient Response Rate is calculated by comparing two COUNT DISTINCT fields

Page 51: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

What if We Don’t Sort by Default?Clearing the default sort makes very little difference in the presentation since there are so few rows

Sorted (original) Non-sorted

Page 52: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

30 Seconds Saved

No extra query is being ran to determine sort order, saving approximately 33 seconds

No extra query being ran

Page 53: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Update 2: Hiding vs. Filtering

Each of these sheets are taking approximately 90 seconds to load

Let’s take a closer look to see what could be causing the slow performance

Page 54: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Calculated Field Filtering Set on Each SheetEach view is being filtered by a calculated field

Page 55: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Closer Look at the Calculated FieldThis is a combination of fairly complex Level-of-Detail calculations and string comparisons

Page 56: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Removing the Filter Removing the filter reduces the query execution time by 14 seconds

Original view with filter – 96 seconds

Updated view without filter – 82 seconds

Page 57: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Hiding vs. FilteringRather than filtering our data, we can hide the columns we don’t need to achieve the same view

Page 58: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Update 3 – Editing Calculated FieldWe are using a complex calculated field to concatenate modalities into a single column

This calculation is the main culprit behind our slow performance

Page 59: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Editing the FormulaWe can revise the formula to use math to assign a numerical value to each modality combination

Now we get discrete numbers returned rather than string fields

Page 60: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Results with the Updated CalculationThis change reduces our query run time from 82 seconds to 27!

Page 61: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Changing the Numbers to TextWe can edit the aliases to assign custom values to each of the numerical outcomes

Page 62: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Revisions Compared to OriginalOur revised dashboard is nearly identical to the original, with the only change being the sorting on the top chart

Original Revised

Page 63: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Dashboard Load Time Comparison Total run time decreased from 135 seconds to 42!

Original – 135 seconds Revised - 42 seconds

Page 64: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Review of our Changes

Nearly 70% reduction in load time compared

to original view

Page 65: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Dashboard Tuning Example 3Operational Scorecard

Page 66: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

The Starting PointThis dashboard examines operational metrics at the system level (top section) and by facility (middle and bottom sections)

Original load time: 21 seconds

Page 67: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Original Performance Recording ResultsRunning the Performance Recorder we can see that all the queries are returning in 7 seconds or less, but there are LOTS of them

Page 68: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Live Connection vs. Data ExtractThe original dashboard used a live database connection

Live connections are normally slower than extracts and don’t take full advantage of Tableau’s extract engine

Creating a Tableau data extract creates a local data file. This file can be embedded directly in the workbook or uploaded to Tableau server

Page 69: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Checking the ResultsTotal load time dropped by 7.8 seconds to a total of 13.2 seconds

Lots of queries (32!) still being ran

Reducing the number of queries will be the key for optimal performance

Page 70: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Closer Look at this Dashboard Layout

The original layout requires 25 sheets

18 sheets required just for the top section

(with at least 1 query required per sheet)

Each measure in the top section requires

3 sheets due to layout

1 for each bar chart

1 for each “Your Performance” metric

(since it appears on the right of the

bar)

1 for each axis label (due to alignment

on bottom left of each bar chart)

Page 71: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

An Alternative Dashboard Design Option

This option requires only 6 sheets

By charting the top bar charts on Index

score, we’ve normalized the axis for all

measures, allowing us to chart all measures

in a single chart

Added benefit of having the benchmark be in

the same position across all measures

We can also eliminate the two extra title

sheets at the bottom of the screen and just

use the existing chart titles

This simpler layout makes maintenance and

updates much easier in the long run

Page 72: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Closer Look at the Top Section

Original version charted on actual metric value and required a sheet for each metric due to varying scales per metric

Revised version compares actual value to benchmark value to calculate an index value,

normalizing the scale for all metrics

Page 73: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Checking the Results

Revised layout reduced load

time by an additional 52%

Total number of queries being

ran dropped from 32 to 11

Total load time dropped

another 6.3 seconds to a total

of 6.9 seconds

Page 74: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Simplifying Filter LogicReplaced calculated field filters with more basic filters, achieving the same result with less computing (example below)

Page 75: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Revisions Compared to Original

original

revised

Page 76: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

A Review of Our Changes

76% reduction in load time compared to

original view

Page 77: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Monitoring Dashboard Performance

Page 78: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Default Tableau Server Performance Reports

Status -> Stats for Load Times

Page 79: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Creating Your Own Dashboards

*Requires access to Tableau Postgres database

Page 80: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Creating Your Own Dashboards

*Requires access to Tableau Postgres database

Page 81: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Creating Your Own Dashboards

*Requires access to Tableau Postgres database

Page 82: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Works Well for Live Monitoring

*Requires access to Tableau Postgres database

Page 83: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Works Well for Live Monitoring

*Requires access to Tableau Postgres database

Page 84: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Works Well for Live Monitoring

*Requires access to Tableau Postgres database

Page 85: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Setting up Alerts

*Requires access to Tableau Postgres database

Page 86: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Please complete the

session survey from the

Session Details screen

in your TC18 app

Page 87: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM

Thank you!

#TC18

Brad Wheeler903-413-7404

[email protected]

https://www.linkedin.com/in/brad-wheeler-2993313/

https://public.tableau.com/profile/brad.wheeler#!/

Eman Alvani310-739-7939

[email protected]

www.linkedin.com/in/ealvani

https://public.tableau.com/profile/eman.alvani#!/

Page 88: Welcome [tc18.tableau.com] · Advice from IBM Watson Health on Tuning Tableau Dashboards for Fast Load Times and Rapid Performance #TC18 Brad Wheeler - VP, Analytics & Outcomes, IBM