Abfragen eines Data Lake - Amazon Redshift

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.

Abfragen eines Data Lake

Sie können Daten in einem Amazon S3-Data Lake abfragen. Zuerst erstellen Sie ein externes Schema, um auf die externe Datenbank im AWS Glue Data Catalog zu verweisen. Anschließend können Sie Daten im Amazon S3-Data Lake abfragen.

Demo: Einen Data Lake abfragen

Weitere Informationen zum Abfragen eines Data Lake finden Sie im folgenden Video.

Voraussetzungen

Bevor Sie mit Ihrem Data Lake in Query Editor v2 arbeiten, vergewissern Sie sich, dass in Ihrer Amazon-Redshift-Umgebung Folgendes eingerichtet wurde:

  • Crawling Ihrer Amazon-S3-Daten unter Verwendung von AWS Glue und Aktivieren Ihres Datenkatalogs für AWS Lake Formation.

  • Erstellen einer IAM-Rolle für Amazon Redshift unter Verwendung des AWS Glue-aktivierten Datenkatalogs für AWS Lake Formation Weitere Informationen zu diesem Verfahren finden Sie unter So erstellen Sie eine IAM-Rolle für Amazon Redshift mit einem für AWS Lake Formation aktivierten AWS Glue Data Catalog. Weitere Informationen zur Verwendung von Redshift Spectrum und Lake Formation finden Sie unter Verwendung von Redshift Spectrum mit AWS Lake Formation.

  • Gewähren von SELECT-Berechtigungen für die Tabelle, um diese in der Lake-Formation-Datenbank abzufragen. Weitere Informationen zu diesem Verfahren finden Sie unter So gewähren Sie SELECT-Berechtigungen für eine Tabelle, um diese in der Lake-Formation-Datenbank abzufragen.

    Sie können in der Lake-Formation-Konsole (https://console.aws.amazon.com/lakeformation/) im Abschnitt Berechtigungen auf der Seite Data-Lake-Berechtigungen überprüfen, ob die IAM-Rolle, die AWS Glue-Datenbank und die Tabellen über die richtigen Berechtigungen verfügen.

  • Bestätigung, dass Ihr verbundener Benutzer berechtigt ist, Schemata in der Amazon-Redshift-Datenbank zu erstellen und auf Daten in Ihrem Data Lake zuzugreifen. Wenn Sie in Query Editor v2 eine Verbindung zu einer Datenbank herstellen, wählen Sie eine Authentifizierungsmethode aus, die Anmeldeinformationen beinhaltet. Dabei kann es sich um einen Datenbankbenutzer oder einen IAM-Benutzer handeln. Der verbundene Benutzer muss über die richtigen Berechtigungen und Datenbankrechte verfügen, wie z. B. superuser. Der admin-Benutzer von Amazon Redshift, der den Cluster oder die Arbeitsgruppe erstellt hat, verfügt über superuser-Berechtigungen und kann Schemata erstellen und die Redshift-Datenbank verwalten. Weitere Informationen zum Herstellen einer Verbindung zu einer Datenbank mit Query Editor v2 finden Sie unter Herstellen einer Verbindung mit einer Amazon-Redshift-Datenbank.

Erstellen eines externen Schemas

Um Daten in einem Amazon S3 Data Lake abzufragen, erstellen Sie zunächst ein externes Schema. Ein externes Schema verweist auf eine Datenbank in einem externen AWS Glue Data Catalog.

  1. Wählen Sie in der Editor-Ansicht von Query Editor v2 die Option CreateErstellen und dann Schema aus.

  2. Geben Sie einen Schema name (Schemennamen) ein.

  3. Wählen Sie unter Schematyp die Option Extern aus.

  4. Unter den Details für den Datenkatalog wird für Region standardmäßig die AWS-Region verwendet, in der sich Ihre Redshift-Datenbank befindet.

  5. Wählen Sie die AWS Glue-Datenbank aus, der das externe Schema zugeordnet werden soll und die Verweise auf die AWS Glue-Tabellen enthält.

  6. Wählen Sie eine IAM-Rolle für Amazon Redshift aus, die über die erforderlichen Berechtigungen zum Abfragen von Daten in Amazon S3 verfügt.

  7. Wählen Sie optional eine IAM-Rolle aus, die über die Berechtigung für den Datenkatalog verfügt.

  8. Wählen Sie Create schema (Schema erstellen) aus.

    Das Schema wird in der Strukturansicht unter Ihrer Datenbank angezeigt.

Wenn Sie beim Erstellen des Schemas die Fehlermeldung „Berechtigung verweigert“ für Ihre Datenbank erhalten, überprüfen Sie, ob der verbundene Benutzer über die Datenbankberechtigung zum Erstellen eines Schemas verfügt.

Abfragen Ihrer Daten in Amazon S3-Data Lake

Verwenden Sie das Schema, das Sie im vorherigen Verfahren erstellt haben.

  1. Wählen Sie in der Strukturansicht das Schema aus.

  2. Um eine Tabellendefinition anzuzeigen, wählen Sie eine Tabelle aus. Die Tabellenspalten und Datentypen werden angezeigt.

  3. Um eine Tabelle abzufragen, wählen Sie die Tabelle aus und wählen Sie im Kontextmenü (Rechtsklickmenü) Tabelle auswählen aus, um eine Abfrage zu generieren.

  4. Führen Sie die Abfrage im Editor aus.

    Das folgende Beispiel-SQL wurde von Query Editor v2 generiert, um alle Zeilen in der AWS Glue-Tabelle flightscsv abzufragen. In der Ausgabe sind die Spalten und Zeilen der Einfachheit halber verkürzt.

    SELECT * FROM "dev"."mydatalake_schema"."flightscsv"; year quarter month dom day_of_week fl_date unique_carrier airline_id carrier tail_num fl_num 2016 4 10 19 3 10/19/16 OO 20304 OO N753SK 3086 2016 4 10 19 3 10/19/16 OO 20304 OO N753SK 3086 2016 4 10 19 3 10/19/16 OO 20304 OO N778SK 3087 2016 4 10 19 3 10/19/16 OO 20304 OO N778SK 3087 ...