In diesem Dokument werden Fragen zur neuen AMP Engine beantwortet. Das Dokument richtet sich sowohl an bestehende Administratoren als auch an neue Benutzer.
Weitere Informationen zur AMP Engine finden Sie auf den Hilfeseiten Alteryx AMP Engine und Engine.
Weitere Informationen zu den Systemanforderungen für Server finden Sie auf der Hilfeseite Systemanforderungen.
In den meisten Anwendungsfällen bietet die AMP Engine erhebliche Leistungs- und Effizienzverbesserungen gegenüber der Original-Engine, wenn ausreichende Systemressourcen bereitstehen. Weitere Informationen zu den Anforderungen und Empfehlungen für Systemressourcen finden Sie in den Abschnitten Wie verwalte ich Systemressourcen mit AMP? und Welche Systemanforderungen gelten für die AMP Engine?.
AMP ist für die Verarbeitung größerer Datenmengen mit höherer Geschwindigkeit ausgelegt und führt Workflows im Vergleich zur Original-Engine in der Regel schneller und mit effizienterer Nutzung der Rechnerressourcen aus.
Die Original-Engine-Architektur ermöglicht meist eine Single-Threaded-Verarbeitung, bei der Ihre Daten Datensatz für Datensatz sequentiell verarbeitet werden. Im Gegensatz dazu ermöglicht das neue AMP-Konzept eine massive Multithreading-Verarbeitung. AMP verarbeitet Datensätze in Paketen, um die Laufzeiten zu verbessern, und Tools können parallel ausgeführt werden. AMP verwendet auch leistungsfähigere Algorithmen beim Gruppieren und Sortieren von Datensätzen, was sich auf die Reihenfolge der Ausgabedatensätze auswirken kann.
Im Artikel Workflows mit AMP optimieren werden einige der Leistungsvorteile der Verwendung der AMP Engine beschrieben:
Die meistgenutzten Tools laufen am besten über AMP.
Der Vorteil von AMP steigt in der Regel mit zunehmender Datengröße.
Die Leistung variiert je nach Datengröße, zugrundeliegender Hardware, Rechenzentrum und Netzwerkinfrastruktur, Alteryx Server-Konfiguration und Workflow-Aufbau.
AMP ist in Designer standardmäßig für neue Workflows aktiviert. Bei neuen Server-Installationen oder neuen Workern auf vorhandenen Servern ist die Ausführung von AMP und Original-Engine standardmäßig zulässig. Die Workflow-Einstellungen bestimmen, welche Engine verwendet wird.
Anmerkung
Wenn Sie auf Server-Version 2022.1 aktualisieren, empfehlen wir Ihnen, die Einstellungen für die Engine-Auswahl und die Ressourcenzuordnungen zu überprüfen. Die neue Funktionalität „Allow Server to manage workflows running simultaneously" (Verwaltung simultan laufender Workflows durch Server zulassen) und die Änderung, AMP standardmäßig zu aktivieren, können dazu führen, dass sich die Einstellungen in Ihrer Umgebung ändern.
Wenn Sie über einen vorhandenen Server verfügen und Ihre aktuellen Systemeinstellungen beibehalten möchten, lesen Sie diese Anweisungen vor der Aktualisierung.
1. Controller > Allgemein > AMP Engine aktivieren
Notieren Sie sich vor der Aktualisierung Ihre aktuellen Einstellungen.
Stellen Sie nach der Aktualisierung die Auswahl des gewünschten Werts wieder her.
2. Worker > Allgemein > Verwaltung simultan laufender Workflows durch Server zulassen
Notieren Sie sich vor dem Upgrade den für „Gleichzeitige Ausführung von Workflows zulassen“ festgelegten Wert.
Deaktivieren Sie nach der Aktualisierung die Option Verwaltung simultan laufender Workflows durch Server zulassen.
Geben Sie den Wert ein, den Sie für „Gleichzeitige Ausführung von Workflows zulassen“ gespeichert haben.
3. Engine > Allgemein > Engine
Notieren Sie sich vor der Aktualisierung Ihre aktuellen Einstellungen.
Stellen Sie nach der Aktualisierung die Auswahl des gewünschten Werts wieder her.
4. Engine > Allgemein > Engine mit niedrigerer Priorität ausführen
Notieren Sie sich vor der Aktualisierung Ihre aktuellen Einstellungen.
Stellen Sie nach der Aktualisierung die Auswahl des gewünschten Werts wieder her.
Wir empfehlen Ihnen, die neuen Optionen Allow Server to manage workflows running simultaneously und Allow Server to manage engine resources zu verwenden. Wir haben die Logik hinzugefügt, damit jede Engine-Instanz innerhalb der in den Systemeinstellungen definierten Speicher- und logischen CPU-Beschränkungen arbeitet. Admins müssen darauf achten, dass sie nicht zu viel zuweisen, wenn sie diese Werte manuell festlegen, anstatt sie von Server verwalten zu lassen.
Wenn Sie die Optionen Allow Server to manage workflows running simultaneously und Allow Server to manage engine resources aktivieren, berechnet Server die Anzahl gleichzeitiger Aufträge sowie die CPU-Threads (Kerne) und den Speicherplatz, der pro Auftrag beim Starten des Dienstes zugewiesen werden soll. Diese Berechnungen basieren auf den insgesamt verfügbaren CPU-Kernen und den gesamten Systemspeicherressourcen auf dem Hostrechner. Sie sind außerdem darauf ausgelegt, die AMP-Leistung für die verfügbare Hardware basierend auf unseren Benchmarking-Ergebnissen zu optimieren. Die Formeln für diese Berechnungen lauten wie folgt:
Berechnungsformeln
Gleichzeitige Aufträge
Anzahl gleichzeitiger Aufträge = floor(Anzahl physischer Prozessoren/2)
Speicherlimit
Speicherlimit = IF(MongoDB aktiviert auf Knoten, (((gesamter physischer RAM/2) - 4096) / Anzahl gleichzeitiger Aufträge), (gesamter physischer RAM / (Anzahl gleichzeitiger Aufträge +2)) )
Für Server-Computer, die sowohl als Worker als auch als Controller mit der integrierten MongoDB fungieren, wird das Speicherlimit (MB) automatisch auf Grundlage folgender Formel berechnet:
(((physischer RAM gesamt/2) - 4096) / Anzahl gleichzeitiger Aufträge)
Für eigenständige Worker wird mehr Speicher zur Ausführung von Workflows auf Grundlage der folgenden Formel zugewiesen:
(Gesamter physischer RAM / (Anzahl gleichzeitiger Aufträge +2))
Wenn die Formeln weniger als 2 GB ergeben, legen Sie das Speicherlimit auf das Minimum von 2 GB fest, um sicherzustellen, dass die Engine ausgeführt werden kann.
Verarbeitungsthreads
Standardanzahl Verarbeitungsthreads = [LogicalCores]
Wir empfehlen Ihnen, diese Richtlinien für eine optimale Leistung zu befolgen, wenn Sie diese Werte manuell festlegen:
Speicher pro ausgeführtem Workflow: 8 GB pro physischem Kern sind die Empfehlung für eine optimale Leistung mit AMP.
CPU pro ausgeführtem Workflow: Ein gleichzeitig ausgeführter Workflow pro zwei physischen CPU-Kernen.
Anzahl der physischen Kerne pro Knoten: Für eine optimale Leistung empfehlen wir acht physische Kerne pro Knoten und eine horizontale Skalierung auf zusätzliche Knoten. In der Regel bedeutet dies vier gleichzeitig ausgeführte Workflows pro Knoten.
Maximum number of AMP engines run in parallel: Dies ist vollständig hardwareabhängig. Theoretisch können Sie 16 AMP- oder gemischte AMP-/Original-Engine-Aufträge gleichzeitig ausführen, wenn Sie über einen Worker mit 128 logischen Kernen und 160 GB RAM verfügen. Allerdings ist es an diesem Punkt wahrscheinlicher, dass Festplatten-E/A und Netzwerkbandbreite der Engpass sind. Sowohl die Original-Engine- als auch die AMP-Leistung sind durch Festplatten-E/A und Netzwerkbandbreite in Abhängigkeit von der Größe und dem Herkunfts- und Ausgabeort der Daten begrenzt.
Max. Anzahl von AMP Engines, die gleichzeitig mit E1 ausgeführt werden: Server unterscheidet nicht zwischen einem AMP Engine- und einem Original-Engine-Auftrag. Server sendet den Workflow einfach an die Engine, und die Engine bestimmt, ob er über AMP oder Original-Engine ausgeführt werden muss. Daher geht Server davon aus, dass alle Aufträge AMP-Aufträge sind, wenn die AMP Engine aktiviert ist.
Unsere Formeln zur Berechnung der Ressourcen berücksichtigen diese Empfehlungen bereits. Weitere Informationen finden Sie unter Engine.
Die neuesten Server-Systemanforderungen finden Sie auf der Hilfeseite Server: Systemanforderungen. Wir haben unsere Empfehlungen in zwei Kategorien unterteilt: Mindestanforderungen an die Hardware und Empfohlene Hardware für rechenintensive Workloads.
Die Hardware-Mindestanforderungen für Server sind definiert als die Mindestanforderungen an die Hardware, die für den Betrieb einer stabilen Installation von Alteryx Server erforderlich sind. Wenn Sie die Mindestanforderungen nicht erfüllen, riskieren Sie eine mangelhafte Leistung und einen zufallsbedingten Dienstabbruch auf jedem Knoten, auf dem die Engine läuft.
Für die gewünschte Anzahl gleichzeitiger Workflows werden die folgenden Hardware-Mindestanforderungen empfohlen:
Gewünschte Anzahl gleichzeitiger Workflows | Mindestsystemvoraussetzungen | |
---|---|---|
Arbeitsspeicher (GB RAM) | Physische Kerne | |
2 | 32 | 4 |
3 | 48 | 6 |
4 | 64 | 8 |
5 | 80 | 10 |
6 | 96 | 12 |
7 | 112 | 14 |
8 | 128 | 16 |
Empfehlungen zur Server-Hardware für rechenintensive Workloads sind als optimale Spezifikationen definiert, mit denen Server anspruchsvolle Workflows so effizient wie möglich ausführen kann. Diese sind hilfreich, um Engpässe auf ausgelasteten Systemen zu reduzieren.
Für rechenintensive Workloads werden die folgenden Hardwarespezifikationen empfohlen:
Gewünschte Anzahl gleichzeitiger Workflows | Empfehlungen für rechenintensive Workloads | ||
---|---|---|---|
Arbeitsspeicher (GB RAM) | Physische Kerne | Logische Kerne* | |
2 | 64 | 8 | 16 |
3 | 96 | 12 | 24 |
4 | 128 | 16 | 32 |
5 | 160 | 20 | 40 |
6 | 192 | 24 | 48 |
7 | 224 | 28 | 56 |
8 | 256 | 32 | 64 |
*Bei logischen Kernen handelt es sich entweder um vCPUs oder um logische Kerne innerhalb eines physischen Kerns. Durch den standardmäßigen Bezug auf logische Kerne können sowohl physische On-Premise-Server als auch virtuelle Server in der Cloud konsistent verglichen werden. Intel Hyper-Threading, AMD SMT, Verhältnis von 2:1 von vCPU zu physischem Kern.
Vor 2022.1 war AMP auf Server verfügbar, aber standardmäßig deaktiviert.
Ab Version 2022.1 sind Controller und Worker bei neuen Server-Installationen standardmäßig so eingestellt, dass sowohl die Ausführung der AMP Engine als auch der Original-Engine zulässig ist. Für bestehende Server ändern sich möglicherweise die vorhandenen Controller- und Worker-Einstellungen. Für neue Worker kann sowohl die Ausführung mit der AMP Engine als auch mit der Original-Engine standardmäßig aktiviert sein. Wenn Sie dies vermeiden möchten, lesen Sie unseren Hinweis zur Beibehaltung der aktuellen Einstellungen.
Die Einstellungen für die Aktivierung der AMP Engine sowohl für Controller- als auch Worker-Knoten sind in den Alteryx-Systemeinstellungen verfügbar. Es gibt jetzt zusätzliche Einstellungen für die Verwaltung der Hardwarezuordnungen für jede Engine. Außerdem gibt es eine empfohlene Einstellung, um die Allow Server to Manage Engine Resources.
Systemeinstellungen für vorhandene Server-Installationen:
Controller > Allgemein > AMP Engine aktivieren: Wenn Sie diesen Wert bereits einmal geändert haben, bleibt der jeweilige neue Wert auch nach der Aktualisierung erhalten. Wenn Sie diese Einstellung nie geändert und den Standardstatus immer deaktiviert gelassen haben, ist das Kontrollkästchen jetzt aktiviert, was bedeutet, dass AMP standardmäßig aktiviert ist.
Der Standardwert für Worker > Allgemein > Verwaltung simultan laufender Workflows durch Server zulassen ist für alle Worker True. Wenn diese Einstellung auf „True“ gesetzt ist, können Sie die Anzahl der Workflows, die gleichzeitig ausgeführt werden dürfen, nicht festlegen.
Der Wert für Gleichzeitige Ausführung von Workflows zulassen wird beim Dienststart automatisch auf der Grundlage der verfügbaren CPU und des Arbeitsspeichers auf diesem Knoten berechnet.
Engine > Allgemein > Engine: Wenn Sie diesen Wert bereits einmal geändert haben, bleibt der jeweilige neue Wert auch nach der Aktualisierung erhalten. Wenn Sie diese Einstellung noch nie geändert und immer die Standardoption „Original-Engine" verwendet haben, lautet der neue Standardwert Beide Engines.
Engine > Allgemein > Verwaltung von Engine-Ressourcen durch Server zulassen ist eine neue Einstellung, für die standardmäßig False gilt.
Die Formel für Engine > Allgemein > Speicherlimit zur Berechnung des Standardwerts wurde geändert.
Die Formel für Engine > Allgemein > Standardanzahl der Verarbeitungsthreads zur Berechnung des Standardwerts wurde geändert.
Engine > Allgemein > Engine mit niedrigerer Priorität ausführen: Wenn Sie diesen Wert bereits einmal geändert haben, bleibt der jeweilige neue Wert auch nach der Aktualisierung erhalten. Wenn der Standardwert immer auf „False“ gesetzt war, lautet nach der Aktualisierung der neue Standardwert True.
Systemeinstellungen für neue Server-Installationen:
Der Standardwert für das Kontrollkästchen Controller > Allgemein > AMP Engine aktivieren lautet True.
Der Standardwert für Worker > Allgemein > Verwaltung simultan laufender Workflows durch Server zulassen ist für alle Worker True.
Der Wert für Gleichzeitige Ausführung von Workflows zulassen wird beim Dienststart automatisch auf der Grundlage der verfügbaren CPU und des Arbeitsspeichers auf diesem Knoten berechnet.
Der Standardwert im Dropdown-Menü Engine > Allgemein > Engine ist Beide Engines.
Engine > Allgemein > Verwaltung von Engine-Ressourcen durch Server zulassen ist standardmäßig auf False eingestellt.
Die Formel für Engine > Allgemein > Speicherlimit zur Berechnung des Standardwerts wurde geändert.
Die Formel für Engine > Allgemein > Standardanzahl der Verarbeitungsthreads zur Berechnung des Standardwerts wurde geändert.
Der Standardwert für Engine > Allgemein > Engine mit niedrigerer Priorität ausführen lautet True.
Können Benutzer die Einstellungen wieder zurückstellen (d. h. AMP in Server deaktivieren)?
Wenn der Administrator die AMP Engine nicht verwenden möchte, muss er sie manuell deaktivieren. Die folgende Abbildung zeigt die Einstellung „Engine“ im Abschnitt Controller General Configuration der Systemeinstellungen.
Wenn der Administrator AMP auf einigen Worker-Knoten deaktivieren möchte, kann dies im Abschnitt Engine-Configuration der Systemeinstellungen erfolgen. Siehe Dropdown-Einstellung „Engine“ weiter unten. In der Abbildung unten ist die Einstellung auf Both Engines gesetzt, kann aber auf Original-Engine geändert werden. Both Engines ist die Standardeinstellung in einer neuen Server-Umgebung.
Es gibt keine separate Speicherbegrenzung. In den Systemeinstellungen bezieht sich das Feld Engine > Allgemein > Speicherlimit auf die Engine. Es gilt sowohl für Designer als auch für Server – im Grunde für jeden Ort, an dem die Engine ausgeführt wird.
Designer führt nur jeweils einen Workflow aus, sodass die Einschränkungen unterschiedlich und toleranter sind.
Im System ist AMP automatisch aktiviert und alle relevanten Einstellungen sind standardmäßig konfiguriert. Sie müssen nur dann Änderungen vornehmen, wenn sie AMP deaktivieren möchten. Lesen Sie die Antworten unter Welche Änderungen wurden in Designer und Server vorgenommen?.
Stellen Sie sicher, dass die Hardware-Mindestanforderungen erfüllt werden, um eine stabile Server-Umgebung zu gewährleisten.
Wenn ein Workflow in Designer gespeichert wird, ist die Option der Laufzeiteinstellung auf „AMP Engine verwenden“ festgelegt oder nicht. Welche Option in Designer gespeichert ist, wird bei der Ausführung in Server berücksichtigt. Server wird die Engine-Option des Workflows niemals außer Kraft setzen. Daher führt das Zulassen der Ausführung sowohl von AMP als auch der Original-Engine auf Server nicht dazu, dass Workflows, die als Original-Engine gespeichert wurden, mit der AMP-Engine ausgeführt werden. Wenn ein Workflow mit AMP als Engine-Option gespeichert wird und AMP in Server nicht aktiviert ist, wird der Workflow NICHT mit der Original-Engine ausgeführt und schlägt fehl.
Damit ein Workflow, der zuvor mit Option „Original-Engine“ gespeichert wurde, mit AMP ausgeführt werden kann, muss der Workflow in Designer erneut gespeichert werden, wobei die Einstellung AMP Engine verwenden ausgewählt sein muss.
Die Ausführung von Workflows mit AMP kann sich auf die Reihenfolge der resultierenden Ausgabezeilen auswirken, da einige Dinge nun parallel ausgeführt werden. Denken Sie daran und überprüfen Sie, ob Ihre Prozesse von der Ausgabereihenfolge abhängig sind. Wenn dies der Fall ist, können Sie an Ihren Workflows Anpassungen vornehmen, um sicherzustellen, dass die Reihenfolge der Original-Engine beibehalten wird. Weitere Informationen finden Sie unter Engine-Kompatibilitätsmodus.
Wenn ich neue Workflows erstelle und sie mit der ausgewählten Option „AMP Engine verwenden“ speichere und AMP in Server aktiviere, wie wirkt sich das auf die Quality of Service (QoS, Dienstgüte) aus, wenn die neuen AMP-Workflows zusammen mit meinen vorhandenen Original-Engine-Workflows ausgeführt werden?
Sie können mit Änderungen in der Laufzeit der einzelnen Workflows rechnen.
Im Allgemeinen werden AMP-Workflow-Aufträge mit der richtigen Anzahl von Verarbeitungskernen deutlich schneller ausgeführt.
In einigen Fällen können AMP-Aufträge mehr Zeit in Anspruch nehmen als Original-Engine-Aufträge, insbesondere wenn die Workflows CPU-intensiv sind und die Anzahl der Threads pro Workflow gering ist.
Quality of Service (QoS, Dienstgüte) funktioniert weiterhin auf die gleiche Weise wie gewohnt.
Bei ordnungsgemäßer Ressourcenzuweisung sollten sowohl AMP- als auch Original-Engine-Workflows vorhersehbar sein (vorhersehbar im Rahmen der Verwendung einer neuen Baseline, statt nur der Verlaufsergebnisse der Original-Engine-Leistung). Unvorhersehbar wird es nur dann, wenn die Hardwareressourcen eines Workers nicht ausreichend zugewiesen sind (Original-Engine und AMP konkurrieren um Ressourcen).
Es ist möglich, den Workflow mit aktiviertem AMP auf Server zu speichern und dann eine Kopie davon mit deaktiviertem AMP zu speichern. Führen Sie dann jeden Workflow einige Male aus, um zu sehen, welcher besser funktioniert. Beachten Sie auch, dass AMP-Workflows in der Regel schneller laufen, wenn sie gleichzeitig mit anderen AMP-Workflows ausgeführt werden.
Die Engine-Konfiguration Memory Limit gilt für die Engine, unabhängig davon, ob es sich um die Original-Engine oder AMP handelt. Der Unterschied besteht darin, wie die einzelnen Engines mit dem Speicherlimit arbeiten:
Die Original-Engine weist das gesamte Limit vorab zu.
AMP weist den benötigten Arbeitsspeicher bis zum Speicherlimit zu.
Ressourcen werden effizienter genutzt. Die Original-Engine ist nur begrenzt Multi-Threading-fähig. AMP kann serielle Aufträge wesentlich effektiver ausführen. Die Vorteile liegen im Gesamtdurchsatz, der mit AMP höher ist als bei der Verwendung der Original-Engine.
Server kann nun Ihre Hardware analysieren und die entsprechenden Ressourcen pro Engine zuweisen. Es handelt sich zwar nicht um einen Ressourcenmanager wie bei einem Betriebssystem, aber mit dieser neuen Eigenschaft haben wir die Möglichkeit geschaffen, dass Server Ihre Ressourcen verwalten kann.
Die Anzahl der Aufträge, die gleichzeitig ausgeführt werden können, wird auf der Grundlage der gesamten Hardwareressourcen automatisch zugewiesen, wenn der Administrator oder die Administrator:in dies so konfiguriert. Weitere Informationen zur Worker-Konfiguration finden Sie auf der Hilfeseite zu Worker.
Nein, Ressourcen werden pro Engine-Auftrag zugewiesen. Jedem Auftrag stehen eigene Ressourcen zur Verfügung, was bedeutet, dass es keine Ressourcenkonflikte zwischen den Aufträgen geben sollte.
Webinar zu AMP Engine (32 Minuten)
Alteryx Engine und AMP: Hauptunterschiede
Analyseprozesse mit der neuen AMP Engine beschleunigen
Die Alteryx AMP Engine: Erklärt
Detaillierte technische Analyse der AMP Engine | Teil 1 | Warum AMP?
Detaillierte technische Analyse der AMP Engine | Teil 2 | Schlüsselkonzepte der AMP Engine