Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Auto Scaling von Presto mit ordnungsgemäßer Stilllegung verwenden
Die Amazon-EMR-Release-Versionen 5.30.0 und höher enthalten ein Feature, mit dem Sie einen Kulanzzeitraum für bestimmte Skalierungsaktionen festlegen können. Die Übergangszeit ermöglicht es, dass Presto-Aufgaben weiterlaufen, bevor der Knoten aufgrund einer Skalierungsaktion zur Größenänderung oder einer automatischen Skalierungsrichtlinienanforderung beendet wird. Weitere Informationen zu Skalierungsregeln finden Sie unter Grundlegendes zu automatischen Skalierungsregeln im Verwaltungshandbuch für Amazon EMR. Auto Scaling in Presto mit ordnungsgemäßer Stilllegung verhindert, dass neue Aufgaben auf einem Knoten geplant werden, der außer Betrieb genommen wird, und ermöglicht gleichzeitig, dass bereits laufende Aufgaben abgeschlossen werden, bevor die Zeitüberschreitung für das Herunterfahren erreicht ist. Derzeit laufende Abfragen schließen die Ausführung ab, bevor der Knoten stillgelegt wird. Auto Scaling wird für Instance-Flotten nicht unterstützt.
Sie können steuern, wie viel Zeit für die Ausführung von Presto-Aufgaben eingeräumt werden soll, nachdem eine Anfrage zum Herunterfahren der automatischen Skalierung eingegangen ist. Standardmäßig ist das Timeout für das Herunterfahren für Amazon EMR 0
Minuten, wodurch der Knoten und alle darauf ausgeführten Presto-Aufgaben sofort beendet werden, falls dies gemäß einer Abskalierungs-Anforderung erforderlich ist. Um ein längeres Timeout für Presto-Aufgaben auf Amazon EMR festzulegen, damit laufende Abfragen vor der Herunterskalierung eines Clusters abgeschlossen werden können, legen Sie über die presto-config
-Konfigurationsklassifizierung den Parameter graceful-shutdown-timeout
auf einen Wert in Sekunden oder Minuten fest, der größer als Null ist. Weitere Informationen finden Sie unter Anwendungen konfigurieren.
Wenn Sie beispielsweise den Wert graceful-shutdown-timeout
auf "30m"
erhöhen, wird ein Zeitraum von 30 Minuten angegeben. Nach Ablauf der Zeitüberschreitung für das Herunterfahren wird der Knoten, der für die Stilllegung markiert ist, zwangsweise beendet, wenn er auf den Abschluss von Abfrageaufgaben wartet und die Abfrage fehlschlägt. Wenn die Abfrageaufgaben in 5 Minuten abgeschlossen sind, wird der für die Stilllegung markierte Knoten nach fünf Minuten beendet, sofern andere YARN Anwendungen die Ausführung abgeschlossen haben.
Beispiel einer automatischen Skalierung in Presto mit ordnungsgemäßer Stilllegung
Ersetzen Sie den graceful-shutdown-timeout
-Wert durch die Anzahl der Minuten, die für Ihre Einrichtung geeignet ist. Es gibt keinen Höchstwert. Im folgenden Beispiel wird ein Timeout-Wert von 1800
Sekunden (30 Minuten) festgelegt.
[
{
"classification": "presto-config",
"properties": {
"graceful-shutdown-timeout": "1800s"
}
}
]
Einschränkungen
Ordnungsgemäße Stilllegung in PrestoDB funktioniert nicht auf EMR-Clustern, auf denen die HTTP-Konnektivität deaktiviert ist, z. B. wenn http-server.http.enabled
auf false
eingestellt ist. Trino unterstützt Ordnungsgemäße Stilllegung, unabhängig von der Einstellung http-server.http.enabled
, überhaupt nicht.