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.
Den strikten Presto-Modus aktivieren
In bestimmten Situationen können lang andauernde Abfragen zu hohen Kosten führen und Amazon veranlassen, mehr Cluster-Ressourcen EMR zu verwenden. Dadurch werden anderen Workloads im Cluster Ressourcen entzogen. Mit EMR Amazon-Versionen 6.8 und höher können Sie eine Funktion im strikten Modus verwenden, die die folgenden Arten von Abfragen mit langer Laufzeit ablehnt oder Sie davor warnt:
-
Abfragen ohne Prädikate für die partitionierten Spalten, die zu Tabellenscans großer Datenmengen führen
-
Abfragen mit Kreuzverknüpfungen zwischen zwei großen Tabellen
-
Abfragen, die eine große Anzahl von Zeilen ohne Limit sortieren
Nachdem Presto den Abfrageplan vollständig optimiert hat, wird der strikte Modus ausgeführt. Um den strikten Modus zu verwenden und an Ihre Abfrageanforderungen anzupassen, können Sie Presto wie folgt konfigurieren.
Einstellung | Beschreibung | Standard |
---|---|---|
strict-mode-enabled |
Schaltet den strikten Modus ein und aus. Der Wert von true gibt an, dass der strikte Modus aktiviert ist. |
false |
strict-mode-fail-query |
Weist Abfragen ab, wenn der strikte Modus Abfragen mit wahrscheinlich langer Laufzeit erkennt. Wennfalse , gibt Amazon EMR nur eine Warnung aus. |
false |
strict-mode-restrictions |
Gibt die Einschränkungen an, die gelten sollen, wenn der strikte Modus aktiviert ist. Der strikte Modus unterstützt die folgenden Einschränkungen: MANDATORY PARTITION _ DISALLOW _ PREDICATEJOIN, CROSS _ _ und LIMITED _SORT. |
MANDATORY_PARTITION_PREDICATE,DISALLOW_CROSS_JOIN, LIMITED_SORT |
Um mit dem strikten Modus zu experimentieren, können Sie diese Konfigurationen überschreiben oder sie als Sitzungseigenschaften festlegen, wenn Sie den Presto-Client verwenden.
Um die Konfiguration bei der Clustererstellung festzulegen, verwenden Sie AWS Management Console
-
Wählen Sie Cluster erstellen und wählen Sie Amazon EMR Version 6.8.0 und Presto oder Trino aus. Weitere Informationen finden Sie unter Installieren von PrestoDB und Trino.
-
Geben Sie die Konfigurationseigenschaften für den strikten Modus direkt an oder laden Sie eine JSON Datei auf Amazon S3 hoch. Wählen Sie optional den AWS Glue-Datenkatalog für Ihren Metastore aus. Geben Sie Ihre SubnetzeVPC, Bootstrap-Aktionen, Ihr key pair und Ihre Sicherheitsgruppe an. Um Ihren Cluster jetzt zu erstellen, wählen Sie Cluster erstellen aus.
-
Melden Sie sich beim Primärknoten des Clusters an und führen Sie
presto-cli
odertrino-cli
aus. -
Reichen Sie Ihre Anfragen ein. Der strikte Modus validiert jede Abfrage und stellt fest, ob sie lange andauert. Abhängig von Ihrer
strict-mode-fail-query
Einstellung EMR lehnt Amazon die Anfrage ab oder gibt eine Warnung aus. -
Wenn Sie mit Ihren Abfragen fertig sind, beenden Sie den Cluster und löschen Sie Ihre Ressourcen.
Um die Konfiguration auf einem laufenden Cluster festzulegen, verwenden Sie AWS CLI
-
Melden Sie sich mit dem am primären Knoten Ihres Clusters an AWS CLI und führen Sie
presto-cli
oder austrino-cli
. -
Führen Sie die folgenden Befehle mit den gewünschten Werten aus.
set session strict_mode_enabled = true; set session strict_mode_fail_query = false; set session strict_mode_restrictions = 'DISALLOW_CROSS_JOIN,LIMITED_SORT';
Überlegungen
Berücksichtigen Sie bei der Verwendung des strikten Modus die folgenden Punkte:
-
In einigen Fällen kann der strikte Modus Abfragen mit kurzer Laufzeit zurückweisen, die nicht viele Ressourcen verbrauchen. Beispielsweise wenden Abfragen in kleinen Tabellen keine dynamische Filterung an und ersetzen auch keine inneren Verknüpfungen durch Kreuzverknüpfungen. Dies kann dazu führen, dass die Abfrage das obligatorische Partitionsprädikat verwendet oder Cross-Joins nicht zulässt. In diesem Fall lehnt der strikte Modus die Abfrage ab.
-
Die strenge Modusprüfung wird nur für die Typen SELECT INSERTSELECT, CREATE TABLE AS und EXPLAIN ANALYZE Abfragetypen angewendet.
-
Sie können die Einschränkung für das obligatorische Partitionsprädikat nur mit dem Hive-Konnektor verwenden.