Optimieren für extraktabfragelastige Umgebungen

Das Thema bietet eine Anleitung zum Einrichten einer speziellen Tableau Server-Topologie und Konfigurationen, mit denen die Leistung in einer extraktabfragelastigen Umgebung optimiert und verbessert werden kann.

Was ist eine extraktabfragelastige Umgebung? Extrakte und föderierte Datenquellen werden beim Laden von Arbeitsmappen, Ansichten und Dashboards abgefragt, was zu einem hohen Abfrageaufkommen führt. Wenn Sie also viele Extrakte und Verbunddatenquellen haben, kann man von einer "extraktabfragelastigen Umgebung" sprechen.

Wenn Ihre Umgebung wie oben definiert extraktabfragelastig ist, können Ihnen die nächsten Abschnitte bei der Entscheidung helfen, ob diese Konfiguration für Sie geeignet ist.

Wann sollte diese Konfiguration verwendet werden?

Hauptargumente für diese Konfiguration: Hyper ist die speicheroptimierte Daten-Engine-Technologie von Tableau, die sich für schnelle Datenaufnahme und analytische Verarbeitung eignet und somit der Schlüssel zur Optimierung von abfrageintensiven Workloads ist. Wenn Ihre Extraktnutzung zunimmt, empfehlen wir, die Daten-Engine auf dedizierten Knoten des Tableau Server-Clusters zu konfigurieren. Diese Konfiguration ermöglicht Tableau Server die horizontale Skalierung der Infrastruktur, um die Leistung bei der Abfrage von Extrakten zu optimieren.

Es gibt mehrere Faktoren, die sich beim Anzeigen von Inhalten mit Extrakten und föderierten Datenquellen auf die Leistung von Tableau Server auswirken. Ziel ist es, eine konsistente und zuverlässige Abfrageleistung beim Anzeigen von Inhalten auf dem Server zu erreichen. Verwenden Sie diese Konfiguration, wenn eine der folgenden Bedingungen auf Ihre Umgebung zutrifft:

  • Die Ladezeiten von Arbeitsmappen variieren stark und die Arbeitsmappe verwendet Extrakte oder föderierte Datenquellen.

  • Die Anzahl der Creator, Explorer, Viewer und extraktbasierten Inhalte in Ihrer Tableau Server-Bereitstellung wächst, sodass Sie diese effizient horizontal skalieren möchten.

  • Es kommt bei Ihnen zu Ressourcenkonflikten zwischen der Daten-Engine und VizQL Server, wenn der Computer einen Dateispeicher enthält.
  • Sie analysieren große Datenmengen. Diese Konfiguration trägt zur Leistungsoptimierung in Big-Data-Szenarien bei, sowohl bei der Datenaufnahme als auch bei der Analyse. Weitere Informationen zu Tableau und Big Data finden Sie unter Hyper-charge big data analytics using Tableau.

Hinweis: Bestimmen Sie die Ausführungsdauer von Abfragen mithilfe der serverseitigen Leistungsaufzeichnung. Um die Ressourcennutzung von Tableau zu bestimmen, nutzen Sie bei Windows-Installationen die Leistungsüberwachung und bei Linux-Installationen die Tools sysstat oder vmstat.

Vorteile dieser Konfiguration

Dies sind die wichtigsten Vorteile der Konfiguration von dedizierten Knoten für die Daten-Engine:

  • Dedizierte Daten-Engine-Knoten reduzieren die Ressourcenkonflikte zwischen Extraktabfragen und anderen ressourcenintensiven Arbeitslasten, wie z. B. denen, die von VizQL Server verarbeitet werden.

  • Extraktabfragen werden dynamisch auf die dedizierten Knoten verteilt, wobei der aktuelle Zustand des Systems berücksichtigt wird, um sicherzustellen, dass kein Knoten über- oder unterausgelastet ist.
  • Konsistentere Leistung bei der Benutzererfahrung beim Laden von Extrakten abhängiger Arbeitsmappen. Der Schwerpunkt liegt dabei auf der Schaffung einer konsistenten und zuverlässigen Leistung und nicht auf der Verbesserung einzelner Abfragen.

  • Sie haben mehr Kontrolle über die horizontale Skalierung von Tableau Server-Prozessen, die mehr Ressourcen benötigen. Wenn VizQL Server, die Daten-Engine und die Hintergrundprozesskomponente alle auf demselben Knoten laufen und langsame Extraktabfragen das Problem darstellen, ist es schwierig, Leistungsverbesserungen durch Hinzufügen eines zweiten Knotens mit allen drei Prozessen zu erzielen. Mit dieser Konfiguration können Sie weitere Knoten hinzufügen, die speziell die Extraktabfrage-Workloads verbessern.

  • Verbessert die Verfügbarkeit und Betriebszeit. Im Falle eines Ausfalls und wenn einer der dedizierten Daten-Engine-Knoten nicht verfügbar ist, versucht VizQL Server, die anstehenden Anfragen auf dem problematischen Knoten an andere dedizierte Daten-Engine-Knoten weiterzuleiten.

  • Die Daten-Engine nutzt so viele Kerne, wie auf dem Computer verfügbar sind. Angesichts dieser Tatsache haben Sie die Flexibilität, den dedizierten Daten-Engine-Knoten weitere Ressourcen zur Verfügung zu stellen, um die Ausführungszeit für Abfragen und die Variabilität bei rechenintensiven Extraktabfragen zu verringern, oder weitere Dateispeicher-Knoten hinzuzufügen, um die Durchsatzrate für Extraktabfragen in Ihrem Server zu steigern.

  • Die Daten-Engine hat eine Standardkonfiguration, die sie auf durchschnittlich 75 % der CPU pro Stunde beschränkt. Dies soll dazu beitragen, Konflikte mit anderen Tableau Server-Prozessen zu vermeiden. Wenn Sie die Daten-Engine auf einem dedizierten Knoten ausführen, können Sie diesen Durchschnitt auf 95 % erhöhen. Wie Sie dazu vorgehen müssen, erfahren Sie unter hyper.srm_cpu_limit_percentage.

Wann sollte diese Konfiguration nicht verwendet werden?

  • Wenn Sie keine Probleme mit extraktbasierten Abfragen haben, können die Hardware-Ressourcen besser für andere Bereiche von Tableau Server verwendet werden.

  • Auf Knoten, auf denen der Dateispeicher, die Daten-Engine und VizQL Server nebeneinander existieren, gibt es keine Ressourcenkonflikte zwischen der Daten-Engine und VizQL Server.

  • Vor der Implementierung dieser Konfiguration wird dringend empfohlen, die CPU-Auslastung von VizQL Server und des Knotens, auf dem die Daten-Engine mit dem Dateispeicher installiert ist, zu überprüfen.

Konfiguration

Das Hauptziel dieser Konfiguration besteht darin, die Daten-Engine auf einem oder mehreren dedizierten Knoten zu betreiben.

  • In Bereitstellungen, bei denen der Dateispeicher lokal installiert ist, bedeutet dies, dass der Dateispeicher auf einem oder mehreren dedizierten Knoten konfiguriert wird. Die Daten-Engine wird automatisch auf demselben Knoten wie der Dateispeicher installiert.

  • In Bereitstellungen, bei denen Sie einen externen Dateispeicher konfigurieren, können Sie die Daten-Engine weiterhin auf dedizierten Knoten auf Tableau Server konfigurieren.

Durch die Trennung von VizQL Server- und Dateispeicherprozessen kann die Last zwischen der Abfrage von Extrakten und der Anzeige oder Interaktion mit Ansichten ausgeglichen und besser verwaltet werden. Diese Konfiguration ist auf eine konstante Leistung bei der Abfrage von Extrakten ausgerichtet.

Unten sehen Sie eine visuelle Darstellung der Konfiguration, bei der die Daten-Engine-/Dateispeicherprozesse zwei dedizierte Knoten haben, Knoten 5 und 6. In diesem Beispiel wird der Dateispeicher lokal konfiguriert, weshalb die Prozesse der Daten-Engine und des Dateispeichers gemeinsam ausgeführt werden.

Die gleiche Konfiguration funktioniert auch für Bereitstellungen mit externem Dateispeicher, aber bei Knoten 5 und 6 wird in diesem Fall nur die Daten-Engine konfiguriert.

Da Knoten 1 außerdem über die Repository- und Dateispeicherprozesse verfügt, sind alle für die Durchführung einer Sicherung erforderlichen Daten auf Knoten 1 vorhanden, was die Sicherungsleistung verbessern kann.

Hardware-Anleitung

Um das Maximum aus dieser Konfiguration herauszuholen, müssen Sie mit verschiedenen Hardwaregrößen und -konfigurationen experimentieren, um herauszufinden, was Ihren Leistungszielen bei Spitzenlast am besten entspricht. Hyper ist eine Hochleistungsdatenbanktechnologie und die wichtigsten Ressourcen, die sich auf die Leistung auswirken, sind Arbeitsspeicher, Kerne und Speicher-E/A. Wenn Sie verstehen, wie Hyper die Ressourcen für die Verarbeitung von Abfragen nutzt, können Sie Ihre Hardwareauswahl treffen und die Gründe für die verschiedenen Konfigurationen verstehen.

  • Arbeitsspeicher: Wenn eine extraktbasierte Abfrage für einen Benutzer oder einen Hintergrundprozess verarbeitet wird, wählt Tableau Server einen dedizierten Daten-Engine-Knoten zur Verarbeitung der Abfrage aus. Dieser spezielle Daten-Engine-Knoten kopiert dann den Extrakt aus dem lokalen Speicher, meist der Festplatte des Servers, in den Arbeitsspeicher. Mit mehr verfügbarem Arbeitsspeicher kann das Betriebssystem die Speichernutzung für Tableau besser verwalten. Dedizierte Daten-Engine-Knoten nutzen den Arbeitsspeicher, um die Ergebnismenge der ausgeführten Abfragen zu speichern. Wenn die Ergebnismenge noch gültig ist und das Betriebssystem sie nicht aus dem Arbeitsspeicher gelöscht hat, kann die Ergebnismenge im Arbeitsspeicher erneut verwendet werden.

    Die Mindestanforderungen an die Hardware von Tableau Server sind 32 GB Arbeitsspeicher. Wenn Sie jedoch ein hohes Volumen an extraktbasierten Arbeitsmappenlasten zu erwarten haben, sollten Sie 64 GB oder 128 GB in Betracht ziehen. Wenn Sie neben dem Arbeitsspeicher auch an andere Ressourcengrenzen stoßen (z. B. Kerne), ist es möglicherweise besser, statt horizontal auf 128 GB Arbeitsspeicher auf einen zusätzlichen dedizierten Daten-Engine-Knoten mit 64 GB zu skalieren.

    Das Kopieren des Extrakts aus dem lokalen Speicher in den Arbeitsspeicher kann einige Zeit in Anspruch nehmen und es kann notwendig sein, die Festplattenleistung zu optimieren. Die Optimierung der Festplattenleistung wird im Abschnitt Speicher-E/A behandelt.

  • Kerne: Bei der Verarbeitung einer extraktbasierten Abfrage ist die Anzahl der Kerne eine wichtige Hardwareressource, die sich auf die Leistung und Skalierbarkeit auswirken kann. Die CPU-Kerne sind für die Ausführung einer Abfrage zuständig und eine größere Anzahl verfügbarer Kerne führt zu einer schnelleren Ausführungszeit. Im Allgemeinen führt eine Verdoppelung der Anzahl der Kerne zu einer Halbierung der Ausführungszeit der Abfrage. Eine 10-sekündige Abfrage, die derzeit 4 physische Kerne oder 8 vCPUs nutzt, dauert beispielsweise 5 Sekunden, wenn Sie auf 8 physische Kerne oder 16 vCPUs aufrüsten.

    Die aktuelle Mindestanforderung an die Hardware von Tableau Server liegt bei 8 Kernen, aber wenn Ihre Bereitstellung Extrakte verwendet, sollten Sie Computer mit 16 oder 32 Kernen in Betracht ziehen. Wichtig ist, dass eine Erhöhung der verfügbaren Kerne die Abfrageleistung nicht verbessert, wenn Arbeitsspeicher und E/A Ihre Schwachstellen sind.

  • Speicher-E/A: Hyper wurde entwickelt, um die verfügbare Leistung Ihres Extraktspeichergeräts zu nutzen und die Abfrageverarbeitung zu beschleunigen. Wir empfehlen die Wahl eines schnellen Festplattenspeichers wie Solid State Drives (SSD) mit hohen Lese- und Schreibgeschwindigkeiten. Derzeit bieten SSDs, die das NVMe-Speicherprotokoll verwenden, die höchsten verfügbaren Geschwindigkeiten.

Hinweis: Die Dimensionierung der Ressourcen für dedizierte Daten-Engine-Knoten wirkt sich nur auf die Leistung der Extraktabfrage aus. Beim Laden einer Arbeitsmappe sind viele andere Prozesse beteiligt, die die Gesamtzeit der VizQL-Ladeanforderung ausmachen. Der VizQL Server-Prozess ist zum Beispiel für die Übernahme der Daten von der Daten-Engine und die Darstellung der Visualisierung verantwortlich.

Weitere Leistungsoptimierungen und -steigerungen:

Über die oben beschriebene Grundkonfiguration hinaus gibt es zusätzliche Funktionen, mit denen Sie die Leistung optimieren können. Die im Folgenden beschriebenen Optimierungen gelten sowohl für lokale Dateispeicher als auch für externe Dateispeicherbereitstellungen.

  • Lastenausgleich für Extraktabfragen: Um zu bestimmen, wohin die Extraktabfrage geleitet werden soll, verwendet die Daten-Engine eine Serverzustandsmetrik – die Menge an Ressourcen, die die Daten-Engine verbraucht, und die Last von anderen Tableau-Prozessen, die möglicherweise auf demselben Knoten ausgeführt werden. Neben der Bewertung der Systemressourcen wird auch berücksichtigt, ob ein Extrakt bereits im Arbeitsspeicher des Knotens vorhanden ist, um sicherzustellen, dass eine Extraktabfrage an den Knoten gesendet wird, der über die meisten verfügbaren Ressourcen zur Verarbeitung der Abfrage verfügt. Dies führt zu einer effizienteren Arbeitsspeicher- und Festplattennutzung und Extrakte werden im Arbeitsspeicher nicht über Knoten hinweg dupliziert. Weitere Informationen finden Sie im Hilfeartikel zum Lastenausgleich für Extraktabfragen.

    Die Funktion für den Lastenausgleich von Extraktabfragen ist in Tableau Server, Version 2020.2 und höher, standardmäßig aktiviert.

  • Workload-Optimierungen mithilfe von Knotenrollen: Mit den Knotenrollen für Hintergrundprozesskomponenten und Dateispeicher haben Serveradministratoren mehr Flexibilität und Kontrolle darüber, welche Knoten für die Ausführung von Extraktabfragen und Extraktaktaktualisierungen verwendet werden sollen. Wie im obigen Topologiediagramm dargestellt, sind bestimmte Daten-Engine-Knoten für die Verarbeitung von Extraktabfragen vorgesehen und führen nur die Prozesse des Dateispeichers und der Daten-Engine aus. Knotenrollen sind verfügbar mit Advanced Management. Für weitere Informationen zu Knotenrollen siehe Workload-Management durch Knotenrollen.

Das folgende Diagramm verwendet dieselbe Topologie wie die oben beschriebene Grundkonfiguration, jedoch mit den Knotenrollen.

  • Hintergrundprozesskomponenten-Knotenrolle für Extraktaktualisierungen: Wenn Sie für Knoten 3 die Hintergrundprozesskomponenten-Knotenrolle "extract-refreshes" festlegen, werden nur inkrementelle Aktualisierungen, vollständige Aktualisierungen und Verschlüsselungs-/Entschlüsselungsaufträge auf diesem Knoten ausgeführt. Wenn Sie für Knoten 4 die Hintergrundprozesskomponenten-Knotenrolle "no-extract-refreshes" einstellen, werden alle Hintergrundaufträge außer Extrakt-Aktualisierungen auf diesem Knoten ausgeführt. Der Datenserver und das Gateway unterstützen die Extraktaktualisierungsaufträge bei der Verwendung von Verbund- und Schattenextrakten. Für weitere Informationen zu Hintergrundprozesskomponenten-Knotenrollen siehe Dateispeicher-Knotenrollen.

    Da Knoten 1 außerdem über die Repository- und Dateispeicherprozesse verfügt, sind alle für die Durchführung einer Sicherung erforderlichen Daten auf Knoten 1 vorhanden, was die Sicherungsleistung verbessern kann.

    Die Hintergrundprozesskomponenten-Knotenrollen sind mit Advanced Management in Tableau Server, Version 2019.3 und höher, verfügbar.

  • Dateispeicher-Knotenrollen für Extraktabfragen: Knoten 5 und 6, die dedizierten Daten-Engine-Knoten, haben die Dateispeicher-Knotenrolle "extract-queries", um sicherzustellen, dass sie nur Abfragen für Visualisierungslasten, Abonnements und datengesteuerte Warnungen verarbeiten.
  • Interaktive Dateispeicher-Knotenrolle für Extraktabfragen: Bei dedizierten Daten-Engine-Knoten, die über die Dateispeicher-Knotenrolle "extract-queries" verfügen, können Serveradministratoren die interaktiven und geplanten Arbeitslasten weiter isolieren, um sie auf bestimmten dedizierten Daten-Engine-Knoten auszuführen. Das ist nützlich, wenn bei hohem Abonnementaufkommen viele Benutzer interagieren und Arbeitsmappen laden. Angenommen, es sind 1.000 Abonnements für jeden Montagmorgen um 8 Uhr vorgesehen. Gleichzeitig laden viele Benutzer auch Dashboards zu Beginn des Arbeitstags. Das kombinierte Volumen von Abonnement- und Benutzerabfragen kann dazu führen, dass die Benutzer langsamere, variablere Ladezeiten für Arbeitsmappen erleben. Mit der Dateispeicher-Knotenrolle "extract-queries-interactive" können Sie dedizierte Daten-Engine-Knoten so festlegen, dass sie nur Abfragen für interaktive Benutzer (diejenigen, die auf ihren Bildschirm warten) akzeptieren. Diese dedizierten Daten-Engine-Knoten, die für interaktive Workloads priorisiert sind, wären vor dem hohen Volumen konkurrierender Abonnementaufträge geschützt und würden konsistentere Abfragezeiten bieten. Außerdem können Serveradministratoren mit dieser Knotenrolle besser für Wachstum planen, da sie unabhängig voneinander dedizierte Daten-Engine-Knoten für interaktive und geplante Workloads hinzufügen können. Für weitere Informationen siehe Dateispeicher-Knotenrollen.

    Die Dateispeicher-Knotenrollen sind mit Advanced Management in Tableau Server, Version 2020.4 und höher, verfügbar.

  • Optimierungen mit externem Dateispeicher: Mit dieser Funktion können Sie eine Netzwerkfreigabe als Speicher für den Dateispeicher verwenden, anstatt die lokale Festplatte auf einem Tableau Server-Knoten zu nutzen. Durch die Speicherung an einem zentralen Ort können Sie den Netzwerkverkehr für die Replikation von Daten zwischen den Dateispeicherknoten erheblich reduzieren. Wenn z. B. der Dateispeicher eine lokale Festplatte verwendet und ein Extrakt von 1 GB mithilfe des lokalen Dateispeichers aktualisiert wird, werden die Daten von 1 GB über das Netzwerk auf alle Knoten repliziert, auf denen der Dateispeicherprozess ausgeführt wird. Wenn Tableau Server mit externem Dateispeicher konfiguriert ist, muss der 1 GB große Extrakt nur einmal auf die Netzwerkfreigabe kopiert werden. Alle Dateispeicherknoten können dann auf diese einzelne Kopie zugreifen. Durch die Zentralisierung des Speichers wird auch die Gesamtmenge an benötigtem lokalem Speicher auf den Dateispeicherknoten reduziert.

    Darüber hinaus nutzen Tableau Server-Sicherungen die Snapshot-Technologie, um die Zeit bis zum Abschluss einer Sicherung erheblich zu verkürzen.

    Obwohl keine dedizierte Daten-Engine-Knotenkonfiguration erforderlich ist, um von den Vorteilen des externen Dateispeichers zu profitieren, können die zusätzlichen Workload-Management-Funktionen mit der Dateispeicher-Knotenrolle und der Knotenrolle für interaktive Extraktabfragen gemeinsam genutzt werden. Weitere Informationen finden Sie im Thema Externer Tableau Server-Dateispeicher.

    Der externe Dateispeicher ist mit Advanced Management in Tableau Server, Version 2020.1 und höher, verfügbar.

     

Vielen Dank für Ihr Feedback!Ihr Feedback wurde erfolgreich übermittelt. Vielen Dank.