Optimierung der parallel Abfrage in Aurora My SQL - Amazon Aurora

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.

Optimierung der parallel Abfrage in Aurora My SQL

Um Ihren DB-Cluster für parallel Abfragen zu optimieren, sollten Sie überlegen, welche DB-Cluster von parallel Abfragen profitieren würden und ob Sie ein Upgrade für parallel Abfragen durchführen sollten. Optimieren Sie dann Ihre Arbeitslast und erstellen Sie Schemaobjekte für parallel Abfragen.

Planen eines Parallel Query-Clusters

Bei der Planung eines DB-Clusters mit aktivierter paralleler Abfrage müssen einige Entscheidungen getroffen werden. Dazu gehören die Durchführung von Einrichtungsschritten (entweder das Erstellen oder Wiederherstellen eines vollständigen Aurora My SQL Clusters) und die Entscheidung, in welchem Umfang parallel Abfragen in Ihrem DB-Cluster aktiviert werden sollen.

Berücksichtigen Sie bei der Planung Folgendes:

  • Wenn Sie Aurora My verwendenSQL, das mit My SQL 5.7 kompatibel ist, müssen Sie Aurora My SQL 2.09 oder höher wählen. In diesem Fall erstellen Sie immer einen bereitgestellten Cluster. Anschließend aktivieren Sie die parallele Abfrage mit dem Parameter aurora_parallel_query.

    Wenn Sie bereits über einen Aurora SQL My-Cluster verfügen, auf dem Version 2.09 oder höher ausgeführt wird, müssen Sie keinen neuen Cluster erstellen, um parallel Abfragen zu verwenden. Sie können Ihren Cluster oder bestimmte DB-Instances im Cluster einer Parametergruppe zuordnen, bei der der Parameter aurora_parallel_query aktiviert ist. Dadurch können Sie die Zeit und den Aufwand für die Einrichtung der relevanten Daten für die parallele Abfrage reduzieren.

  • Planen Sie alle großen Tabellen, die neu organisiert werden müssen, damit Sie die parallele Abfrage verwenden können, wenn Sie auf diese zugreifen. Möglicherweise müssen Sie neue Versionen einiger großer Tabellen erstellen, bei denen die parallele Abfrage nützlich ist. Beispielsweise müssen Sie möglicherweise Volltextsuchindizes entfernen. Details hierzu finden Sie unter Erstellen von Schema-Objekten, mit denen die Vorteile von Parallel Query genutzt werden können.

Überprüfung der Kompatibilität SQL von Aurora My Version für parallel Abfragen

Um zu überprüfen, welche Aurora SQL My-Versionen mit parallel Abfrageclustern kompatibel sind, verwenden Sie den describe-db-engine-versions AWS CLI Befehl und überprüfen Sie den Wert des SupportsParallelQuery Felds. Das folgende Codebeispiel zeigt, wie überprüft werden kann, welche Kombinationen für parallel Abfragecluster in einer bestimmten AWS Region verfügbar sind. Stellen Sie sicher, dass Sie die vollständige --query-Parameterzeichenfolge in einer einzigen Zeile angeben.

aws rds describe-db-engine-versions --region us-east-1 --engine aurora-mysql \ --query '*[]|[?SupportsParallelQuery == `true`].[EngineVersion]' --output text

Die vorhergehenden Befehle erzeugen eine Ausgabe, die der folgenden ähnelt: Die Ausgabe kann variieren, je nachdem, welche Aurora SQL My-Versionen in der angegebenen AWS Region verfügbar sind.

5.7.mysql_aurora.2.11.1 8.0.mysql_aurora.3.01.0 8.0.mysql_aurora.3.01.1 8.0.mysql_aurora.3.02.0 8.0.mysql_aurora.3.02.1 8.0.mysql_aurora.3.02.2 8.0.mysql_aurora.3.03.0

Nachdem Sie angefangen haben, die parallele Abfrage mit einem Cluster zu verwenden, können Sie die Leistung überwachen und Hindernisse bei der Nutzung der parallelen Abfrage beseitigen. Diese Anweisungen finden Sie unter Optimierung der Abfrageleistung fürParallel Query.

Wichtige Punkte bei einem Upgrade für parallele Abfragen

Abhängig von der Original- und Zielversionen beim Upgrade eines parallelen Abfrage-Clusters finden Sie möglicherweise Verbesserungen bei den Abfragetypen, die parallele Abfragen optimieren können. Möglicherweise müssen Sie auch feststellen, dass Sie keinen speziellen Engine-Modusparameter für parallele Abfragen angeben müssen. In den folgenden Abschnitten werden die Überlegungen beim Upgrade eines Clusters erläutert, bei dem die parallele Abfrage aktiviert ist.

parallel Abfragecluster auf Aurora My SQL Version 3 aktualisieren

Verschiedene SQL Anweisungen, Klauseln und Datentypen bieten ab Aurora My SQL Version 3 eine neue oder verbesserte Unterstützung für parallel Abfragen. Prüfen Sie beim Upgrade von einer Version, die vor Version 3 liegt, ob zusätzliche Abfragen von parallelen Abfrageoptimierungen profitieren können. Informationen zu diesen Erweiterungen für parallele Abfragen finden Sie unter Spaltendatentypen, Partitionierte Tabellen und Aggregatfunktionen, GROUP BY-Klauseln und HAVING Klauseln.

Wenn Sie einen Cluster für parallel Abfragen von Aurora My SQL 2.08 oder niedriger aktualisieren, erfahren Sie auch mehr über die Änderungen bei der Aktivierung der parallel Abfrage. Lesen Sie dazu Upgrade auf Aurora My SQL 2.09 und höher.

In Aurora My SQL Version 3 ist die Hash-Join-Optimierung standardmäßig aktiviert. Die Konfigurationsoption aurora_disable_hash_join aus früheren Versionen wird nicht verwendet.

Upgrade auf Aurora My SQL 2.09 und höher

In Aurora My SQL Version 2.09 und höher funktioniert die parallel Abfrage für bereitgestellte Cluster und erfordert den parallelquery Engine-Modus-Parameter nicht. Daher müssen Sie keinen neuen Cluster erstellen oder aus einem vorhandenen Snapshot wiederherstellen, um die parallele Abfrage mit diesen Versionen verwenden zu können. Sie können die unter Aktualisierung der Nebenversion oder des Patch-Levels eines Aurora My SQL DB-Clusters beschriebenen Upgrade-Verfahren verwenden, um den Cluster auf eine solche Version zu aktualisieren. Sie können einen älteren Cluster aktualisieren, unabhängig davon, ob es sich um einen Parallelabfragecluster oder um einen bereitgestellten Cluster handelte. Um die Anzahl der Optionen im Menü Engine-Version zu reduzieren, können Sie Versionen anzeigen, die die parallele Abfrage unterstützen auswählen, um die Einträge in diesem Menü zu filtern. Wählen Sie dann Aurora My SQL 2.09 oder höher.

Nachdem Sie einen früheren Cluster für parallel Abfragen auf Aurora My SQL 2.09 oder höher aktualisiert haben, aktivieren Sie die parallel Abfrage im aktualisierten Cluster. Die parallele Abfrage ist in diesen Versionen standardmäßig deaktiviert, und die Vorgehensweise zum Aktivieren ist anders. Die Hash-Join-Optimierung ist ebenfalls standardmäßig deaktiviert und muss separat aktiviert werden. Stellen Sie daher sicher, dass Sie diese Einstellungen nach dem Upgrade wieder aktivieren. Anweisungen dazu finden Sie unter parallel Abfragen in Aurora My ein- und ausschalten SQL und Hash-Join für parallele Abfrage-Cluster aktivieren.

Insbesondere schalten Sie die parallele Abfrage mithilfe der Konfigurationsparameter aurora_parallel_query=ON und aurora_disable_hash_join=OFF anstelle von aurora_pq_supported und aurora_pq ein. Die aurora_pq Parameter aurora_pq_supported und sind in den neueren Aurora SQL My-Versionen veraltet.

Im aktualisierten Cluster weist das Attribut EngineMode den Wert provisioned anstelle von parallelquery auf. Um zu überprüfen, ob die parallel Abfrage für eine bestimmte Engine-Version verfügbar ist, überprüfen Sie jetzt den Wert des SupportsParallelQuery Felds in der Ausgabe des describe-db-engine-versions AWS CLI Befehls. In früheren SQL Versionen von Aurora My haben Sie geprüft, ob parallelquery in der SupportedEngineModes Liste von vorhanden ist.

Nach dem Upgrade auf Aurora My SQL Version 2.09 oder höher können Sie die folgenden Funktionen nutzen. Diese Funktionen sind für parallel Abfragecluster, auf denen ältere Aurora SQL My-Versionen ausgeführt werden, nicht verfügbar.

Optimierung der Abfrageleistung fürParallel Query

Um mit Parallel Query die Abarbeitung einer Workload beeinflussen zu können, müssen Sie überlegen, wie Sie Parallel Query für die Abfragen einsetzen, bei denen diese Optimierung den größten Effekt hat.

Gehen Sie dazu wie folgt vor:

Erstellen von Schema-Objekten, mit denen die Vorteile von Parallel Query genutzt werden können

Bevor Sie Tabellen erstellen oder ändern, die Sie für die parallele Abfrage verwenden möchten, sollten Sie sich mit den unter Voraussetzungen und Einschränkungen beschriebenen Anforderungen vertraut machen.

Wenn Sie Parallelabfragen starten, müssen Tabellen die Einstellungen ROW_FORMAT=Compact oder ROW_FORMAT=Dynamic verwenden. Öffnen Sie deshalb die Konfigurationseinstellungen von Aurora und prüfen Sie, ob an der Konfigurationsoption INNODB_FILE_FORMAT Änderungen vorgenommen wurden. Geben Sie die Anweisung SHOW TABLE STATUS aus, um das Zeilenformat aller Tabellen einer Datenbank zu bestätigen.

Bevor Sie Ihr Schema ändern, um die parallele Abfrage zu aktivieren, um mit mehr Tabellen zu arbeiten, stellen Sie sicher, dass Sie es testen. Ihre Tests sollten bestätigen, ob die parallele Abfrage zu einer besseren Nettoleistung für diese Tabellen führt. Stellen Sie außerdem sicher, dass die Schema-Anforderungen an Parallel Query mit Ihren Zielen vereinbar sind.

Zum Beispiel: Prüfen Sie vor der Umstellung von ROW_FORMAT=Compressed auf ROW_FORMAT=Compact oder ROW_FORMAT=Dynamic die Leistung von Workloads anhand der ursprünglichen und der neuen Tabellen. Berücksichtigen Sie außerdem eventuelle sonstige Effekte (z. B. erhöhtes Datenvolumen).