Abfrageergebnisse in Athena wiederverwenden - Amazon Athena

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.

Abfrageergebnisse in Athena wiederverwenden

Wenn Sie eine Abfrage in Athena erneut ausführen, können Sie optional auswählen, ob das zuletzt gespeicherte Abfrageergebnis wiederverwendet werden soll. Diese Option kann die Leistung erhöhen und die Kosten in Bezug auf die Anzahl der gescannten Byte reduzieren. Die Wiederverwendung von Abfrageergebnissen ist beispielsweise dann sinnvoll, wenn Sie wissen, dass sich die Ergebnisse innerhalb eines bestimmten Zeitrahmens nicht ändern werden. Sie können ein Höchstalter für die Wiederverwendung von Abfrageergebnissen festlegen. Athena verwendet das gespeicherte Ergebnis, solange es nicht älter als das von Ihnen angegebene Alter ist. Weitere Informationen finden Sie unter Kosten reduzieren und die Abfrageleistung verbessern mit Amazon Athena im AWS -Big-Data-Blog.

Anmerkung

Das Feature zur Wiederverwendung von Abfrageergebnissen erfordert Athena-Engine-Version 3. Informationen zum Ändern von Engine-Versionen finden Sie unter Athena-Engine-Versionen ändern.

Schlüsselfeatures

  • Die Wiederverwendung von Abfrageergebnissen ist ein Opt-In-Feature pro Abfrage. Sie können die Wiederverwendung von Abfrageergebnissen für jede einzelne Abfrage aktivieren.

  • Das Höchstalter für Abfrageergebnissen kann in Minuten, Stunden oder Tagen angegeben werden. Das Höchstalter, das angegeben werden kann, entspricht 7 Tagen, unabhängig von der verwendeten Zeiteinheit. Der -Standardwert beträgt 60 Minuten.

  • Wenn Sie die Wiederverwendung von Ergebnissen für eine Abfrage aktivieren, sucht Athena nach einer vorherigen Ausführung der Abfrage innerhalb derselben Arbeitsgruppe. Wenn Athena entsprechende gespeicherte Abfrageergebnisse findet, führt es die Abfrage nicht erneut aus, sondern verweist auf den vorherigen Ergebnisspeicherort oder ruft Daten von dort ab.

  • Für jede Abfrage, die die Option zur Wiederverwendung von Ergebnissen aktiviert, verwendet Athena das zuletzt im Arbeitsgruppenordner gespeicherte Abfrageergebnis nur dann wieder, wenn alle folgenden Bedingungen erfüllt sind:

    • Die Abfragezeichenfolge ist eine genaue Übereinstimmung.

    • Die Datenbank und der Katalogname stimmen überein.

    • Das bisherige Ergebnis ist nicht älter als das angegebene Höchstalter, bzw. nicht älter als 60 Minuten, wenn kein Höchstalter angegeben wurde.

    • Athena verwendet nur eine Ausführung wieder, die genau dieselbe Ergebniskonfiguration wie die aktuelle Ausführung aufweist.

    • Sie haben Zugriff auf alle Tabellen, auf die in der Abfrageergebnissen verwiesen wird.

    • Sie haben Zugriff auf den Speicherort der S3-Datei, in dem das vorherige Ergebnis gespeichert ist.

Wenn eine dieser Bedingungen nicht erfüllt ist, führt Athena die Abfrage aus, ohne die zwischengespeicherten Ergebnisse zu verwenden.

Überlegungen und Einschränkungen

Beachten Sie bei der Verwendung des Wiederverwendungsfeatures für Abfrageergebnisse die folgenden Punkte:

  • Athena verwendet Abfrageergebnisse nur innerhalb derselben Arbeitsgruppe wieder.

  • Das Feature zur Wiederverwendung von Abfrageergebnissen berücksichtigt Arbeitsgruppenkonfigurationen. Wenn Sie die Ergebniskonfiguration für eine Abfrage überschreiben, ist das Feature deaktiviert.

  • Nur Abfragen, die Abfrageergebnissätze auf Amazon S3 erzeugen, können Abfrageergebnisse wiederverwenden. Das bedeutet, dass beispielsweise DDL Abfragen CTASINSERT INTO,MERGE,UNLOAD, und nicht unterstützt werden.

  • Apache Hive-, Apache Hudi-, Apache Iceberg- und Delta Lake-Tabellen der Linux Foundation, bei AWS Glue denen sie registriert sind, werden unterstützt. Externe Hive-Metastores werden nicht unterstützt.

  • Abfragen, die auf Verbundkataloge oder einen externen Hive-Metastore verweisen, werden nicht unterstützt.

  • Die Wiederverwendung von Abfrageergebnissen wird für in Lake Formation registrierte Tabellen nicht unterstützt.

  • Die Wiederverwendung von Abfrageergebnissen wird nicht unterstützt, wenn der Amazon-S3-Speicherort der Tabellenquelle als Datenstandort in Lake Formation registriert ist.

  • Tabellen mit Zeilen- und Spaltenberechtigungen werden nicht unterstützt.

  • Tabellen mit detaillierter Zugriffskontrolle (z. B. Spalten- oder Zeilenfilterung) werden nicht unterstützt.

  • Abfragen, die auf eine Tabelle verweisen, die nicht unterstützt wird, sind nicht für die Wiederverwendung von Abfrageergebnissen geeignet.

  • AAthena erfordert, dass Sie über Amazon-S3-Leseberechtigungen verfügen, damit die zuvor generierte Ausgabedatei wiederverwendet werden kann.

  • Die Funktion zur Wiederverwendung von Abfrageergebnissen geht davon aus, dass der Inhalt des vorherigen Ergebnisses nicht geändert wurde. Athena überprüft die Integrität eines früheren Ergebnisses nicht, bevor es verwendet wird.

  • Wenn die Abfrageergebnisse der vorherigen Ausführung gelöscht oder an einen anderen Ort in Amazon S3 verschoben wurden, werden die Abfrageergebnisse bei der nachfolgenden Ausführung derselben Abfrage nicht wiederverwendet.

  • Potenziell veraltete Ergebnisse können zurückgegeben werden. Athena sucht erst nach Änderungen an den Quelldaten, wenn das von Ihnen angegebene maximale Wiederverwendungsalter erreicht ist.

  • Wenn mehrere Ergebnisse zur Wiederverwendung verfügbar sind, verwendet Athena das neueste Ergebnis.

  • Abfragen, die nicht deterministische Operatoren oder Funktionen wie rand() oder shuffle() verwenden, verwenden keine zwischengespeicherten Ergebnisse. Beispielsweise ist LIMIT ohne ORDER BY nicht deterministisch und wird nicht zwischengespeichert, aber LIMIT mit ORDER BY ist deterministisch und wird zwischengespeichert.

  • Die Wiederverwendung von Abfrageergebnissen wird in der Athena-Konsole, in Athena API und im JDBC Treiber unterstützt. Derzeit ist die ODBC Treiberunterstützung für die Wiederverwendung von Abfrageergebnissen nur für Windows verfügbar.

  • Um die Funktion zur Wiederverwendung von Abfrageergebnissen zu verwendenJDBC, ist mindestens die Treiberversion 2.0.34.1000 erforderlich. Für ODBC ist mindestens die Treiberversion 1.1.19.1002 erforderlich. Informationen zum Treiber-Download finden Sie unter Stellen Sie mit Treibern eine Connect zu Amazon Athena ODBC her JDBC.

  • Die Wiederverwendung von Abfrageergebnissen wird für Abfragen, die mehr als einen Datenkatalog verwenden, nicht unterstützt.

  • Die Wiederverwendung von Abfrageergebnissen wird für Abfragen, die mehr als 20 Tabellen enthalten, nicht unterstützt.

So verwenden Sie Abfrageergebnisse in der Athena-Konsole wieder

Um das Feature zu verwenden, aktivieren Sie die Option Reuse query results (Abfrageergebnisse wiederverwenden) im Athena-Abfrage-Editor.

Aktivieren Sie Reuse query results (Abfrageergebnisse wiederverwenden) im Athena-Abfrage-Editor.
So konfigurieren Sie das Feature zur Wiederverwendung von Abfrageergebnissen
  1. Wählen Sie im Athena-Abfrage-Editor unter der Option Reuse query results (Abfrageergebnisse wiederverwenden) das Bearbeitungssymbol neben up to 60 minutes ago (bis zu 60 Minuten vorher) aus.

  2. Wählen Sie im Dialogfeld Edit reuse time (Wiederverwendungszeit bearbeiten) aus dem Feld auf der rechten Seite eine Zeiteinheit (Minuten, Stunden oder Tage) aus.

  3. Geben Sie im Feld auf der linken Seite die Anzahl der Zeiteinheiten ein, die Sie festlegen möchten, oder wählen Sie diese aus. Die maximale Zeit, die Sie eingeben können, entspricht sieben Tagen, unabhängig von der gewählten Zeiteinheit.

    Höchstalter für die Wiederverwendung von Abfrageergebnissen konfigurieren.

    Das folgende Beispiel gibt eine maximale Wiederverwendungsdauer von zwei Tagen an.

    Die Wiederverwendung von Abfrageergebnissen ist für maximal zwei Tage konfiguriert.
  4. Wählen Sie Bestätigen aus.

    Ein Banner bestätigt Ihre Konfigurationsänderung, und die Option Reuse query results (Abfrageergebnisse wiederverwenden) zeigt Ihre neue Einstellung an.

    Neue Einstellung zur Wiederverwendung von Abfrageergebnissen im Athena Abfrageeditor.