Planen, Skalieren und Verwalten einer unternehmenskritischen Gatewaylösung

Dieser Artikel richtet sich an alle, die planen, ein lokales Datengateway in einem unternehmenskritischen Szenario bereitzustellen. Ein lokales Datengateway ist unternehmenskritisch, wenn es für den normalen Betrieb Ihres Unternehmens unabdingbar ist und unternehmenskritische Daten verarbeitet.

Wenn unternehmenskritische Gateways nicht richtig verwaltet werden, können Abfragen fehlgeschlagen oder Leistungsschwächen auftreten. Durch die richtige Planung, Skalierung und Wartung Ihrer unternehmenskritischen Gatewaylösung können Sie die Wahrscheinlichkeit von geschäftsschädigenden Problemen minimieren.

Terminologie

In diesem Artikel werden die folgenden wichtigen Begriffe verwendet:

  • Gateway: Die lokale Datengateway-Anwendung, die auf einem Computer installiert ist.
  • Gatewayserver: Ein Windows-Computer (virtueller Computer oder physischer Computer/Server), auf dem die lokale Datengateway-Anwendung installiert ist.
  • Gatewaycluster: Eine Reihe von Gateways, die zusammenarbeiten (und möglicherweise einen Lastenausgleich aufweisen).
  • Gatewaymitglied: Ein Gateway, das Teil eines Gatewayclusters ist.

Das folgende Bild zeigt die Beziehung zwischen den oben definierten Konzepten.

Image of a gateway cluster as part of three gateway servers, each containing a separate gateway

Empfehlungen für unternehmenskritische Gateways

Bei unternehmenskritischen Gateways müssen die Gateways ordnungsgemäß bereitgestellt und verwaltet werden, um Hochverfügbarkeit, gute Leistung und verwaltbare Skalierbarkeit sicherzustellen. Wenn Gateways nicht richtig bereitgestellt werden, kann dies zu schlechter Leistung, fehlgeschlagenen Abfragen und Schwierigkeiten bei der Diagnose potenzieller Probleme führen. Es könnte auch Ihre Fähigkeit einschränken, die Gateways mit zunehmender Nutzung nach oben und unten zu skalieren.

Um optimale Skalierbarkeit, Leistung und Durchsatz sicherzustellen, folgen Sie den Empfehlungen in den nächsten Abschnitten.

Kenntnis aller Gateway-Wiederherstellungsschlüssel

Stellen Sie sicher, dass Sie alle Gateway-Wiederherstellungsschlüssel kennen und an einem sicheren Ort aufbewahren. Ohne Wiederherstellungsschlüssel können Gateways nicht wiederhergestellt oder herabgestuft werden. Diese Einschränkung ist beabsichtigt. Wenn Sie Ihre Wiederherstellungsschlüssel verlieren, haben Sie nur die Möglichkeit, neue Gateways zu erstellen und die Datenquellen neu anzulegen. Außerdem können Sie ohne den Wiederherstellungsschlüssel keine neuen Gateways zum Cluster hinzufügen, was die zukünftige Skalierbarkeit einschränken würde.

Speichern Sie Ihre Wiederherstellungsschlüssel an einem sicheren Ort, genau wie Sie die Anmeldeinformationen für Administratoren speichern würden, z. B. in einem Kennwortmanager, auf den nur autorisierte Administratoren zugreifen können.

Wenn Sie derzeit nicht alle Ihre Gateway-Wiederherstellungsschlüssel kennen, ist dies ein erhebliches Geschäftsrisiko. Erstellen Sie sofort neue Gatewaycluster und beginnen Sie mit der Migration von Workloads zu den Gatewayclustern.

Entwicklungsworkloads und unternehmenskritische Workloads

Trennen Sie Entwicklungs- von unternehmenskritischen Workloads, indem Sie, wie unten beschrieben, einen oder mehrere Entwicklungsgatewaycluster und einen oder mehrere Produktionsgatewaycluster einrichten.

Image of a development and test gateway cluster with three gateways and a separate production cluster with three gateways

Verwenden Sie einen Entwicklungsgatewaycluster, um beispielsweise neue Semantikmodelle, Berichte und Abfragen zu testen. Sobald eine neue Workload verifiziert wurde, migrieren Sie diese zu einem unternehmenskritischen Gatewaycuster. Dieser Prozess verhindert, dass neue, ungetestete oder experimentelle Workloads die Leistung von Produktionsworkloads beeinträchtigen.

Verwenden Sie Ihre Entwicklungsgatewaycluster auch, um neue Gatewayupdates zu testen, bevor Sie Updates auf unternehmenskritische Gatewaycluster anwenden. Neue Gatewayupdates sollten mindestens 24 Stunden lang in den Entwicklungsgatewayclustern bereitgestellt werden, bevor sie in unternehmenskritischen Gatewayclustern eingesetzt werden.

Verwenden mehrerer Gatewaycluster

Wenn Sie ein Gatewaycluster für eine große Anzahl von Benutzern in Ihrer Organisation erstellen, müssen Sie mehrere Gatewaycluster auf der Ebene von Geschäftseinheiten oder kleinerer Einheiten erstellen, um potenzielle Leistungseinbußen auf eine kleine Teilmenge von Benutzern zu beschränken.

Es wird nicht empfohlen, einen unternehmenskritischen Gatewaycluster für das gesamte Unternehmen zu verwenden (es sei denn, es ist ein kleines Unternehmen). In einem Szenario mit einem einzelnen Gatewaycluster könnten einzelne Benutzer möglicherweise Abfragen senden, die sich erheblich auf die Leistung des gesamten Datenverkehrs über das Gateway auswirken. Wenn das Gateway unternehmensweit eingesetzt wird, können die Leistungseinbußen das gesamte Unternehmen betreffen. Wenn ein Gatewaycluster unternehmensweit verwendet wird, ist bei Verwendung der Funktion Gateway-Leistungsüberwachung eventuell schwerer zu erkennen, welche Abfrage möglicherweise ein Leistungsproblem verursacht.

Image of an example organization with separate gateway clusters for enterprise BI and apps, the finance department, the marketing department, and personal BI and apps.

Verwenden der Hochverfügbarkeits- und Lastenausgleichsfunktionen des Gateways

Verwenden Sie für alle unternehmenskritischen Gatewaycluster immer die Hochverfügbarkeits- und Lastenausgleichsfunktion des Gateways.

  • Hochverfügbarkeit: Eliminiert etwaigen Single Point of Failure.
  • Lastenausgleich: Verteilt die Workload automatisch auf alle Gatewayserver im Cluster.

Richten Sie mindestens zwei Gateways pro Gatewaycluster für den Fall ein, dass ein Gateway aus irgendeinem Grund offline geht. So ist sichergestellt, dass ein einzelner Gatewayausfall nicht zum Ausfall des gesamten Gatewayclusters führt. Zusätzlich können CPU-, Speicher- und Parallelitätslimits auf den Gateways aktiviert werden, um die Auslastung besser auf den Gatewaycluster zu verteilen.

Planen und Warten der Skalierbarkeit des Gatewayclusters

Durch das Einrichten eines Gatewayclusters mit unseren empfohlenen Hardware- und Softwarerichtlinien wird sichergestellt, dass der Cluster ein gutes Leistungsverhalten zeigt. Gateways, die nicht richtig skaliert sind, können zu schlechter Leistung führen. Es gibt viele Faktoren, die Sie berücksichtigen müssen, um eine gute Leistung des Gatewayclusters zu erzielen.

Bestimmen der Hardwarespezifikationen des Gatewayservers

Gatewayserverspezifikationen (CPU, Arbeitsspeicher, Festplatte usw.) sind wichtige Faktoren, da meistens die Power Query-Transformationen auf die Daten auf dem Gatewayserver angewendet werden. Daher muss ein Gatewayserver über genügend Ressourcen, Arbeitsspeicher und Verarbeitungsleistung verfügen, um alle Datentransformationen bewältigen zu können.

Wenn Sie eine Servergröße auswählen müssen, sind zwei Metriken am wichtigsten: Arbeitsspeicher und CPU. Um die Power Query-Datentransformationsschritte auf dem Gateway verarbeiten können, sind sowohl ausreichend Arbeitsspeicher als auch CPU-Leistung erforderlich. Es ist wichtig, dass Ihr Gatewayserver leistungsfähig genug ist, um die größte Workload zu verarbeiten, die Sie haben. Wenn der Gatewayserver die Workload nicht bewältigen kann, schlägt die direkte Abfrage oder Datenaktualisierung fehl. Es ist auch wichtig zu wissen, wie viele Abfragen gleichzeitig ausgeführt werden.

Diese unterschiedlichen Abfrageoptionen haben unterschiedliche Auswirkungen auf den Gatewayserver.

Abfragetyp Grenzwertfaktor
Importieren Arbeitsspeicher
DirectQuery CPU
LiveConnect CPU

Während eines Imports muss der gesamte Datensatz abgefragt und verarbeitet werden, was eine arbeitsspeicherintensive Aufgabe ist. Dieser Import dauert oft auch länger. DirectQueries und LiveConnections beanspruchen in der Regel die CPU stark. In den meisten Fällen werden direkte Abfragen oft ausgeführt, um nur einen kleinen Teil der Daten zu verarbeiten. Da nur ein kleiner Teil der Daten verarbeitet wird, ist sind direkte Abfragen normalerweise keine arbeitsspeicherintensive Aufgabe. Da die Abfragen jedoch bei Bedarf viele Male ausgeführt werden, kann die CPU-Auslastung hoch sein.

Je nach Arbeitsbelastung sollten Sie Ihren Gateway-Server für Arbeitsspeicher oder CPU optimieren.

Wann ein Gatewaycluster skaliert werden sollte

Die Skalierung ist ein wichtiger Aspekt eines unternehmenskritischen Gatewayclusters. Wenn Ihre Nutzung des Gatewayclusters zunimmt, muss das Gatewayclusters hochskaliert und/oder horizontal skaliert werden, um eine gute Leistung sicherzustellen. Wir empfehlen, dass Sie mit der horizontalen Skalierung eines Gatewayclusters beginnen, wenn Sie zuvor die Gateways im Cluster hochskaliert haben.

Das Skalieren und Verteilen der Datenverkehrslast auf einzelne Knoten innerhalb eines Clusters ist ein komplexer Prozess, der je nach Szenario variiert. Es gibt zwar kein allgemeingültiges Modell, um sicherzustellen, dass der gesamte Gatewaydatenverkehr vorhersagbar verarbeitet wird, die unten aufgeführten Grenzwerte weisen jedoch auf einen Skalierungsbedarf hin. Im Allgemeinen empfiehlt sich das Aufskalieren (Hinzufügen von Knoten zum Cluster) anstelle des Hochskalierens (Erhöhen von CPU, RAM oder Speicherplatz auf einzelnen Knoten). Das Aufskalieren ist in der Regel insgesamt effektiver, da das System insgesamt zusätzlichen Datenverkehr verarbeiten kann. Das Aufskalieren wirkt sich auch positiv auf die Gesamtbandbreite aus, die der Cluster verarbeiten kann, während dies beim Hochskalieren im Allgemeinen nicht der Fall ist. Wenn mindestens ein Gatewayknoten Hinweise auf das Erreichen der unten beschriebenen Schwellenwerte zeigt, sollte das Aufskalieren des Clusters unbedingt in Erwägung gezogen werden.

  • CPU: Die CPU liegt für längere Zeiträume über 80 %, aber gelegentliche kurze Spitzen (unter 5 Minuten), bei denen die maximale CPU-Auslastung überschritten wird, sind nicht ungewöhnlich.

  • RAM: Der verfügbare Arbeitsspeicher sinkt regelmäßig unter 20 %.

  • Datenträger: Der freie Speicherplatz sinkt häufig unter 5 GB. Dieser Einbruch kann auch darauf hindeuten, dass die Zwischenspeicherung oder das Spooling von Verzeichnissen strategischer konfiguriert werden sollte.

  • Parallelität: Es werden mehr als 40 Abfragen gleichzeitig auf einem einzelnen Knoten ausgeführt.

Da Aktualisierungen und Abfragen, die auf Gatewayknoten verteilt werden, über sehr unterschiedliche Profile verfügen können, wird auch eine zusätzliche Überprüfung auf zeit- oder speicherintensive Aufträge empfohlen. Die Abfrageoptimierung kann sich in solchen Fällen nicht nur bei einzelnen Berichten und Aktualisierungen, sondern auch im gesamten System stark auf die Leistung und Skalierbarkeit auswirken. Es wird empfohlen, die betreffenden Aktualisierungen in einem einzelnen dedizierten Gatewaycluster zu isolieren, um die Leistungsmerkmale auszuwerten und eine Optimierung mithilfe von Abfrageplandiagnosen, Faltindikatoren und allen anderen veröffentlichten Leistungsempfehlungen durchzuführen. Diese Isolation minimiert die Menge der abgerufenen Daten und die erforderliche Nachverarbeitung. Diese Isolation kann auch als langfristige Strategie angewandt werden, um zeitintensive ETL-Aufträge an einen dedizierten Gatewaycluster zu binden und so Konflikte mit anderen typischen Aktualisierungen in der Organisation zu reduzieren.

Hochskalieren eines Gatewayclusters

Image of a query failure using a gateway cluster with two gateways that have 5 GB of memory and a query success using a custer with two gateway, with one gateway that has 7 GB of memory

Hochskalieren bedeutet, dass Sie die Spezifikationen (CPU, Arbeitsspeicher, Datenträger usw.) der Gatewayserver erhöhen.

Eine Hochskalierung des Gateways kann erforderlich sein, wenn beim Ausführen von einer oder mehrerer Abfragen die maximale CPU- oder Speicherkapazität erreicht wird. Eine Abfrage kann nur auf einem Gatewayserver ausgeführt werden. Aus diesem Grund müssen auf dem Gatewayserver genügend Ressourcen zur Verfügung stehen, um die gesamte Abfrage zusammen mit den resultierenden Daten verarbeiten zu können.

Horizontales Skalieren eines Gatewayclusters

Image of a query failure using a cluster with two gateways with 5 GB of memory each and a query success using a cluster with three gateways with 5 GB of memory each

Horizontales Skalieren ist erforderlich, wenn der Gatewayserver bereits über hohe Spezifikationen verfügt (mit anderen Worten, wenn er bereits hochskaliert wurde) oder wenn aufgrund der Anzahl der gleichzeitig ausgeführten Abfragen die Grenzen dessen erreicht werden, was ein einzelner Gatewayserver bewältigen kann. Eine umfassende Lasterhöhung bei allen Gatewaymembern ist ein guter Hinweis darauf, dass das Skalieren eines Clusters durch Hinzufügen von Knoten die richtige Vorgehensweise ist. Unter Wann ein Gatewaycluster skaliert werden soll finden Sie spezifische Schwellenwerte, die angeben, wann eine Skalierung angebracht ist. Weitere Informationen zum horizontalen Skalieren finden Sie unter Verwenden der Hochverfügbarkeits- und Lastenausgleichsfunktionen des Gateways.

Skalierung durch Erstellen neuer Gatewaycluster

Wenn die Ressourcennutzung Ihres Gatewayclusters hoch ist oder eine außergewöhnlich große Anzahl von Benutzern auf ein Gatewaycluster angewiesen ist, können Sie ein neues Gatewaycuster erstellen. Eine Teilmenge der Workload kann dann auf den neuen Gatewaycluster migriert werden. Wenn sich eine große Anzahl von Benutzern auf einen einzelnen Gatewaycluster stützt, steigt die Wahrscheinlichkeit erheblich, dass einzelne Benutzer eine Abfrage senden, die erhebliche Leistungseinbußen im gesamten Gatewaycluster verursacht.

Eine außergewöhnlich große Anzahl von Benutzern, die sich auf einen einzigen Gatewaycluster verlassen, ist ein Indikator dafür, dass ein neuer Gatewaycluster erstellt werden sollte.

Überwachung der und Problembehandlung der Gatewayleistung

Es ist wichtig, die Gesamtleistung unternehmenskritischer Gateways mithilfe der Gatewayleistungsüberwachung zu überwachen. Sie können dieses Feature auch verwenden, um Leistungsprobleme zu beheben, Engpässe zu erkennen und Abfragen zu identifizieren, die die Gesamtleistung des Gateways beeinträchtigen. Dieses Feature ist auch ein wichtiges Tool bei der Bestimmung des Zeitpunkts für die Skalierung eines Gatewayclusters.

Wenn Sie feststellen, dass eine Abfrage das Gateway stark belastet und zu einer schlechten Gesamtleistung führt, können Sie die Abfrage möglicherweise so umschreiben, dass sie effizienter ist und die Leistungsauswirkungen minimiert werden.

Wenn Microsoft eine schlechte Leistung feststellt, die durch ein Gateway oder eine zu einem Gateway gehörige Komponente verursacht wird, z. B. eine Überlastung der Power BI Premium-Kapazität, muss die überlastete Komponente durch Skalieren oder Reduzieren der Auslastung behoben werden. Wenn ein Gateway oder eine zu einem Gateway gehörige Komponente überlastet ist, wird schlechte Leistung von Microsoft nicht untersucht.