Abfragen von Metadatentabellen mit AWS-Analysediensten
Sie können Ihre von S3 verwalteten Metadatentabellen mit AWS-Analysediensten wie Amazon Athena, Amazon Redshift und Amazon EMR abfragen.
Bevor Sie Abfragen ausführen können, müssen Sie zunächst die AWS-verwalteten S3-Tabellen-Buckets in Ihrer Region AWS-Konto und AWS mit den Analytikservices integrieren.
Abfragen von Metadatentabellen mit Amazon Athena
Nachdem Sie Ihre von AWS verwalteten S3-Tabellen-Buckets in AWS-Analytikservices integriert haben, können Sie mit der Abfrage Ihrer Metadatentabellen in Athena beginnen. Gehen Sie bei Ihren Abfragen wie folgt vor:
-
Geben Sie Ihren Katalog als
s3tablescatalog/aws-s3und Ihre Datenbank alsb_an (dies ist normalerweise der Namespace für Ihre Metadatentabellen).general_purpose_bucket_name
-
Stellen Sie sicher, dass Sie die Namespace-Namen Ihrer Metadatentabellen in Anführungszeichen (
") oder Backticks (`) setzen, da die Abfrage sonst möglicherweise nicht funktioniert.
Weitere Informationen finden Sie unter Abfragen von Amazon-S3-Tabellen mit Athena.
Sie können Abfragen in Athena auch von der Amazon-S3-Konsole aus ausführen.
Das folgende Verfahren verwendet die Amazon-S3-Konsole, um auf den Athena-Abfrage-Editor zuzugreifen, sodass Sie eine Tabelle mit Amazon Athena abfragen können.
So fragen Sie eine Metadatentabelle ab
Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie im linken Navigationsbereich Allzweck-Buckets aus.
-
Wählen Sie auf der Registerkarte Allzweck-Bucket den Bucket, der die Metadatenkonfiguration für die abzufragende Metadatentabelle enthält.
-
Wählen Sie auf der Bucket-Detailseite die Registerkarte Metadaten.
-
Wählen Sie Tabelle mit Athena abfragen, und wählen Sie dann eine der Musterabfragen für Journal- oder Bestandstabellen.
-
Die Amazon Athena-Konsole wird geöffnet und der Athena-Abfrage-Editor wird mit einer geladenen Beispielabfrage angezeigt. Ändern Sie diese Abfrage nach Bedarf für Ihren Anwendungsfall.
Im Abfrage-Editor sollte das Feld Katalog mit s3tablescatalog/aws-s3ausgefüllt werden. Das Datenbankfeld sollte mit dem Namespace gefüllt werden, in dem Ihre Tabelle gespeichert ist (z. B. b_
general-purpose-bucket-name).Anmerkung
Wenn Sie diese Werte nicht in den Feldern Katalog und Datenbank sehen, stellen Sie sicher, dass Sie Ihren AWS-verwalteten Tabellen-Bucket mit den Analytikservices in dieser Region integriert haben. AWS Weitere Informationen finden Sie unter Integrieren von Amazon S3 Tables mit AWS-Analytikservices.
-
Wählen Sie dann Run (Ausführen) aus, um die Abfrage auszuführen.
Anmerkung
-
Wenn Sie folgende Fehlermeldung erhalten:
„Unzureichende Berechtigungen zum Ausführen der Abfrage. Prinzipal hat keine Rechte für die angegebene Ressource.“wenn Sie versuchen, eine Abfrage in Athena auszuführen, müssen Ihnen die erforderlichen Lake-Formation-Berechtigungen für die Tabelle erteilt werden. Weitere Informationen finden Sie unter Erteilen der Lake Formation-Berechtigung für eine Tabelle oder Datenbank.Stellen Sie außerdem sicher, dass Sie über die entsprechenden AWS Identity and Access Management (IAM)-Berechtigungen verfügen, um Metadatentabellen abzufragen. Weitere Informationen finden Sie unter Berechtigungen für die Abfrage von Metadatentabellen.
-
Wenn Sie beim Versuch, die Abfrage auszuführen, die Fehlermeldung
„Iceberg kann nicht auf die angeforderte Ressource zugreifen“erhalten, rufen Sie die AWS Lake Formation-Konsole auf und vergewissern Sie sich, dass Sie sich selbst Berechtigungen für den Tabellen-Bucket-Katalog und die Datenbank (Namespace) erteilt haben, die Sie erstellt haben. Geben Sie bei der Gewährung dieser Berechtigungen keine Tabelle an. Weitere Informationen finden Sie unter Erteilen der Lake Formation-Berechtigung für eine Tabelle oder Datenbank.
-
Abfragen von Metadatentabellen mit Amazon Redshift
Nachdem Sie Ihre AWS-verwalteten S3-Tabellen-Buckets in die AWS-Analytikservices integriert haben, gehen Sie wie folgt vor:
-
Erstellen Sie einen Ressourcenlink zu Ihrem Metadatentabellen-Namespace (normalerweise
b_).general_purpose_bucket_name -
Stellen Sie sicher, dass Sie die Namespace-Namen Ihrer Metadatentabellen in Anführungszeichen (
") oder Backticks (`) setzen, da die Abfrage sonst möglicherweise nicht funktioniert.
Danach können Sie mit der Abfrage Ihrer Metadaten-Tabellen in der Amazon Redshift-Konsole beginnen. Weitere Informationen finden Sie unter Zugreifen auf Amazon-S3-Tabellen mit Amazon Redshift.
Abfragen von Metadatentabellen mit Amazon EMR
Um Ihre Metadatentabellen mithilfe von Amazon EMR abzufragen, erstellen Sie einen für Apache Iceberg konfigurierten Amazon-EMR-Cluster und stellen mithilfe von Apache Spark eine Verbindung zu Ihren Metadatentabellen her. Sie können dies einrichten, indem Sie Ihre von AWS verwalteten S3-Tabellen-Buckets in AWS-Analytikservices integrieren oder den Open-Source Amazon S3 Tables Catalog für den Iceberg-Client-Katalog verwenden.
Anmerkung
Wenn Sie Apache Spark Amazon EMR oder andere Engines von Drittanbietern verwenden, um Ihre Metadatentabellen abzufragen, empfehlen wir Ihnen, den Iceberg REST-Endpunkt Amazon S3 Tables zu verwenden. Ihre Abfrage wird möglicherweise nicht erfolgreich ausgeführt, wenn Sie diesen Endpunkt nicht verwenden. Weitere Informationen finden Sie unter Zugreifen auf Tabellen über den Amazon S3 Tables Iceberg REST-Endpunkt.
Weitere Informationen finden Sie unter Zugreifen auf Amazon-S3-Tabellen mit Amazon EMR.