Tableau ArchiStructuurdiagram en servercomponenten
โก Slimme samenvatting
Tableau-server ArchiTecture verbindt desktop-, web- en mobiele clients met meerdere datalagen via een gelaagd ontwerp met meerdere processen. Deze pagina beschrijft elke laag, het aanvraagpad door de server, de afzonderlijke achtergrondprocessen en de verschillen tussen implementaties met รฉรฉn en meerdere knooppunten.

Tableau Server is zo ontworpen dat het meerdere datalagen met elkaar verbindt. Het kan clients verbinden vanaf desktops, mobiele apparaten en webbrowsers. Tableau Desktop is een krachtig hulpmiddel voor datavisualisatie. Het is zeer betrouwbaar en veilig.
Het kan op zowel virtuele als fysieke machines draaien. Het is een systeem voor meerdere gebruikers, meerdere processen en meerdere threads.
Om zulke krachtige functies te bieden is een robuuste architectuur nodig. Laten we de Tableau Server bestuderen Archiin deze tutorial.
Tableau-server Architectuur
De verschillende lagen die in de Tableau-server worden gebruikt, worden weergegeven in het volgende architectuurdiagram

Als je het diagram van onder naar boven leest, zie je dat de databronnen zich aan de basis bevinden, de connectoren daarboven, de servercomponenten in het midden en de clients bovenaan. Elk van de vijf onderstaande secties beslaat een van deze lagen.
Laten we de verschillende componenten van Tableau bestuderen Architectuur
Gegevensserver
Het primaire onderdeel van Tableau ArchiDe structuur verwijst naar de gegevensbronnen waarmee deze verbinding kan maken. Merk op dat deze eerste laag betrekking heeft op de gehele gegevenslaag; de gegevensserver. De functionaliteit die binnen Tableau Server draait, wordt hieronder apart beschreven onder 'Onderdelen van Tableau Server'.
Tableau kan verbinding maken met meerdere gegevensbronnen. Deze gegevensbronnen kunnen zich lokaal of op afstand bevinden. Het kan tegelijkertijd verbinding maken met een database, een Excel-bestand en een webapplicatie. Tableau kan gegevens uit heterogene omgevingen verbinden. Het kan gegevens uit meerdere gegevensbronnen combineren. Het kan ook relaties leggen tussen verschillende soorten gegevensbronnen.
Gegevensconnectoren
De Data Connectors bieden een interface om externe databronnen te verbinden met Tableau Data Server.
Tableau heeft een ingebouwde ODBC/SQL-connector. Deze ODBC-connector kan verbinding maken met elke database zonder de eigen connector te hoeven gebruiken. Tableau biedt de mogelijkheid om zowel live als excentrische databases te selecteren.tract-gegevens. Afhankelijk van het gebruik kan er gemakkelijk tussen worden geschakeld.tracTed en live data.
- Live verbinding of realtime gegevens: Tableau kan verbinding maken met realtime data door rechtstreeks te linken naar de externe database. Het maakt gebruik van de infrastructuur van het bestaande databasesysteem door dynamische MDX-expressies (Multidimensional Expressions) te verzenden. SQL verklaringen. Deze functie maakt het mogelijk om live data te koppelen aan Tableau in plaats van de data te importeren. Dit maakt de investering van een organisatie in een snel en geoptimaliseerd databasesysteem de moeite waard. In veel bedrijven is de database enorm groot en wordt deze periodiek bijgewerkt. In die gevallen fungeert Tableau als een front-end visualisatietool door verbinding te maken met de live data.
- Extracted of gegevens in het geheugen: Tableau biedt een optie om...tracDe gegevens uit externe gegevensbronnen kunnen we gebruiken. We kunnen een lokale kopie maken in de vorm van een Tableau-bestand.tract-bestand, dat gebruikmaakt van het .hyper-formaat dat door de Hyper-data-engine wordt geproduceerd. Het kan extracMet รฉรฉn klik importeert Tableau miljoenen records in die engine. De data-engine van Tableau gebruikt zowel geheugen als schijf om gegevens op te slaan en te verwerken. Met behulp van filters kan Tableau gegevens exporteren.tracEen paar records uit een enorme dataset selecteren. Dit verbetert de prestaties, vooral bij het werken met zeer grote datasets. Bijvoorbeeld:tracDoor gegevens in het geheugen op te slaan, kunnen gebruikers de gegevens offline bekijken, zonder verbinding te hoeven maken met de gegevensbron.
Componenten van Tableau Server
De verschillende componenten die aanwezig zijn in een Tableau-server zijn:
- Applicatie server
- VizQL-server
- Gegevensserver
A) Applicatieserver:
De applicatieserver wordt gebruikt om de authenticaties en autorisaties te verzorgen. Het regelt het beheer en de toestemming voor web- en mobiele interfaces. Het garandeert de veiligheid door elke sessie-id op Tableau Server vast te leggen. De beheerder kan de standaardtime-out van de sessie op de server configureren.
B) VizQL-server:
VizQL Server wordt gebruikt om de query's van de gegevensbron om te zetten in visualisaties. Zodra het clientverzoek is doorgestuurd naar QL Server, wordt de query uitgevoerd. VizQL-proces, het stuurt de zoekopdracht rechtstreeks naar de gegevensbron en haalt informatie op in de vorm van afbeeldingen. Deze afbeelding of visualisatie wordt aan de gebruiker gepresenteerd. De Tableau-server creรซert een visualisatiecache om de laadtijd te verkorten. De cache kan worden gedeeld met veel gebruikers die toestemming hebben om de visualisatie te bekijken.
C) Gegevensserver:
Dataserver wordt gebruikt om de gegevens uit externe gegevensbronnen te beheren en op te slaan. Het is een centraal gegevensbeheersysteem. Het biedt metadatabeheer, gegevensbeveiliging, gegevensopslag, dataverbinding en de vereisten van de stuurprogramma's. Het slaat de relevante details van de dataset op, zoals metadata, berekende velden, sets, groepen en parameters. De gegevensbron kan bijvoorbeeldtract data maakt ook live verbindingen met externe databronnen.
Poort
De gateway kanaliseert de verzoeken van gebruikers naar de Tableau-componenten. Wanneer een client een verzoek indient, wordt dit doorgestuurd naar een externe load balancer voor verwerking. De gateway fungeert als een distributeur van processen naar de verschillende componenten. In geval van afwezigheid van een externe load balancer, fungeert de gateway ook als load balancer. Bij een configuratie met รฉรฉn server beheert รฉรฉn primaire server of gateway alle processen. Bij configuraties met meerdere servers fungeert รฉรฉn fysiek systeem als primaire server, terwijl de andere systemen als worker servers worden gebruikt. In een Tableau Server-omgeving kan slechts รฉรฉn machine als primaire server fungeren.
Klanten
De dashboards en visualisaties in de Tableau-server kunnen met verschillende clients worden bekeken en bewerkt. De klanten zijn Tableau Desktop, webbrowser en mobiele applicaties.
| Klanten | Milieu |
|---|---|
| Tableau Desktop | Tableau Desktop is een tool voor bedrijfsanalyse. Het helpt bij het maken, bekijken en publiceren van dashboards in Tableau Server. Gebruikers hebben toegang tot verschillende gegevensbronnen en kunnen visualisaties bouwen in Tableau Desktop. |
| Mobile | De dashboards van de server kunnen interactief worden gevisualiseerd met behulp van mobiele browsers en applicaties. De browser en applicatie kunnen worden gebruikt om de inhoud van de werkmap te bekijken en te bewerken. |
| Web | Webbrowsers zoals Google Chromesafari, Firefox en Microsoft Edge De Tableau-server wordt ondersteund. De inhoud en visualisaties in het dashboard kunnen via deze webbrowsers worden bewerkt. |
Het benoemen van de lagen maakt duidelijk wat er bestaat. In het volgende gedeelte wordt รฉรฉn enkele aanvraag door al deze lagen heen gevolgd, waardoor de volgorde concreet wordt.
Hoe een Tableau Server-verzoek van begin tot eind verloopt
Het openen van een gepubliceerd dashboard zet een reeks overdrachten in gang tussen de hierboven beschreven componenten. Door deze keten te volgen, kunt u het snelst achterhalen waarom een โโweergave traag aanvoelt en welk proces u als eerste moet onderzoeken.
- Het verzoek komt aan bij de gateway. Een browser, mobiele app of Tableau Desktop-client verzendt een HTTPS-verzoek. Als er een externe load balancer aanwezig is, kiest deze een knooppunt; anders vervult de gateway op het primaire knooppunt die rol zelf.
- De applicatieserver controleert de identiteit en de machtigingen. Het verzoek wordt doorgegeven aan het applicatieserverproces, dat de sessie valideert, bevestigt dat de gebruiker rechten heeft voor het werkblad en de sessie-ID vastlegt.
- De cacheserver wordt geraadpleegd. Voordat een query wordt uitgevoerd, controleert de server de gedeelde querycache. Als er een overeenkomst wordt gevonden, wordt de visualisatie direct weergegeven en worden de resterende stappen overgeslagen. Daarom hoeft de tweede persoon die een dashboard opent meestal veel minder lang te wachten dan de eerste.
- VizQL bouwt de query op. Bij een cache-miss, de VizHet QL-proces vertaalt de visuele specificatie die in het werkblad is opgeslagen naar een query voor de onderliggende bron.
- De dataserver lost het verbindingsprobleem op. Als de werkmap gebruikmaakt van een gepubliceerde gegevensbron, levert de gegevensserver de verbindingsgegevens, berekende velden, groepen en sets. Een liveverbinding stuurt de query door naar de externe database; een externe verbinding daarentegen stuurt de query door naar de externe database.tracHet antwoord wordt gegeven door de Hyper-data-engine met behulp van het .hyper-bestand dat in de bestandsopslag is opgeslagen.
- De resultaten worden weergegeven en geretourneerd. VizQL zet de resultaatset om in de markeringen, assen en labels van de weergave, stuurt de weergegeven uitvoer terug via de gateway en schrijft het resultaat naar de cache voor de volgende gebruiker.
Twee punten in die keten verdienen aandacht bij het afstellen. Ten eerste, een extracDoor lokaal te antwoorden, wordt een communicatie met een drukke productiedatabase volledig vermeden. Ten tweede zet een goed gevulde cache de meeste herhaalde weergaven om in รฉรฉn enkele zoekopdracht, waardoor het herstarten van de server of het publiceren van een nieuwe werkmapversie dit voordeel tenietdoet totdat de cache weer is gevuld.
Een aantal van de hierboven genoemde processen komt niet voor in het gelaagde diagram, en de onderstaande tabel geeft deze processen weer.
Processtypen in Tableau Server en wat elk proces doet
Een Tableau Server-installatie voert een aantal benoemde processen naast elkaar uit. Beheerders zien deze processen afzonderlijk op de statuspagina van Tableau Services Manager, waardoor het herkennen van elk proces het oplossen van problemen aanzienlijk versnelt.
| Proces | Verantwoordelijkheid |
|---|---|
| Poort | Ontvangt alle binnenkomende verzoeken en stuurt deze door naar het juiste knooppunt en proces. |
| Applicatie server | Regelt aanmelding, machtigingen, zoeken, browsen en de beheerdersinterface. |
| VizQL-server | Laadt en rendert weergaven door de visuele specificatie om te zetten in query's. |
| Gegevensserver | Beheert gepubliceerde gegevensbronnen, metadata en verbindingsgegevens. |
| Data-engine (Hyper) | Maakt en voert query's uit op .hyper extracts wordt op het knooppunt bewaard. |
| Achtergrondinformatie | Voert geplande werkzaamheden uit: bijv.tract vernieuwt, abonnementen, meldingen en voert workflows uit. |
| bewaarplaats | A PostgreSQL Database met metadata van werkmappen, gebruikers, machtigingen en gebruiksgeschiedenis. |
| Bestandsopslag | Winkels extract-bestanden en repliceert ze naar alle knooppunten die ze nodig hebben. |
| Cache-server | Een gedeelde in-memory querycache die wordt gebruikt door VizQL, Data Server en Backgrounder. |
| Cluster Controller | Het systeem bewaakt de processtatus en activeert failover, bijvoorbeeld door een passieve repository te promoveren. |
| Coรถrdinatiedienst | Zorgt ervoor dat de configuratie en topologie consistent blijven op alle knooppunten in het cluster. |
Achtergrondinformatie verdient bijzondere aandacht, omdat dit het proces is dat het vaakst te weinig capaciteit heeft.tracE-mails met updates en abonnementsverzoeken concurreren om dezelfde werknemers, wat resulteert in een ochtend vol overlappingen.ping De planning loopt vertraging op.
Tableau Server-implementatie met รฉรฉn knooppunt versus implementatie met meerdere knooppunten
Elk van de bovenstaande processen kan op รฉรฉn machine draaien, en voor een klein team is dat de gebruikelijke opstelling. Een installatie met รฉรฉn node is eenvoudig te patchen en te monitoren, maar biedt geen redundantie: als de machine uitvalt, vallen alle dashboards uit, en zware belasting kan problemen veroorzaken.tracHet vernieuwen van content concurreert direct met het aantal mensen dat de content bekijkt.
Een multi-node cluster verdeelt dezelfde processen over twee of meer machines die รฉรฉn repository en รฉรฉn topologie delen. Rollen worden dan doelbewust toegewezen in plaats van standaard.
- Scheid de achtergrond. Verhuizen extracDoor de processen te vernieuwen op een speciaal daarvoor bestemd knooppunt, worden nachtelijke taken die interactieve weergaven vertragen, voorkomen.
- Dupliceer de gateway. Door een gateway op meerdere knooppunten te plaatsen, achter een externe load balancer, wordt het risico op storingen bij รฉรฉn enkel toegangspunt weggenomen.
- Voeg een passieve repository toe. Een tweede repository-instantie maakt het mogelijk om Cluster De controller moet automatisch overschakelen naar een andere server als de actieve kopie niet meer reageert.
- Scale VizQL voor gelijktijdigheid. Meer VizQL-instanties bedienen meer gelijktijdige kijkers, wat doorgaans het knelpunt vormt zodra het gebruik toeneemt.
- Houd de bestandsopslag dicht bij de data-engine. Knooppunten die ex bevragentracts heeft een lokale kopie nodig, dus deze twee bevinden zich normaal gesproken op dezelfde locatie.
De praktische aanleiding voor de overstap naar meerdere nodes is zelden het ruwe datavolume. Meestal is het een zakelijke vereiste voor hoge beschikbaarheid of een vernieuwingsperiode die niet langer binnen de rustige uren past.
