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.
Iceberg-Tabellendaten abfragen
Um einen Iceberg-Datensatz abzufragen, verwenden Sie eine SELECT-Standardanweisung wie die folgende. Abfragen folgen der Spezifikation des Apache-Iceberg-Formats
SELECT * FROM [db_name.]table_name[WHEREpredicate]
Um die Abfragezeiten zu optimieren, werden alle Prädikate dorthin verschoben, wo sich die Daten befinden.
Informationen zu Zeitreise und Versionsreiseabfragen finden Sie unter Zeitreisen- und Versionsreiseabfragen durchführen.
Erstellen und Abfragen von Ansichten mit Iceberg-Tabellen
Verwenden Sie zum Erstellen und Abfragen von Athena-Ansichten für Iceberg-Tabellen CREATE VIEW-Ansichten wie in Arbeiten mit Ansichten beschrieben.
Beispiel:
CREATE VIEW view1 AS SELECT * FROMiceberg_table
SELECT * FROM view1
Wenn Sie daran interessiert sind, die Iceberg-Ansicht-Spezifikation
Iceberg-Tabellen-Metadaten abfragen
In einer SELECT-Abfrage können Sie die folgenden Eigenschaften hinter table_name verwenden, um Iceberg-Tabellenmetadaten abzufragen:
-
$files – Zeigt die aktuellen Datendateien einer Tabelle an.
-
$manifests – Zeigt die aktuellen Dateimanifeste einer Tabelle an.
-
$history – Zeigt den Verlauf einer Tabelle an.
-
$partitions – Zeigt die aktuellen Partitionen einer Tabelle an.
-
$snapshots – Zeigt die Snapshots einer Tabelle an.
-
$refs – Zeigt die Verweise einer Tabelle an.
Beispiele
Die folgende Anweisung listet die Dateien für eine Iceberg-Tabelle auf.
SELECT * FROM "dbname"."tablename$files"
Die folgende Anweisung listet das Manifest für eine Iceberg-Tabelle auf.
SELECT * FROM "dbname"."tablename$manifests"
Die folgende Anweisung zeigt die Historie einer Iceberg-Tabelle.
SELECT * FROM "dbname"."tablename$history"
Im folgenden Beispiel werden die Partitionen für eine Iceberg-Tabelle gezeigt.
SELECT * FROM "dbname"."tablename$partitions"
Im folgenden Beispiel werden die Snapshots für eine Iceberg-Tabelle gelistet.
SELECT * FROM "dbname"."tablename$snapshots"
Im folgenden Beispiel werden die Referenzen für eine Iceberg-Tabelle gezeigt.
SELECT * FROM "dbname"."tablename$refs"
Differenzierte Zugriffskontrolle von Lake Formation verwenden
Athena-Engine-Version 3 unterstützt die differenzierte Zugriffskontrolle von Lake Formation mit Iceberg-Tabellen, einschließlich der Sicherheitskontrolle auf Spalten- und Zeilenebene. Diese Zugriffskontrolle funktioniert mit Zeitreiseabfragen und mit Tabellen, die eine Schemaentwicklung durchgeführt haben. Weitere Informationen finden Sie unter Differenzierte Zugriffskontrolle von Lake Formation und Athena-Arbeitsgruppen.
Wenn Sie Ihre Iceberg-Tabelle außerhalb von Athena erstellt haben, verwenden Sie Apache Iceberg SDK