View a markdown version of this page

Integration von Amazon S3 S3-Tabellen mit AWS Analysediensten - Amazon Simple Storage Service

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 S3-Tabellen mit AWS Analysediensten

In diesem Thema werden die Voraussetzungen und Verfahren behandelt, die für die Integration Ihrer Amazon S3 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

Bei dieser Integration werden die verwendet AWS Glue Data Catalog und es können AWS Glue Anforderungs- und Speicherkosten anfallen. Weitere Informationen finden Sie unter AWS Glue  – Preise.

Für die Ausführung von Abfragen in 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:

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 der nicht unterstützt AWS Glue Data Catalog. In diesem Fall ist Ihre Tabelle für AWS Analysedienste wie Amazon Athena nicht sichtbar, selbst 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 Analysediensten AWS

Sie können Tabellen-Buckets standardmäßig mithilfe von IAM-Zugriffskontrollen in Datenkatalog- und AWS Analyseservices integrieren oder optional Lake Formation Formation-Zugriffskontrollen verwenden.

Wenn Sie mithilfe von IAM-Zugriffskontrollen integrieren, benötigen Sie IAM-Rechte für den Zugriff auf Amazon S3 S3-Tabellen-Buckets und -Tabellen, Datenkatalogobjekte und die von Ihnen verwendete Abfrage-Engine. Wenn Sie sich für die Integration mithilfe von Lake Formation entscheiden, bestimmen sowohl IAM-Zugriffskontrollen als auch Lake Formation Formation-Grants den Zugriff auf Data Catalog-Ressourcen. Weitere Informationen zur Integration von Lake Formation finden Sie im AWS Lake Formation Entwicklerhandbuch.

In den folgenden Abschnitten wird beschrieben, wie Sie die Amazon S3 S3-Managementkonsole verwenden oder AWS CLI die Integration mit IAM-Zugriffskontrollen konfigurieren können.

  1. Öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie im linken Navigationsbereich Tabellen-Buckets aus.

  3. Wählen Sie Tabellen-Bucket erstellen aus.

    Anschließend wird die Seite Tabellen-Bucket erstellen geöffnet.

  4. Geben Sie einen Namen für den Tabellen-Bucket ein und stellen Sie sicher, dass das Kontrollkästchen Integration aktivieren ausgewählt ist.

  5. 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 AWS CLI

Die folgenden Schritte zeigen, wie Sie mit dem AWS CLI Tabellen-Buckets integrieren können. Wenn Sie diese Schritte verwenden wollen, ersetzen Sie user input placeholders durch Ihre eigenen Informationen.

  1. Erstellen Sie einen Tabellen-Bucket.

    aws s3tables create-table-bucket \ --region us-east-1 \ --name amzn-s3-demo-table-bucket
  2. Erstellen Sie eine Datei, die catalog.json heiß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 werden Objekte angezeigt, die AWS Glue Data Catalog Tabellen-Buckets, Namespaces und Tabellen entsprechen.

    aws glue create-catalog \ --region us-east-1 \ --cli-input-json file://catalog.json
  3. Vergewissern Sie sich, dass der s3tablescatalog Katalog hinzugefügt wurde, AWS Glue indem Sie den folgenden Befehl verwenden:

    aws 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 Ihre bestehende Integration jedoch so ändern möchten, dass sie stattdessen IAM-Berechtigungen verwendet, finden Sie weitere Informationen im AWS Lake Formation Entwicklerhandbuch. 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 bestehenden Lake Formation Formation-Zuschüsse und die damit verbundenen Zugriffsberechtigungen für die entfernts3tablescatalog.

  1. Ö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.

  2. Gehen Sie wie folgt vor, um Ihren s3tablescatalog Katalog zu löschen:

    • Wählen Sie im linken Navigationsbereich Kataloge aus.

    • Wählen Sie in der Katalogliste das Optionsfeld neben dem s3tablescatalog Katalog aus. Wählen Sie im Menü Actions die Option Delete.

  3. Gehen Sie wie folgt vor, um die Registrierung des Datenspeicherorts für den s3tablescatalog Katalog 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, beispielsweise s3://tables:region:account-id:bucket/*.

    • Wählen Sie im Menü Aktionen die Option Entfernen.

    • Wählen Sie im angezeigten Bestätigungsdialogfeld die Option Entfernen.

  4. Nachdem Sie Ihren s3tablescatalog Katalog und den Data Lake-Speicherort gelöscht haben, können Sie die Schritte zur Integration Ihrer Table-Buckets in AWS Analytics-Services mithilfe des aktualisierten Integrationsprozesses ausführen.

Anmerkung

Wenn Sie mit SSE-KMS-verschlüsselten Tabellen in integrierten AWS Analysediensten arbeiten möchten, benötigt die Rolle, die Sie verwenden, die Berechtigung, Ihren AWS KMS Schlüssel für Verschlüsselungsvorgänge zu verwenden. Weitere Informationen finden Sie unter Erteilen von Berechtigungen für IAM-Prinzipale, mit verschlüsselten Tabellen in integrierten AWS Analysediensten zu arbeiten.