Get to the bottom of why you are experiencing Tableau Server performance loss.
During this on-demand webinar, we discuss
- Most common causes of Tableau Server performance degradation
- How to get ahead of your performance issues
- When to scale out and when to scale up
- Cloud-based options
You may also be interested in another popular on-demand webinar, Four Methods to Secure and Filter Data by User in Tableau.
Presenter
Todd Schuman
Practice Lead – Installations, Upgrades and Performance Tuning
Senturus, Inc.
Presentation outline
- Most common causes of Tableau Server performance loss
- Data extract refresh schedules
- Undersized hardware/concurrent users
- Row level security
- Poor workbook/dashboard design
- Data extract chaos
- Long refreshes during peak hours
- Failing extracts
- Duplicates and deprecated extracts
- Undersized hardware/concurrent users
- On paper, 8 CPU/32GB RAM should support 1000 total users
- Assumes 10% are active
- Light workload
- Row level security in extracts
- Live vs. extracts
- Live can apply security for each SQL execution
- Extract needs to store specific rows for each user/group
- One-to-one
- [Column]=USERNAME()
- Will create a row for each user
- 1M rows, 1K users = 1B row extract
- One-to-group
- IF ISMEMBEROF(“GROUP”) THEN [Column]=”Value”
- Can help reduce users to multi-user groups
- 1M rows, 20 groups, 20M row extract
- Live vs. extracts
- Poor dashboard design
- Slow dashboards in Desktop will not run faster on Server
- Usual suspects
- Custom SQL
- Too many details/marks
- Too many quick filters
- Complex calculations
- Excel/CSV files as data sources
- Operational databases
- LOD calculations
Getting ahead of performance issues
- Restrict schedules – don’t allow peak hour scheduling
- Clean up extracts
- Hide unused columns – expose only what is needed
- Remove lower level detail if only focused on aggregates
- If you only report on monthly data, you don’t need to store daily row level detail
- Filter – If you only need one year of data, filter out the historical data
- Massive reduction in rows and size
- Data Stewards
- Restrict non-stewards from scheduling extract refreshes
- Data steward ensure extracts are only refreshed when needed
- Duplicates are removed
- New extracts are validated
- Row level security
- CONTAINS()
- High performing without duplicates
- Requires creating custom comma delimited fields
- Note: issues with HYPER in 10.5 and 2018.1.0
- Display name
- Fast performance
- Users can edit
- Ugly for users
- Tableau admin tools
- Out of box reports
- Internal postgres Tableau reporting
- Build your own dashboards
- Have it delivered automatically
- Extract timelines
- Daily use
- Weekly use
- Monthly use
- CONTAINS()
Scaling up vs. scaling out
- Up vs. out
- Up – adding additional hardware/resources to existing servers
- Out – adding new servers to distribute load
- When to scale up
- Tableau Server recommended hardware
- If Less < 8-16 CPU – scale up before out
- If on core-based licensing, make sure you are using what you paid for
- Single gateway nodes don’t count
- DEV and TEST environments don’t count as long as they are <= prod core count
- When to scale out
- Single node >= 8 CPU
- Need to address failover/high availability (HA)
- Need to dedicate hardware to Tableau processes
- Response times scaling out
- Comparisons
- Scaling up
- Lower cost
- Less maintenance
- Simple configuration
- Scaling out
- Additional cost for servers and licenses
- Distribute load
- Dedicated workers
- Failover/high availability
- Cloud-based options
- Tableau Online
- Now runs on AWS
- Turnkey
- Auto upgrade
- No access to file system
- Limited on-prem access
- 100 GB limit
- DIY cloud
- AWS, Azure, Google
- Maintain updates and software
- Full feature set
- Need to setup network access to on-prem data and authentication
- Tableau Online
- Scaling up