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.
Integration von Amazon S3-Tabellen mit AWS Analytik-Dienste
In diesem Thema werden die Voraussetzungen und Verfahren behandelt, die für die Integration Ihrer Amazon S3-Tabellen-Buckets mit AWS Analysediensten erforderlich sind. Eine Übersicht über die Funktionsweise der Integration finden Sie unterÜberblick über die Integration von S3 Tables.
Anmerkung
Diese Integration nutzt die AWS Glue Data Catalog und kann AWS Glue Anforderungs- und Speicherkosten verursachen. Weitere Informationen finden Sie unter AWS Glue – Preise
Für die Ausführung von Abfragen auf S3-Tabellen fallen zusätzliche Preise an. Weitere Informationen finden Sie in den Preisinformationen für die von Ihnen verwendete Query Engine.
Voraussetzungen für die Integration
Die folgenden Voraussetzungen sind erforderlich, um Tabellen-Buckets in AWS Analysedienste zu integrieren:
Fügen Sie Ihrem AWS Identity and Access Management (IAM-) Principal die folgenden AWS Glue Berechtigungen hinzu:
glue:CreateCatalogwas erforderlich ist, um einens3tablescatalogVerbundkatalog im Datenkatalog zu erstellenglue:PassConnectiongewährt dem aufrufenden Principal das Recht, dieaws:s3tablesVerbindungsherstellung an den Amazon S3-Service zu delegieren.
Aktualisieren Sie auf die neueste Version von AWS Command Line Interface (AWS CLI).
Wichtig
Achten Sie beim Erstellen von Tabellen darauf, dass Sie in Ihren Tabellennamen und Tabellendefinitionen ausschließlich Kleinbuchstaben verwenden. Stellen Sie beispielsweise sicher, dass Ihre Spaltennamen ausschließlich in Kleinbuchstaben geschrieben sind. Wenn Ihr Tabellenname oder Ihre Tabellendefinition Großbuchstaben enthält, wird die Tabelle von AWS Lake Formation oder von nicht unterstützt AWS Glue Data Catalog. In diesem Fall ist Ihre Tabelle für AWS Analysedienste wie Amazon Athena nicht sichtbar, auch wenn Ihre Tabellen-Buckets in AWS Analysedienste integriert sind.
Wenn Ihre Tabellendefinition Großbuchstaben enthält, erhalten Sie beim Ausführen einer SELECT Abfrage in Athena die folgende Fehlermeldung: „GENERIC_INTERNAL_ERROR: Get table request failed: com.amazonaws.services.glue.model. ValidationException: Nicht unterstützte Verbundressource — Ungültige Tabellen- oder Spaltennamen.“
Integrieren von Tabellen-Buckets mit AWS Analytik-Dienste
Sie können Tabellen-Buckets standardmäßig mithilfe von IAM-Zugriffskontrollen in Data Catalog- und AWS Analysedienste integrieren. Optional können Sie auch Lake Formation-Zugriffskontrollen verwenden.
Bei der Integration mithilfe von IAM-Zugriffskontrollen benötigen Sie IAM-Rechte, um auf Amazon S3-Tabellen-Buckets und -Tabellen, Data Catalog-Objekte und die von Ihnen verwendete Abfrage-Engine zuzugreifen. Wenn Sie sich für die Integration mithilfe von Lake Formation entscheiden, bestimmen sowohl IAM-Zugriffskontrollen als auch Lake Formation-Zuweisungen den Zugriff auf Datenkatalogressourcen. Weitere Informationen zur Lake Formation-Integration finden Sie im AWS Lake Formation Entwicklerhandbuch .
In den folgenden Abschnitten wird beschrieben, wie Sie die Amazon S3-Managementkonsole verwenden oder AWS CLI die Integration mit IAM-Zugriffskontrollen konfigurieren können.
Öffnen Sie die Amazon S3-Konsole unter https://console.aws.amazon.com/s3/
. Wählen Sie im linken Navigationsbereich Tabellen-Buckets aus.
Wählen Sie Tabellen-Bucket erstellen aus.
Anschließend wird die Seite Tabellen-Bucket erstellen geöffnet.
Geben Sie einen Namen für den Tabellen-Bucket ein und stellen Sie sicher, dass das Kontrollkästchen Integration aktivieren ausgewählt ist.
Wählen Sie Tabellen-Bucket erstellen aus. Amazon S3 versucht daraufhin, Ihre Tabellen-Buckets automatisch in diese Region zu integrieren.
Um Tabellen-Buckets mit IAM-Zugriffskontrollen zu integrieren, verwenden Sie den AWS CLI
Die folgenden Schritte zeigen, wie Sie die zum Integrieren von AWS CLI Tabellen-Buckets verwenden. Wenn Sie diese Schritte verwenden wollen, ersetzen Sie durch Ihre eigenen Informationen.user input placeholders
Erstellen Sie einen Tabellen-Bucket.
aws s3tables create-table-bucket \ --regionus-east-1\ --nameamzn-s3-demo-table-bucket-
Erstellen Sie eine Datei, die
catalog.jsonheißt und den folgenden Katalog enthält:{ "Name": "s3tablescatalog", "CatalogInput": { "FederatedCatalog": { "Identifier": "arn:aws:s3tables:us-east-1:111122223333:bucket/*", "ConnectionName": "aws:s3tables" }, "CreateDatabaseDefaultPermissions":[ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": ["ALL"] } ], "CreateTableDefaultPermissions":[ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": ["ALL"] } ], "AllowFullTableExternalDataAccess": "True" } }Erstellen Sie den
s3tablescatalog-Katalog mit dem folgenden Befehl. Beim Erstellen dieses Katalogs wird der AWS Glue Data Catalog mit Objekten gefüllt, die Tabellen-Buckets, Namespaces und Tabellen entsprechen.aws glue create-catalog \ --regionus-east-1\ --cli-input-json file://catalog.json Stellen Sie mithilfe des folgenden Befehls sicher, dass der
s3tablescatalogKatalog hinzugefügt wurde: AWS Glueaws glue get-catalog --catalog-id s3tablescatalog
Der Integrationsprozess für AWS Analytics Services wurde aktualisiert und verwendet nun standardmäßig IAM-Berechtigungen. Wenn Sie die Integration bereits eingerichtet haben, können Sie Ihre aktuelle Integration weiterhin verwenden. Wenn Sie jedoch Ihre bestehende Integration so ändern möchten, dass stattdessen IAM-Berechtigungen verwendet werden, finden Sie im AWS Lake Formation Entwicklerhandbuch weitere Informationen. Sie können die Integration auch wiederholen, um Ihr vorhandenes Setup zu löschen AWS Glue Data Catalog AWS Lake Formation und die Integration erneut auszuführen. Dadurch werden alle vorhandenen Lake Formation-Zuschüsse und die damit verbundenen Zugriffsberechtigungen für entfernt. s3tablescatalog
-
Öffnen Sie die AWS Lake Formation Konsole unter https://console.aws.amazon.com/lakeformation/
und melden Sie sich als Data Lake-Administrator an. Weitere Informationen zum Erstellen eines Data Lake-Administrators finden Sie unter Erstellen eines Data Lake-Administrators im AWS Lake Formation -Entwicklerhandbuch. -
Gehen Sie wie folgt vor, um Ihren
s3tablescatalogKatalog zu löschen:-
Wählen Sie im linken Navigationsbereich Kataloge aus.
-
Wählen Sie in der Katalogliste das Optionsfeld neben dem
s3tablescatalogKatalog aus. Wählen Sie im Menü Actions die Option Delete.
-
-
Gehen Sie wie folgt vor, um die Registrierung des Datenspeicherorts für den
s3tablescatalogKatalog aufzuheben:-
Gehen Sie im linken Navigationsbereich zum Abschnitt Administration und wählen Sie Data Lake-Standorte aus.
-
Bitte wählen Sie die Optionsschaltfläche neben dem Speicherort des
s3tablescatalog-Data-Lake, beispielsweises3://tables:.region:account-id:bucket/* -
Wählen Sie im Menü Aktionen die Option Entfernen.
-
Wählen Sie im angezeigten Bestätigungsdialogfeld die Option Entfernen.
-
-
Nachdem Sie Ihren
s3tablescatalogKatalog und Ihren Data Lake-Standort gelöscht haben, können Sie die Schritte zur Integration Ihrer Tabellen-Buckets in AWS Analysedienste mithilfe des aktualisierten Integrationsprozesses ausführen.
Anmerkung
Wenn Sie mit SSE-KMS verschlüsselten Tabellen in integrierten AWS Analysediensten arbeiten möchten, muss die Rolle, die Sie verwenden, über die Berechtigung verfügen, Ihren AWS KMS Schlüssel für Verschlüsselungsvorgänge zu verwenden. Weitere Informationen finden Sie unter Erteilen von IAM-Prinzipalen Berechtigungen für die Arbeit mit verschlüsselten Tabellen in Integrated AWS Analysedienste.