Cursus
Net als bij andere business intelligence-tools of -software worden de mooie visualisaties aan de oppervlakte van Tableau, zoals deze watervalgrafiek, mogelijk gemaakt door robuuste en geïntegreerde processen achter de schermen. De manier waarop deze processen zijn opgebouwd is wat we bedoelen met de architectuur van Tableau en vormt het onderwerp van deze uitgebreide gids.
Inzicht in de architectuur van Tableau is een essentieel onderdeel van het werk voor serverbeheerders en data-architecten. Maar ook data-analisten profiteren van een beter begrip van de architectuur van Tableau. Zo begrijpen ze de mogelijkheden en beperkingen van de tool beter. Bovendien helpt kennis van de architectuuronderdelen hen om bronnen van fouten beter te herkennen en te interpreteren wat ze betekenen.
Overzicht van de architectuur van Tableau
Tableau biedt meer dan 10 verschillende producten en dat aantal groeit. Deze producten zijn te verdelen in twee hoofdcategorieën. De eerste categorie omvat producten gericht op ontwikkeling, waaronder Tableau Server, terwijl de tweede categorie bestaat uit producten gericht op publicatie, waaronder Tableau Desktop.
Sommige van deze producten hebben vergelijkbare interfaces en overlappende functionaliteiten, maar elk heeft zijn eigen architectuur. Hoewel ze allemaal in één familie zijn geïntegreerd, zijn sommige ontworpen om nauwer met elkaar samen te werken dan andere. Tableau Desktop en Tableau Server zijn daar een goed voorbeeld van: wat je in Tableau Desktop maakt, wordt doorgegeven aan Tableau Server, waar het kan worden gepubliceerd, opgeslagen, beheerd en gedeeld voor samenwerking.
Belangrijke onderdelen van de architectuur van Tableau Desktop
Als dataprofessional die rapporten ontwikkelt, is Tableau Desktop waarschijnlijk het gezicht van Tableau waarmee je het meest vertrouwd bent. Het is het startpunt dat je op je computer installeert en waar je verbinding maakt met databronnen en visualisaties maakt.
De architectuur van Tableau Desktop is relatief eenvoudig. Er zijn drie hoofdonderdelen of lagen.
- Datalaag: De datalaag is verantwoordelijk voor het verbinden met en beheren van databronnen.
- Berekeningslaag: De berekeningslaag behandelt datatransformatie en berekeningen.
- Visualisatielaag: De visualisatielaag maakt en toont interactieve grafieken en diagrammen.
Architectuur van Tableau Desktop
Laten we elk van deze lagen in meer detail bekijken.
Datalaag
De datalaag is waar je data binnenkomt in Tableau Desktop en wordt klaargemaakt om te analyseren en te visualiseren. Hoe dit werkt hangt af van hoe je verbinding maakt met je data, want er zijn twee verbindingstypen:
- Extract-verbinding: Een extract-verbinding houdt in dat je een statische momentopname van je data maakt, die lokaal in je project wordt opgeslagen.
- Live-verbinding: Een live-verbinding bevraagt de oorspronkelijke databron in realtime telkens wanneer je met een visualisatie interacteert.
Welk verbindingstype je ook kiest, Tableau Desktop biedt 90 dataconnectoren om toegang te krijgen tot je data, waar die ook is opgeslagen, of dat nu platte bestanden, SQL-servers of cloudplatforms voor documentbeheer zijn.
De datalaag slaat ook informatie over gegevenstoegang op, zoals locatie en autorisatiegegevens, en biedt datamodelleringsmogelijkheden, zoals het aggregeren en joinen van tabellen of het wijzigen van gegevenstypen.
Berekeningslaag
Tableau heeft een krachtige berekeningsengine waarmee je aangepaste velden kunt maken om de analyses te doen die voor je visualisaties nodig zijn, of dat nu aggregatie, segmentatie, filtering, conversie van gegevenstypen of iets anders is.
Er zijn drie hoofdtypen berekeningen:
- Basisberekeningen: Met basisberekeningen kun je data manipuleren op rijniveau of op aggregatieniveau.
- Level of Detail-expressies: LOD-expressies stellen je in staat berekeningen uit te voeren met controle over het detailniveau.
- Tabelberekeningen: Met tabelberekeningen kun je aggregaties uitvoeren over de hele tabel of over een set rijen.
Visualisatielaag
De visualisatielaag is waar je je visualisaties maakt, aanpast en opmaakt. Met andere woorden: hier gebeurt het allemaal. Deze laag biedt de drie hiërarchische structuren van Tableau voor het maken van je visuals.
- Werkblad: Het werkblad is het bouwblok van alles wat je in Tableau maakt. Het is een canvas waarop je elke grafiek kunt maken, filteren en opmaken.
- Dashboard: Het dashboard is een canvas waarop je één of meer werkbladen kunt combineren en hun onderlinge interactie kunt bepalen, samen met het toevoegen van andere objecten, zoals tekst, afbeeldingen, knoppen, ingesloten webpagina's en nog veel meer.
- Story: De story is waar je meerdere dashboards kunt combineren zodat gebruikers er als één rapport doorheen kunnen navigeren.
De drie lagen van Tableau Desktop – data-, berekenings- en visualisatielaag – vormen samen een Tableau-werkmap. Je kunt de hele werkmap lokaal opslaan als een Tableau packaged workbook-bestand (.twbx) en het delen met andere teamleden om te bekijken en samen te werken.
Houd er rekening mee dat als je simpelweg een Tableau-werkmapbestand aan een collega doorstuurt, diegene Tableau Desktop geïnstalleerd moet hebben om het bestand te kunnen bekijken. Bovendien heb je dan geen beheer- of governance-mogelijkheden over het bestand. Daarom is het publiceren van je werkmap op Tableau Server een efficiëntere manier om samen te werken aan Tableau-projecten. Laten we in dit verband nu de architectuur van Tableau Server verkennen.
Belangrijke onderdelen van de architectuur van Tableau Server
Tableau Server zelf is een groep processen die samen een volledig analytisch platform vormen. Het maakt het mogelijk om rapporten en databronnen te publiceren, te beheren, te borgen, te beveiligen, te verkennen en te bewerken. Je kunt het on-premises of in een cloud naar keuze implementeren. Je organisatie is dan verantwoordelijk voor het volledige beheer en de beveiliging.
De architectuur van Tableau Server omvat minstens 18 componenten en subcomponenten, maar het exacte aantal kan veranderen omdat Tableau Server vaak wordt doorontwikkeld. In het kader van dit artikel lichten we de hoofdonderdelen toe die betrokken zijn bij het publiceren van een werkmap of het openen van een view. Concreet leggen we acht componenten uit.
- Gateway: De gateway is het toegangspunt voor gebruikersverzoeken en leidt ze door naar de juiste componenten.
- Applicatieserver: De applicatieserver beheert sessies, authenticatie en autorisatie en zorgt ervoor dat gebruikers alleen toegestane resources benaderen.
- VizQL-server: De VizQL-server vertaalt gebruikersinteracties naar query's en genereert visualisaties op basis van de data.
- Repository: De repository slaat metadata, gebruikersinformatie en configuratie-instellingen op en fungeert als de centrale database.
- Bestandsopslag: De bestandsopslag verzorgt het opslaan en ophalen van Tableau-gegevensbestanden, waaronder werkmappen en extracts.
- Data-engine: De data-engine verwerkt data door query's uit te voeren en datacomputatie te beheren voor snelle analyses.
- Dataserver: De dataserver beheert verbindingen met databronnen en optimaliseert en distribueert query's over het netwerk.
- Cache-server: De cache-server verbetert de prestaties door eerder benaderde data en visualisaties te cachen voor snellere terugkeer.
Architectuur van Tableau Server
Gateway
De gateway is als de receptionist van Tableau Server. Wanneer een client met een verzoek bij Tableau Server aanklopt, stuurt Tableau het verzoek door naar de relevante componenten om de taak uit te voeren. Met client kan hier worden bedoeld: een gebruiker van Tableau Desktop die zijn rapport wil publiceren of een kijker die wil inloggen en een rapport wil openen.
Later in het proces zorgt de gateway ervoor dat de juiste respons naar de client teruggaat, of dat nu een aangevraagde view is, een query, of gewoon een bericht dat het publiceren is geslaagd.
Applicatieserver
De applicatieserver is de rechterhand van de gateway. Hij neemt het verzoek van de gateway over en verwerkt het zodat het klaar is om de kant op te gaan die de gateway heeft aangegeven.
Als een gebruiker bijvoorbeeld een werkmap wil publiceren, splitst de applicatieserver deze op in twee bestanden: een XML-bestand dat alle informatie over de visuals in de werkmap bevat en wordt opgeslagen in de repository, en een door Tableau ontwikkeld bestand genaamd Hyper, dat de brondata bevat om op te slaan in de bestandsopslag.
Wanneer een kijker toegang wil tot de server, controleert de applicatieserver eerst of de gebruiker geregistreerd is en welk toegangslevel hij of zij heeft door de gebruikerslogs in de repository te raadplegen. Na bevestiging hiervan bereidt hij de juiste gebruikersinterface voor die specifieke gebruiker voor.
VizQL-server
De VizQL-server is een cool en uniek onderdeel van Tableau Server, en is ook ontwikkeld door een paar Tableau-oprichters. De naam staat voor Visual Query Language en fungeert als een vertaler tussen de SQL-taal van databases en de visuele taal van visualisaties.
Wanneer een client bijvoorbeeld met een view interacteert, bevraagt de VizQL-server de databron via de data-engine en de dataserver. Ook haalt hij de benodigde metadata op uit de repository. Zodra data en metadata zijn samengebracht, stuurt de VizQL-server de visual naar de gateway, die deze vervolgens aan de gebruiker levert.
Repository
De repository is het centrale knooppunt voor het opslaan en beheren van metadata die verband houdt met Tableau Server. De data die hier wordt opgeslagen omvat de gepubliceerde XML-bestanden van werkmappen en de gebruikerslogs, met gebruikersaccounts, rollen en machtigingen. Ook worden er gegevens opgeslagen over het gebruik van de assets op de server, zoals het aantal weergaven en de meest gebruikte databronnen.
De databronnen die in de werkmappen worden gebruikt, zijn het enige type data dat niet in de repository wordt opgeslagen. Dit type data wordt opgeslagen in de bestandsopslag, waar we hierna op ingaan.
Bestandsopslag
De bestandsopslag beheert de opslag van de geëxtraheerde databronnen in Tableau Server. In bepaalde omgevingen kan hij ook kopieën van de extracts maken en beheren om ervoor te zorgen dat de brondata opvraagbaar blijft in geval van technische storingen.
Data-engine
Dit is een database-engine die speciaal is ontworpen voor het verwerken van geëxtraheerde databronnen die in de bestandsopslag van Tableau Server zijn opgeslagen. De data-engine transformeert en optimaliseert deze geëxtraheerde databronnen met Hyper voor efficiënte opslag in de bestandsopslag.
De data-engine fungeert ook als interface voor het bevragen van de bestandsopslag voor elk doel, inclusief het bekijken, bijwerken en vernieuwen van data-extracts of views die daarop zijn gebaseerd.
Dataserver
Als een gebruiker een view met geëxtraheerde databronnen wil openen, stuurt de dataserver een query naar een component genaamd de data-engine, die op zijn beurt de databron opvraagt uit de bestandsopslag, waar de kopie van de data zich bevindt.
Als de view daarentegen live databronnen heeft, roept de dataserver dataconnectoren aan om de data op te vragen uit de externe bron.
Cache-server
Zoals de naam al doet vermoeden, slaat de cache-server een in-memory cache op voor eerder bekeken views en query's om toekomstige resultaten te versnellen door gecachte resultaten te leveren.
Aandachtspunten bij het implementeren van Tableau in je organisatie
Bij de implementatie van Tableau in je organisatie is het eerste om te weten dat Tableau Server niet je enige optie is om Tableau-views en data-assets te publiceren en eraan samen te werken. De andere optie om te overwegen is Tableau Cloud.
Terwijl Tableau Server volledig door je organisatie moet worden beheerd en beveiligd, is Tableau Cloud een platform met een vergelijkbare interface en functionaliteit dat volledig door Tableau zelf wordt gehost, beheerd en beveiligd.
Als je organisatie dus geen specifieke beveiligings- en IT-infrastructuurbehoeften heeft, of niet de benodigde mensen en technologie in huis heeft om zelfstandig een server te beheren, dan is Tableau Cloud een betere optie. Zo niet, dan is het tijd om de mouwen op te stropen en voor Tableau Server te gaan.
Vanuit IT-perspectief heeft Tableau een Blueprint-document en een Enterprise Architecture Survey met een volledige lijst aan overwegingen die organisaties moeten maken voordat ze Tableau implementeren. Maar naast het betrekken van IT, zijn dit enkele algemene aandachtspunten waar je vanuit governance-oogpunt aan kunt denken.
- Governancestrategie: Het is cruciaal om vooraf duidelijke governancebeleid te hebben om te bepalen of en hoe die beleidsregels technisch kunnen worden toegepast wanneer je begint met het implementeren en beheren van Tableau Server.
- Databronnen: Het volume en de locatie van je databronnen zijn belangrijk om in kaart te brengen voordat je Tableau Server implementeert, omdat dit mede bepalend is voor de componenten en het aantal nodes dat je nodig hebt.
- Gebruikerstoegang: Het aantal, de frequentie en de locatie van gebruikers zijn belangrijk om vóór de implementatie te overwegen. Dit beïnvloedt de componenten en het aantal nodes dat je organisatie nodig heeft, naast het bepalen van het implementatietype.
- Implementatietype: Bepaal of je Tableau Server on-premises moet implementeren, hetzij op servers, in een privé-datacenter of in een cloudomgeving, privé of publiek. On-premises geeft meer controle en beheermogelijkheden, terwijl cloud schaalbaarheid en externe toegankelijkheid biedt.
- Hardwarebronnen: Als je on-premises wilt implementeren, evalueer dan je technische capaciteiten op het gebied van CPU, RAM, opslag en internetbandbreedte, om te zien of die aansluiten bij de vereisten van Tableau gezien je verwachte en geprojecteerde serverbelasting.
- Training en support: Zijn de medewerkers in je organisatie klaar om Tableau te adopteren in de verschillende fasen van het data-analyticsproces? Zijn ze klaar om Tableau te gebruiken voor data-engineering, analyse, beheer en selfservice? Heb je serverbeheerders met ervaring in Tableau? Zo niet, dan moet je vóór de implementatie tijd investeren in training en voorbereiding.
Meer leren over Tableau
In dit artikel hebben we de architectuur verkend van de meest gebruikte Tableau-producten, Tableau Desktop en Tableau Server. Ook hebben we stilgestaan bij aandachtspunten bij de implementatie van Tableau op organisatieniveau.
Wil je meer begrijpen over Tableau Server, speel dan eens met dit interactieve dashboard van Tableau. Je kunt ook deze presentatie van het Tableau-team bekijken.
Als je net begint met Tableau, hebben we een cursus Introductie tot Tableau en een hele track voor Tableau Fundamentals. Heb je al meer ervaring, probeer dan zeker de track Data Analyst in Tableau, die je voorbereidt op de Tableau Certified Data Analyst-certificering.

Islam is data consultant bij The KPI Institute. Met een achtergrond in de journalistiek heeft Islam brede interesses, waaronder schrijven, filosofie, media, technologie en cultuur.
