Vortragsfolien Tableau Server für IT

Werbung
Tableau Server für IT-Admins
Architektur und Integration
Dr. Konstantin Greger
Associate Sales Consultant
Tableau Software (DACH)
Starting a movement…
TED Talk von Derek Sivers
Transformation geschieht jetzt
Menschen
Prozesse
01000100
01000001
01010100
01000001
Daten
Technologie
Self Service, der skaliert
1.
2.
3.
4.
5.
6.
Governance
Sicherheit
Skalierbarkeit
Verfügbarkeit
Monitoring
Management
Die Testversion
Sie haben die Server Testversion heruntergeladen, die Installationsroutine gestartet, ein
paarmal “Next” geklickt…
Gratuliere – Sie haben einenTableau Server!
Und jetzt …?
Von der Testversion
zur Enterprise-Plattform
Monitoring, Management, Governance,
Scalability, Availability, Security
Application / Services
Infrastructure Systems
Network, Storage,
APIs / Extensibility / Integration
Service Desk (ITIL)
Tableau Server
Data
SQL
Tableau Server
Data
Tableau Server
Clients
Browser/Mobile
SQL
Tableau Desktop
Command Line
Tools
Data
Tableau Server
Clients
Browser/Mobile
SQL
Tableau Desktop
Command Line
Tools
Data
Tableau Server
Clients
Browser/Mobile
SQL
Tableau Desktop
Command Line
Tools
Data
Tableau Server
Clients
Browser/Mobile
Tableau Desktop
SQL
Command Line
Tools
Base Install
Responsible for monitoring various components, detecting
failures, and executing failover when needed.
In distributed installations, responsible for ensuring there
is a quorum for making decisions during failover.
Manages the licensing of Tableau Server through periodic
compliance checks.
Data
Clients
Tableau Server
Browser/Mobile
Gateway
SQL
Tableau Desktop
Command Line
Tools
Base Install
Receives incoming client requests and directs them to the
appropriate service for action.
Acts as a load balancer, routing traffic across multiple
service instances.
Data
Clients
Tableau Server
Browser/Mobile
Gateway
SQL
Tableau Desktop
Command Line
Tools
Repository
Stores Tableau Server metadata: users, group
assignments, permissions, projects, etc. Also stores flat
files (TWB, TDS). Responds to queries from other
services when they need metadata.
Holds audit data for performance reporting.
Has a SQL interface so external applications can connect
(read-only).
App Server
Base Install
Includes two processes – one that renders the web portal
(vizportal) and one that handles REST APIs (wgserver).
Processes logins, content searches, content and
permission management, uploads/downloads and other
tasks not related to visualizing data.
Data
Clients
Tableau Server
Browser/Mobile
Gateway
SQL
Tableau Desktop
Command Line
Tools
Repository
Search & Browse
Base Install
Handles fast search, filter, retrieval , and display of
content metadata on the server.
App Server
Data
Clients
Tableau Server
Browser/Mobile
Gateway
SQL
Tableau Desktop
Command Line
Tools
Repository
Search & Browse
Base Install
If used, verifies authentication in conjunction with the
App Server and Repository.
Active Directory/SAML
App Server
Data
Data Source Drivers
Browser/Mobile
Gateway
SQL
Clients
Tableau Server
Tableau Desktop
Command Line
Tools
Repository
Drivers need to be installed for each data source (32-bit
or 64-bit, depending on installed version of Tableau
Server).
Search & Browse
Base Install
Downloads and more details at
http://www.tableau.com/support/drivers
Active Directory/SAML
App Server
Data
Data Source Drivers
Browser/Mobile
Gateway
SQL
Clients
Tableau Server
Cache Server
Tableau Desktop
VizQL Server
Command Line
Tools
Repository
The query cache used to be local to each service but now
it is distributed and shared across the server cluster.
The cache speeds user experience across many
scenarios. VizQL Server, Backgrounder, and Data Server
make requests to the Cache Server before hitting the
data source.
Search & Browse
App Server
Base Install
Loads and renders views, computes and executes
queries.
Active Directory/SAML
Data
File Store
Data Source Drivers
Data Engine
Browser/Mobile
Gateway
SQL
Clients
Tableau Server
Cache Server
Tableau Desktop
VizQL Server
Command Line
Tools
Repository
Search & Browse
App Server
Base Install
Stores and services queries to data extracts (TDE).
Installed with the Data Engine. Automatically replicates
extracts across data engine nodes.
Invoked when a data extract is published or viewed.
Active Directory/SAML
Data
File Store
Data Engine
Browser/Mobile
Backgrounder
Gateway
Data Source Drivers
SQL
Clients
Tableau Server
Cache Server
Tableau Desktop
VizQL Server
Command Line
Tools
Repository
Runs maintenance tasks to ensure Tableau Server is
running efficiently.
Search & Browse
Base Install
When the Data Engine is used, also handles scheduled
data refreshes.
Handles tasks initiated via TABCMD.
Active Directory/SAML
App Server
Data
Clients
Tableau Server
Data Server
File Store
Browser/Mobile
Backgrounder
Gateway
Data Source Drivers
SQL
Data Engine
Cache Server
Tableau Desktop
VizQL Server
Command Line
Tools
Repository
Search & Browse
Base Install
Active Directory/SAML
App Server
Invoked when a data source is published via Tableau
Desktop.
Serves as proxy for queries to the actual data source (file,
DB server or extract host). Enables centralized metadata
management for data sources and an additional layer of
access control. Allows multiple workbooks to use the
same data extract. Allows centralized driver deployment.
Data
Clients
Tableau Server
Data Server
File Store
Browser/Mobile
Backgrounder
Gateway
Data Source Drivers
SQL
Data Engine
Cache Server
Tableau Desktop
VizQL Server
Command Line
Tools
Repository
Search & Browse
Base Install
Active Directory/SAML
App Server
Deployment Architekturen
Trial Deployment / Prototyping
• Eine einzelne Maschine, Default-Installation
• Nutzung der mitgelieferten Beispiel-Arbeitsmappen
• Publizieren erster selbstgemachter Arbeitsmappen und Dashboards
Wir raten vom Load Testing auf Trial Deployments ab
Higher Risk Deployment
Klein und einfach:
Produktions Deployment
•
Primary Node
Base Install
Gateway
*
Application Server
**
VizQL Server
**
Cache Server
**
Data Server
**
Data Engine
**
File Store
**
Backgrounder
*
Repository
*
Search
*
1x8 Core Maschine
–
–
–
Gateway, Repository, Application Server,
Data Engine sind Single Points of Failure
auf Single Node Maschinen.
Hinzufügen weiterer Serverprozesse zu
Lasten der Performance und Skalierung mit
mehr Anwendern.
Single Machine Deployment
•
Abzuwägen:
–
–
Backgrounder ist CPU und IOintensive.
Kann andere Serverprozesse bei
steigender Auslastung ausbremsen.
1x8 Core Maschine
8GB RAM pro Core
5MBPS IOPS oder mehr
–
–
Ein Knoten ist einfach zu verwalten
und zu administrieren.
Gut geeignet für kleine Teams mit
wenig oder gar keinem Support durch
die IT.
Hardware und Software sind Single
Points of Failure, dadurch höheres
Risiko von Ausfallzeiten.
Wahrscheinlichkeit von
Resourcenkonflikten (RAM, IO) steigt
mit zunehmender Nutzung.
Lower Risk Deployment, Increased
Availability
Mittelgroßes Deployment
Base Install
Primary Node
• Multi-Machine Deployment
Worker Node
*
Gateway
*
Application Server
*
Application Server
*
VizQL Server
**
Cache Server
****
Data Server
**
Data Engine
*
File Store
*
Backgrounder
*
Repository
*
Search
*
1x8 Core Maschine
* Setzt ELB voraus
Base Install
Gateway
VizQL Server
**
Cache Server
****
Data Server
**
1x8 Core Maschine
Zusätzliches Gateway*
reduziert Risiko.
Zusätzlicher Worker bietet
RAM, IO an.
Repository bleibt aber
Single Point of Failure
Backgrounder kann
arbeiten, ohne Repository,
VizQL und Data Engine
Resourcen streitig zu
machen.
– 2x8 Core Maschinen
• Abzuwägen:
– Geringe Zunahme an Komplexität
für Firmen/Teams ohne IT-Support.
– Verbesserte Verfügbarkeit (auf
Prozessebene) mit zwei
Maschinen.
– Repository ist immer noch ein
Single Point of Failure.
– Skalierbar bis zu gewissem Grad,
Konkurrenz um Resourcen (RAM,
IO) steigt unter Last.
Extrakt-lastiges Produktions Deployment
501-1000 Users
Worker Node 1
Backgrounder
(N to 2N)
****
1x8Physical
Core or VM
1x8 Core
64GB + 4GB = 68 GB RAM
2 zusätzliche Backgrounders für
höhere Exktrakt-Performance
1 zusätzlicher Worker
2 zusätzliche VizQL Server
2 zusätzliche Cache Server
2 zusätzliche Data Engines
Base Install
Base
Install
Gateway
Worker Node 2
Gateway
*
Gateway
*
Application Server
*
Application Server
*
VizQL Server
**
VizQL Server
****
Cache Server
**
Cache Server
****
Data Server
**
Data Engine
**
File Store
*
Repository (active)
*
Search
*
1x8 Core
Base Install
Primary Node
Data Server
**
Data Engine
**
File Store
*
Search
*
1x8 Core
Eine Enterprise Deployment Architektur
Firewall
Policy
Server
Client
SSO
Shadow Sync
Reverse
Proxy
Maps
Untrusted Zone
(Internet)
Public
DMZ
App
Zone
Database
DB Zone
Intranet Zone
HTTP(S) Server
Primary
Cluster Controller
Laden einer
Visualisierung
Coordination
Search & Browse
Licensing
File Store
VizPortal
Search & Browse
Data Engine
File Store
VizQL Server
Cluster Controller
Coordination
HTTP(S) Server
Data Engine
Coordination
Worker 3
Search & Browse
Cluster Controller
HTTP(S) Server
Coordination
Worker 2
Cluster Controller
HTTP(S) Server
Worker 1
Gateway
File Store
Backgrounder
Backgrounder
Active Repository
Passive Repository
Gateway, etc.
Gateway, etc.
Benutzer-Authentifizierung
SAML
Kerberos
Row Level Security - Kerberos
A
B
Tableau Server Skalierbarkeit
Skalierbarkeit
Die Tableau-Architektur ist auf Skalierbarkeit ausgelegt
Scale up
Scale out
Analyse-Frequenz für hilfreiche Entscheidungen
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
Analyse-Frequenz für hilfreiche Entscheidungen
Niedrig
(Tage)
1.
Beispiele:
Hypotheken-Inventar
Traditionelle Business Intelligence
Niedrig
(Tage)
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
Analyse-Frequenz für hilfreiche Entscheidungen
5.
Moderat
(Stunden)
Niedrig
(Tage)
Beispiele:
Patientenkapazität im Krankenhaus
Händler-Management
1.
Beispiele:
Hypotheken-Inventar
Traditionelle Business Intelligence
Niedrig
(Tage)
Moderat
(Stunden)
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
Analyse-Frequenz für hilfreiche Entscheidungen
Hoch
(Sekunden)
9.
Beispiele:
Monitoring in der Luftverkehrskontrolle
Ausführung von FinanzhandelsOperationen
5.
Moderat
(Stunden)
Niedrig
(Tage)
Beispiele:
Patientenkapazität im Krankenhaus
Händler-Management
1.
Beispiele:
Hypotheken-Inventar
Traditionelle Business Intelligence
Niedrig
(Tage)
Moderat
(Stunden)
Hoch
(Live)
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
Analyse-Frequenz für hilfreiche Entscheidungen
Hoch
(Sekunden)
7.
8.
9.
Beispiele:
WWW Data Exploration
Tableau Public (USPräsidentenwahl) 30T Aufrufe/h
Beispiele:
Sales-Quoten Dashboards
Beispiele:
Monitoring in der Luftverkehrskontrolle
Ausführung von FinanzhandelsOperationen
Moderat
(Stunden)
4.
5.
6.
Beispiele:
Lagerbestandsanalysen
Kundenanalysen für
Versicherungen
Marketing (Zielgruppenanalyse)
Beispiele:
Patientenkapazität im Krankenhaus
Händler-Management
Beispiele:
Dashboards zur Eskalation von
Supportfällen
Finance Portfolio Dashboards
Betrugsanalysen
Niedrig
(Tage)
1.
2.
3.
Beispiele:
Hypotheken-Inventar
Traditionelle Business Intelligence
Beispiele:
Who’s Hot
Tracking von Sales Leads
Beispiel:
Web-Informationen zur aktuellen
Verkehrssituation
Niedrig
(Tage)
Moderat
(Stunden)
Hoch
(Live)
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
Analyse-Frequenz für hilfreiche Entscheidungen
Hoch
(Sekunden)
7.
8.
9.
Beispiele:
WWW Data Exploration
Tableau Public (USPräsidentenwahl) 30T Aufrufe/h
Beispiele:
Sales-Quoten Dashboards
Beispiele:
Monitoring in der Luftverkehrskontrolle
Ausführung von FinanzhandelsOperationen
Moderat
(Stunden)
4.
Niedrig
(Tage)
1.
Hohe bis moderate
Nutzung externer
5.
Query Caches
Beispiele:
Lagerbestandsanalysen
Kundenanalysen für
Versicherungen
Marketing (Zielgruppenanalyse)
Beispiele:
Patientenkapazität im Krankenhaus
Händler-Management
6.
Beispiele:
Dashboards zur Eskalation von
Supportfällen
Finance Portfolio Dashboards
Betrugsanalysen
2.
3.
Niedrige bis moderate
Nutzung
von
Query
Beispiele:
Beispiel: Caches
Beispiele:
Hypotheken-Inventar
Traditionelle Business Intelligence
Who’s Hot
Tracking von Sales Leads
Web-Informationen zur aktuellen
Verkehrssituation
Niedrig
(Tage)
Moderat
(Stunden)
Hoch
(Live)
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
7.
8.
9.
Beispiele:
WWW Data Exploration
Tableau Public (USPräsidentenwahl) 30T Aufrufe/h
Beispiele:
Sales-Quoten Dashboards
Beispiele:
Monitoring in der Luftverkehrskontrolle
Ausführung von FinanzhandelsOperationen
Moderat
(Stunden)
4.
5.
6.
Beispiele:
Lagerbestandsanalysen
Kundenanalysen für
Versicherungen
Marketing (Zielgruppenanalyse)
Beispiele:
Patientenkapazität im Krankenhaus
Händler-Management
Beispiele:
Dashboards zur Eskalation von
Supportfällen
Finance Portfolio Dashboards
Betrugsanalysen
Niedrig
(Tage)
1.
2.
3.
Beispiele:
Hypotheken-Inventar
Traditionelle Business Intelligence
Beispiele:
Who’s Hot
Tracking von Sales Leads
Beispiel:
Web-Informationen zur aktuellen
Verkehrssituation
VizQL, Data Server (publizierte DQ),
Data Engine, Cache Server
Analyse-Frequenz für hilfreiche Entscheidungen
Hoch
(Sekunden)
Niedrig
(Tage)
Backgrounder hinzufügen
Moderat
(Stunden)
Hoch
(Live)
Datenaktualisierungs-Frequenz für hilfreiche Entscheidungen
PERFORMANCE
Verbesserungen in unseren Produkten
Abfragen
(Queries)
Data Engine
allg. ServerVerbesserungen
Parallele
Abfragen
Vektorisierung
All Query
Improvements
Query Fusion
Parallele
Ausführungspläne
RenderingPerformance
Performance-Vergleich
Ein Test-Dashboard mit ca.
100 Millionen Zeilen
Flugdaten gerendert in ca.
25 Sekunden in Version 8.3
Das gleiche Dashboard
gerendert in 12 Sekunden
in Version 9.0
Connection Pools
Connection
Session
DB
Connection
Session
DB
Connection group
Connection
Connection pool
Connection
Session
Connection
Session
Session
Connection
DB
Connection group
Connection pool
Session
DB
Hochverfügbarkeit
9
9
9
9
9
35 Tage
4 Tage
8 Stunden
50 Minuten
5 Minuten
%
HTTP(S) Server
Primary
Cluster Controller
Coordination
Coordination
Search & Browse
Licensing
HTTP(S) Server
Coordination
Search & Browse
Data Engine
File Store
VizPortal
Cluster Controller
Coordination
HTTP(S) Server
Cluster Controller
Worker 2
Gateway
Worker 1
Repository
Failover
Search & Browse
Data Engine
File Store
VizQL Server
Active Repository
Passive Repository
Gateway, etc.
Gateway, etc.
Einige Anmerkungen…
Ausgelöst
durch:
Repository-Prozess
Cluster
Controller hat
stirbt
einen
Oder…
Anführer
tabadmin failoverrepository
Coordination
Services für die
[--target
<host name or
Demo
kombiniert
IPv4>|--preferred]
HTTP(S) Server
Primary
Cluster Controller
!
Coordination
Coordination
Search & Browse
Licensing
HTTP(S) Server
Coordination
Search & Browse
Data Engine
File Store
VizPortal
!
Cluster Controller
Coordination
HTTP(S) Server
Cluster Controller
Worker 2
Gateway
Worker 1
Repository
Failover
Search & Browse
Data Engine
File Store
VizQL Server
Active Repository
Passive
Repository
Passive
Repository
Active Repository
Gateway, etc.
Gateway, etc.
Fast fertig. Einige Prozesse
benötigen einige Minuten, um
wieder voll einsatzbereit zu
werden...
…Vizportal
…API Server
…VizQL Server
…Data Server
…Backgrounder
…API Search Index
Ehemals aktives Repository
wartet als neues passives.
Heterogene Enterprise-Konnektiviät
Mehr als 40 spezialisierte Konnektoren outof-the-box, zzgl. generischer ODBC-Treiber
Out-of-the-box Unterstützung für Big Data
Quellen, relationale Datenbanken, zudem
SAP HANA zertifiziert
Der Web Data Connector erlaubt es,
beliebige Web Daten in Tableau zu laden
Die Data API des Tableau SDK erlaubt es,
beliebige Daten nach Tableau zu bringen
Erweiterbarkeit mit dem Tableau SDK
• JavaScript API: Integration von Visualisierungen in Web
Applikationen
– Selektionen, Filter anwenden/entfernen
– Abfangen von Events, bidirektional
– Bauen einer eigenen Werkzeugleiste
• Extract API : Laden beliebiger Daten in Tableau
– Flexible Unterstützung mehrerer Sprachen (Java/C/C++/Python)
– Bauen von Daten Extrakten auf beliebigen Maschinen
• REST API : Server Interaktion in beliebigen Sprachen
– Automatisierung des Anlegens neuer Anwender
– Verschieben von Projekten, Workbooks
– Aktualisieren von Permissions usw.
Server Architecture Deep Dive
Prozessablauf – Web Visualization
Gateway
VizQL Server
publizierte Datenquelle (live)
Permissions/Metadaten/TWB/TWBX
Postgres
Extrakte
Data Engine
Live- Verbindung
Data Server
(Extrakte)
KundenDatenquelle
Prozessablauf – Administratives Management
Gateway
JSON -RPC
Application Server
(JAVA)
Search Service
SOLR
Postgres
Prozessablauf - REST API
Gateway
API Services
(früher: WGserver)
SOLR
Postgres
Prozessablauf – Publizierte Datenquellen
Gateway
Data Server
(Extrakte)
Permissions/Metadaten/TDS/TDSX
Publizierte Datenquelle (live)
Postgres
Extrakte
Data Engine
Live-Verbindung
OriginalDatenquelle
Prozessablauf – Backgrounder
Backgrounder
Extrakt-Aktualisierung
Postgres
Data Engine
Identisch wie Web
Visualization Flow
Data
Clients
Tableau Server
Data Server
File Store
Browser/Mobile
Backgrounder
Gateway
Data Source Drivers
SQL
Data Engine
Cache Server
Tableau Desktop
VizQL Server
Command Line
Tools
Repository
Search & Browse
Base Install
Active Directory/SAML
App Server
Eine Enterprise Deployment Architektur
Firewall
Policy
Server
Client
SSO
Shadow Sync
Reverse
Proxy
Maps
Untrusted Zone
(Internet)
Public
DMZ
App
Zone
Database
DB Zone
Intranet Zone
simpel…
… ist nicht das selbe wie simplistisch
Die Tableau Architektur unterstützt Unternehmen
Tableau Server für IT-Admins
Architektur und Integration
Herunterladen