Tablou ArchiDiagramă de structură și componente ale serverului

⚡ Rezumat inteligent

Tableau Server ArchiTecture conectează clienții desktop, web și mobili la mai multe niveluri de date printr-un design multi-proces, pe mai multe niveluri. Această pagină explică fiecare nivel, calea solicitării prin server, procesele individuale de fundal și implementarea pe un singur nod față de implementarea pe mai multe noduri.

  • 🧱 Patru straturi: Sursele de date, conectorii de date, componentele serverului și clienții se stivuiesc în această ordine, de la baza de date până la browser.
  • 🔌 Opțiune de conectare: O conexiune live interoghează sursa la fiecare încărcare a vizualizării, în timp ce o conexiune extract stochează o copie locală comprimată în motorul de date Hyper.
  • 🧭 Rolul porții de acces: Gateway-ul direcționează fiecare cerere primită și servește și ca un echilibrator de încărcare atunci când nu există un echilibrator extern.
  • 🖼️ VizTraducere QL: VizProcesul QL transformă o specificație vizuală într-o interogare sursă de date și returnează imagini redate, stocând în cache rezultatele pentru reutilizare.
  • ⚙️ Procese de susținere: Backgrounder, Repository, File Store, Cache Server și Cluster Controlerul rulează sub straturile vizibile.
  • 🏗️ Calea de scalare: Un singur nod rulează fiecare proces împreună, în timp ce clusterele cu mai multe noduri separă gateway-urile. VizQL și roluri de date pentru capacitate și failover.

Tablou ArchiDiagrama de tectură

Tableau Server este conceput astfel încât să conecteze mai multe niveluri de date. Poate conecta clienți de pe desktop, mobil și web. Tablou Desktop este un instrument robust de vizualizare a datelor. Este disponibil și securizat la un nivel ridicat.

Poate rula atât pe mașini virtuale, cât și pe mașini fizice. Este un sistem multi-utilizator, multi-proces și multi-threaded.

Furnizarea unor astfel de funcții puternice necesită o arhitectură robustă. Să studiem Tableau Server Architectură din acest tutorial.

Tableau Server Architectură

Diferitele straturi utilizate în serverul Tableau sunt prezentate în următoarea diagramă de arhitectură

Tableau Server Architectură
Tablou ArchiDiagrama de tectură

Citind diagrama de jos în sus, sursele de date se află la bază, conectorii deasupra lor, componentele serverului ocupă mijlocul, iar clienții se află în partea de sus. Fiecare dintre cele cinci secțiuni de mai jos acoperă una dintre aceste benzi.

Să studiem diferitele componente ale Tableau Architectură

Server de date

Componenta principală a tabloului Archistructură reprezintă sursele de date la care se poate conecta. Rețineți că acest prim strat se referă la nivelul de date în ansamblu; serverul de date proces care rulează în Tableau Server este descris separat în secțiunea „Componentele Tableau Server” de mai jos.

Tableau se poate conecta la mai multe surse de date. Aceste surse de date pot fi locale sau localizate la distanță. Se poate conecta simultan la o bază de date, un fișier Excel și o aplicație web. Tableau poate conecta date din medii eterogene. Poate combina date din mai multe surse de date. De asemenea, poate stabili relații între diverse tipuri de surse de date.

Conectori de date

Conectorii de date oferă o interfață pentru a conecta surse de date externe la Tableau Data Server.

Tableau are un conector ODBC/SQL încorporat. Acest conector ODBC se poate conecta la orice bază de date fără a utiliza conectorul nativ. Tableau are opțiunea de a selecta atât bazele de date live, cât și cele ex.tracdate t. Pe baza utilizării, se poate comuta cu ușurință între extracdate testate și în timp real.

  • Conexiune live sau date în timp real: Tableau se poate conecta la date în timp real prin conectarea directă la baza de date externă. Folosește infrastructura sistemului de baze de date existent prin trimiterea de MDX (expresii multidimensionale) dinamice și SQL declarații. Această funcție poate face legătura cu datele live prin intermediul Tableau, în loc să importe datele. Aceasta completează investiția făcută de o organizație într-un sistem de baze de date rapid și optimizat. În multe companii, dimensiunea bazei de date este uriașă și este actualizată periodic. În aceste cazuri, Tableau funcționează ca un instrument de vizualizare front-end prin conectarea la datele live.
  • ExtracDate stocate sau în memorie: Tableau are o opțiune de a extindetracdatele din surse de date externe. Putem face o copie locală sub forma unui exemplu Tableautracfișier t, care utilizează formatul .hyper produs de motorul de date Hyper. Poate extracmilioane de înregistrări în acel motor cu un singur clic. Motorul de date al Tableau utilizează memoria și discul împreună pentru a stoca și procesa date. Folosind filtre, Tableau poate extracpuține înregistrări dintr-un set de date imens. Acest lucru îmbunătățește performanța, în special atunci când se lucrează cu seturi de date masive. Ex.tracDatele stocate sau în memorie permit utilizatorilor să vizualizeze datele offline, fără a se conecta la sursa de date.

Componentele Tableau Server

Diferitele componente prezente într-un server Tableau sunt:

  • Server de aplicații
  • VizQL Server
  • Server de date

A) Server de aplicații:

Serverul de aplicații este utilizat pentru a furniza autentificări și autorizații. Se ocupă de administrarea și permisiunea pentru interfețele web și mobile. Acesta asigură securitatea prin înregistrarea fiecărui ID de sesiune pe Tableau Server. Administratorul poate configura timeout-ul implicit al sesiunii pe server.

B) VizQL Server:

VizServerul QL este utilizat pentru a converti interogările din sursa de date în vizualizări. Odată ce solicitarea clientului este transmisă către VizProces QL, trimite interogarea direct la sursa de date și preia informațiile sub formă de imagini. Această imagine sau vizualizare este prezentată utilizatorului. Tableau Server creează un cache de vizualizare pentru a reduce timpul de încărcare. Memoria cache poate fi partajată între mulți utilizatori care au permisiunea de a vizualiza vizualizarea.

C) Server de date:

Serverul de date este utilizat pentru a gestiona și stoca datele din surse externe de date. Este un sistem central de gestionare a datelor. Oferă gestionarea metadatelor, securitatea datelor, stocarea datelor, conexiune de date și cerințele driverului. Stochează detaliile relevante ale setului de date, cum ar fi metadatele, câmpurile calculate, seturile, grupurile și parametrii. Sursa de date ar putea extracDe asemenea, datele stabilesc conexiuni live la surse de date externe.

Poartă

Gateway-ul canalizează cererile de la utilizatori către componentele Tableau. Când clientul face o cerere, aceasta este transmisă către un echilibrator de încărcare extern pentru procesare. Gateway-ul funcționează ca un distribuitor de procese către diverse componente. În absența unui echilibrator de încărcare extern, gateway-ul funcționează și ca un echilibrator de încărcare. Pentru configurația cu un singur server, un server principal sau gateway gestionează toate procesele. Pentru configurațiile cu mai multe servere, un sistem fizic funcționează ca server principal, în timp ce celelalte sunt utilizate ca servere worker. Doar o singură mașină poate fi utilizată ca server principal în mediul Tableau Server.

Clienți

Tablourile de bord și vizualizările din Tableau Server pot fi vizualizate și editate folosind diferiți clienți. Clienții sunt Tableau Desktop, browser web și aplicații mobile.

Clienți Mediu inconjurator
Table Desktop Tableau Desktop este un instrument de analiză de afaceri. Ajută la crearea, vizualizarea și publicarea tablourilor de bord în Tableau Server. Utilizatorii pot accesa diverse surse de date și pot crea vizualizări în Tableau Desktop.
Mobil Tablourile de bord de pe server pot fi vizualizate interactiv folosind browsere și aplicații mobile. Browserul și aplicația pot fi folosite pentru a vizualiza și edita conținutul din registrul de lucru.
web Browsere web cum ar fi Google Chromesafari, Firefox și Microsoft Edge acceptă serverul Tableau. Conținutul și vizualizările din tabloul de bord pot fi editate prin intermediul acestor browsere web.

Denumirea straturilor explică ce există. Următoarea secțiune urmează unei singure solicitări prin toate acestea, astfel încât secvența devine concretă.

Cum se desfășoară o solicitare Tableau Server de la un capăt la altul

Deschiderea unui tablou de bord publicat declanșează un lanț de transferuri între componentele descrise mai sus. Urmărirea acestui lanț este cea mai rapidă modalitate de a înțelege de ce o vizualizare pare lentă și ce proces trebuie inspectat primul.

  1. Cererea ajunge la gateway. Un browser, o aplicație mobilă sau un client Tableau Desktop trimite o solicitare HTTPS. Dacă este prezent un echilibrator de sarcină extern, acesta alege un nod; în caz contrar, gateway-ul de pe nodul principal îndeplinește singur acel rol.
  2. Serverul de aplicații verifică identitatea și permisiunile. Cererea este transmisă procesului Serverului de Aplicații, care validează sesiunea, confirmă că utilizatorul are drepturi asupra registrului de lucru și înregistrează identificatorul sesiunii.
  3. Serverul Cache este consultat. Înainte de a rula orice interogare, serverul verifică memoria cache partajată pentru interogări. O intrare corespondentă înseamnă că vizualizarea returnează imediat valoarea, iar pașii rămași sunt omiși, motiv pentru care a doua persoană care deschide un tablou de bord așteaptă de obicei mult mai puțin decât prima.
  4. VizQL construiește interogarea. În cazul unei erori în memoria cache, VizProcesul QL traduce specificația vizuală stocată în registrul de lucru într-o interogare pentru sursa subiacentă.
  5. Serverul de date rezolvă conexiunea. Dacă registrul de lucru utilizează o sursă de date publicată, serverul de date furnizează detaliile conexiunii, câmpurile calculate, grupurile și seturile. O conexiune activă trimite interogarea mai departe către baza de date externă; un exemplutracMotorul de date Hyper răspunde la această solicitare folosind fișierul .hyper din Depozitul de fișiere.
  6. Rezultatele sunt redate și returnate. VizQL transformă setul de rezultate în marcaje, axe și etichete ale vizualizării, returnează rezultatul randat prin gateway și scrie rezultatul în memoria cache pentru următorul utilizator.

Două puncte din acel lanț merită atenție la reglare. În primul rând, un extracDacă se răspunde local, se evită complet o călătorie dus-întors către o bază de date de producție aglomerată. În al doilea rând, o memorie cache bine populată convertește majoritatea vizualizărilor repetate într-o singură căutare, astfel încât repornirea serverului sau publicarea unei noi versiuni a registrului de lucru elimină în mod deliberat acest avantaj până când memoria cache se încălzește din nou.

Mai multe dintre procesele menționate mai sus nu apar niciodată în diagrama stratificată, iar tabelul de mai jos le identifică.

Tipuri de procese Tableau Server și ce face fiecare

O instalare Tableau Server rulează un set de procese denumite alăturate. Administratorii le văd individual în pagina de stare Tableau Services Manager, așadar recunoașterea fiecăruia face depanarea mult mai rapidă.

Etape Responsabilitate
Poartă Primește fiecare cerere primită și o direcționează către nodul și procesul corect.
Server de aplicații Gestionează autentificarea, permisiunile, căutarea, navigarea și interfața administrativă.
VizQL Server Încarcă și randează vizualizări prin traducerea specificației vizuale în interogări.
Server de date Gestionează sursele de date publicate, metadatele și acreditările de conectare.
Motor de date (Hyper) Creează și interoghează fișiere .hyper extracts ținute pe nod.
Backgrounder Execută lucrări programate: ex.tracreîmprospătări, abonamente, alerte și rulări de fluxuri.
Repertoriu A PostgreSQL bază de date care conține metadatele registrului de lucru, utilizatorii, permisiunile și istoricul utilizării.
Magazin de fișiere Magazine extract și le replică pe nodurile care au nevoie de ele.
Server cache O memorie cache de interogări în memorie partajată utilizată de VizQL, server de date și material informativ.
Cluster operator de date cu caracter personal, Monitorizează starea de sănătate a proceselor și declanșează failover-ul, de exemplu, promovând un depozit pasiv.
Serviciul de coordonare Menține configurația și topologia consecvente pe fiecare nod din cluster.

Informația de fundal merită o atenție deosebită, deoarece este procesul cel mai adesea lipsit de capacitate.tracReîmprospătările și e-mailurile de abonament concurează pentru aceiași lucrători, așa că o dimineață plină de suprapuneriping programează întârzieri ambele.

Implementare Tableau Server cu un singur nod vs. cu mai multe noduri

Fiecare proces enumerat mai sus poate rula pe o singură mașină, iar pentru o echipă mică aceasta este configurația normală. O instalare cu un singur nod este ușor de actualizat și monitorizat, dar nu oferă redundanță: dacă mașina se oprește, la fel se oprește și fiecare tablou de bord, iar procesele grele...tracReîmprospătările concurează direct cu persoanele care vizualizează conținut.

Un cluster cu mai multe noduri distribuie aceleași procese pe două sau mai multe mașini care partajează un singur depozit și o singură topologie. Rolurile sunt apoi atribuite în mod deliberat, nu implicit.

  • Separați fundalul. Mutare fostătracReîmprospătarea pe un nod dedicat împiedică joburile peste noapte să încetinească vizualizările interactive.
  • Duplicați gateway-ul. Rularea unui gateway pe mai multe noduri, în spatele unui echilibrator de sarcină extern, elimină punctul unic de intrare ca risc de eșec.
  • Adăugați un depozit pasiv. O a doua instanță de repozitoriu permite Cluster Controlerul să se reia automat dacă copia activă nu mai răspunde.
  • Scară VizQL pentru concurență. Mai Mult VizInstanțele QL deservesc mai mulți spectatori simultani, ceea ce reprezintă blocajul obișnuit odată ce adoptarea crește.
  • Păstrați File Store aproape de Data Engine. Noduri care interoghează extracts au nevoie de o copie locală, așa că aceste două sunt în mod normal colocate.

Declanșatorul practic pentru trecerea la mai multe noduri este rareori volumul de date brute. De obicei, este fie o cerință de afaceri pentru disponibilitate ridicată, fie o fereastră de reîmprospătare care nu se mai încadrează în orele liniștite.

Întrebări frecvente

Ambele rulează aceleași procese. Cu Tableau Server, clientul dimensionează, aplică patch-uri și monitorizează hardware-ul. Cu Tableau Cloud, Salesforce operează clusterul, astfel încât topologia, scalarea și failover-ul sunt gestionate automat.

PostgreSQL depozitul conține metadate în loc de date analitice: definiții ale registrelor de lucru și ale surselor de date, utilizatori, grupuri, permisiuni, programări și istoricul utilizării. De exemplutracFișierele t în sine se află în Depozitul de fișiere.

Prima cerere ratează serverul Cache, deci VizQL trebuie să interogheze sursa de date și să redea vizualizarea. Rezultatul este apoi memorat în cache, iar utilizatorii ulteriori cu aceleași filtre îl primesc fără o nouă interogare.

Funcții precum Tableau Pulse și Explain Data rulează deasupra straturilor existente. Acestea consumă surse de date publicate prin același server de date și cale de cache, deci nu este introdus un nivel analitic separat.

IA poate rezuma telemetria utilizării și poate evidenția procesele saturate, dar dimensionarea depinde în continuare de țintele de concurență, ferestrele de reîmprospătare și cerințele de disponibilitate pe care un administrator trebuie să le precizeze explicit.

Rezumați această postare cu: