Tableau is een geweldige tool voor het visualiseren en analyseren van data. Het stelt je in staat om snel en makkelijk je data te zien en te begrijpen. Soms, heel soms, komt het voor dat een dashboard niet de snelheid heeft welke nodig is, of gewoon domweg traag is. In deze blogpost geef ik je 6 tips om een langzaam dashboard te voorkomen.

1. Is je databron snel genoeg?

Onderaan de streep zal je Tableau dashboard nooit sneller zijn dan de onderliggende databronnen. Tableau kan geen magische Turbo-Boost op je verouderde relationele database server uitvoeren of de kabouters in je data warehouse harder laten lopen. Controleer daarom of  je queries bij de bron al langzaam zijn en kijk wat je daar kunt optimaliseren. Denk hierbij aan het volgende:

  • Zorg voor een index op alle kolommen welke onderdeel zijn van een table join
  • Zorg voor een index op alle kolommen welke in een filter gebruikt worden
  • Definieer primary keys
  • Definieer foreign key relaties
  • Voor grote datasets; gebruik table partitioning
  • Definieer kolommen als NOT NULL waar mogelijk

Tableau heeft een goed artikel beschikbaar voor het optimaliseren van database query performance. Je kunt ook overwegen om over te stappen op een andere technologie voor je databronnen. Onze studenten van The Dataschool werken regelmatig met Exasol, bekijk bijvoorbeeld eens het dashboard van Niccolo Cirone welke gemaakt is op een dataset van 500 miljoen records.

“Is England a Nation on Antidepressants?” - By Niccolo Cirone
“Is England a Nation on Antidepressants?” – Copyright © By Niccolo Cirone

2. Maak een extract

Indien een ‘live’-connectie niet nodig is, overweeg dan om een Tableau Extract te maken. Tableau importeert dan alle data uit je databron en slaat deze lokaal op in een geoptimaliseerde structuur. Op Tableau Server kun je deze data vervolgens periodiek laten verversen (zowel incrementeel als volledig). Het maken van een extract levert vaak een performance winst op van enkele tientallen tot honderden procenten.

Klik met je rechtermuisknop op je databron en selecteer 'Create Extract'
Klik met je rechtermuisknop op je databron en selecteer ‘Extract data…’

3. Probeer Custom SQL te vermijden

Tableau optimaliseert zijn queries naar de databron voor iedere visualisatie. Echter zodra je Custom SQL gebruikt is het voor Tableau niet langer mogelijk om de queries te optimaliseren. In plaats van de Custom SQL voor iedere query uit te voeren kan er ook een tijdelijke tabel aangemaakt worden waarin de joins zijn gematerialiseerd door een context filter toe te voegen. Volgende queries raadplegen dan de tijdelijke tabel in plaats van de Custom SQL waardoor enorme snelheidswinsten zijn te behalen.

exclude none
Selecteer None en Exclude en Tableau is zelf zo slim om een tijdelijke tabel met alle data aan te maken wanneer je er vervolgens een contextfilter van maakt.
contextfilter
Klik met je rechtermuisknop op het filter en selecteer Add to Context

4. Gebruik zo min mogelijk Quickfilters

Voor iedere Quickfilter moet er een aparte query naar de databron afgevuurd worden om de beschikbare waarden op te halen. Een groot aantal quickfilters (met een groot aantal beschikbare waarden) zorgt er dus voor dat er veel van de onderliggende databron gevraagd wordt. Indien de data niet veel varieert is het vaak beter om gebruik te maken van parameters, deze worden statisch gedefinieerd voor het hele workbook waardoor er geen extra queries naar de database nodig zijn. Heb je meer dynamische filters nodig, gebruik dan dashboards actions om gebruikers door je dashboard heen te loodsen.

5. Gebruik de juiste granulariteit

Ga je alle details in een visualisatie weergeven wanneer je database de transactie gegevens van de afgelopen 10 jaar bevat? Natuurlijk niet! Zorg er daarom voor dat je je data terugbrengt naar het juiste niveau (bijvoorbeeld dag of maand). Dit kun je instellen via het Extract menu. Heb je toch je data nodig op het meest diepe niveau? Zorg er dan voor dat je alleen die data ophaalt welke je daadwerkelijk nodig hebt met een contextfilter (bijvoorbeeld enkel de afgelopen 3 maanden).

Selecteer de optie
Selecteer de optie ‘Aggregate data for visible dimensions’ en ‘Roll up dates to Month’

6. Gebruik de laatst nieuwe versie van Tableau

Tableau spendeert dit jaar meer aan research en development dan alle voorgaande jaren samen en brengt zeer regelmatig nieuwe versies uit. Dit zijn niet alleen obscure bugfixes maar daadwerkelijk nieuwe features en snelheidsverbeteringen. Zo werd er met v9  onder andere een viertal optimalisaties op query gebied toegevoegd waaronder Query Fusion, Re-used queries, Consolidated queries en Parallel queries.

Meer weten?

Wil je meer weten over het optimaliseren van je Tableau dashboards? Stel je vraag via een reactie op dit bericht of neem contact met ons op via email. Wil je op de hoogte blijven van de laatste tips & tricks? Schrijf je dan in voor onze nieuwsbrief.