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.
Verwenden von Amazon S3 S3-Tabellen mit AWS Analysediensten
Anmerkung
Die Integration mit AWS Analysediensten für Tabellen-Buckets befindet sich in der Vorschauversion und kann sich ändern.
Um die Tabellen in Ihrem Konto für AWS Analysedienste zugänglich zu machen, integrieren Sie Ihre Tabellen-Buckets mit AWS Glue Data Catalog und. AWS Lake Formation Sie können diese Integration verwenden, um mit Ihren S3 Tables in diesen Diensten zu arbeiten:
Anmerkung
Bei dieser Integration werden die AWS Lake Formation Dienste AWS Glue und verwendet und es können AWS Glue Anforderungs- und Speicherkosten anfallen. Weitere Informationen finden Sie unter AWS Glue -Preisgestaltung
Für die Ausführung von Abfragen in Ihren S3 Tables fallen zusätzliche Preise an. Weitere Informationen finden Sie unter Preisinformationen für die von Ihnen verwendete Abfrage-Engine.
Funktionsweise der Integration
Wenn Sie in der Konsole einen Tabellen-Bucket erstellen, initiiert Amazon S3 die folgenden Aktionen, um Tabellen-Buckets in der Region, die Sie ausgewählt haben, mit AWS Analysediensten zu integrieren:
-
Erstellt eine neue AWS Identity and Access Management (IAM) -Servicerolle, die Lake Formation Zugriff auf all Ihre Tabellen-Buckets gewährt.
-
Mithilfe der Servicerolle registriert Lake Formation Tabellen-Buckets in der aktuellen Region. Auf diese Weise kann Lake Formation den Zugriff, die Berechtigungen und die Steuerung für alle aktuellen und zukünftigen Tabellen-Buckets in dieser Region verwalten.
-
Fügt den s3tables-Katalog zur aktuellen Region hinzu. AWS Glue Data Catalog Dadurch können all Ihre Tabellen-Buckets, Namespaces und Tabellen in den Datenkatalog übertragen werden.
Anmerkung
Diese Aktionen sind über die Amazon-S3-Konsole automatisiert. Wenn Sie eine programmatische Integration wünschen, müssen Sie diese Aktionen manuell ausführen.
Sie integrieren einmal pro Region. AWS Sobald die Integration abgeschlossen ist, werden alle aktuellen und future Tabellen-Buckets, Namespaces und Tabellen zu den AWS Glue Data Catalog in dieser Region hinzugefügt.
Die folgende Abbildung zeigt, wie s3tablescatalog Tabellen-Buckets, Namespaces und Tabellen in der aktuellen Region automatisch als entsprechende Objekte in den Datenkatalog überträgt. Tabellen-Buckets werden als Unterkataloge übertragen. Namespaces innerhalb eines Tabellen-Buckets werden als Datenbanken in ihren jeweiligen Unterkatalogen übertragen. Tabellen werden als Tabellen in ihren jeweiligen Datenbanken übertragen.

Voraussetzungen für die Integration
Die folgenden Voraussetzungen sind erforderlich, um S3-Tabellen in AWS Analysedienste zu integrieren.
Fügen Sie die AWSLakeFormationDataAdmin AWS verwaltete Richtlinie Ihrem IAM-Principal hinzu, um diesen Benutzer zum Data Lake-Administrator zu machen. Weitere Informationen zum Erstellen eines Data-Lake-Administrators finden Sie unter Create a data lake administrator (Data-Lake-Administrator erstellen).
-
Sie fügen Ihrem IAM-Prinzipal Berechtigungen für die Operation
glue:PassConnection
hinzu. -
Sie fügen Ihrem IAM-Prinzipal Berechtigungen für die Operation
lakeformation:RegisterResource
hinzu.
Integrieren von Tabellen-Buckets in AWS Analysedienste
Diese Integration muss einmal pro AWS Region durchgeführt werden.
Öffnen Sie die Amazon S3 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 Tabellen-Bucket-Namen ein und achten Sie darauf, dass 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.
Wenn Sie Tabellen-Buckets zum ersten Mal in eine Region integrieren, erstellt Amazon S3 für Sie eine neue IAM-Servicerolle. Diese Rolle ermöglicht Lake Formation den Zugriff auf alle Tabellen-Buckets in Ihrem Konto und Verbundzugriff auf Ihre Tabellen in AWS Glue Data Catalog.
Um Tabellen-Buckets mit dem zu integrieren AWS CLI
Die folgenden Schritte zeigen, wie Sie die verwenden können, um Tabellen-Buckets AWS CLI zu integrieren. Wenn Sie dieses Beispiel verwenden möchten, ersetzen Sie die user input
placeholders
(Platzhalter für Benutzereingaben) durch Ihre Informationen.
Einen Tabellen-Bucket erstellen
aws s3tables create-table-bucket \ --region
us-east-2
\ --nameamzn-s3-demo-table-bucket
-
Erstellen Sie eine IAM-Servicerolle, die Lake Formation Zugriff auf Ihre Tabellenressourcen erteilt.
-
Erstellen der Rolle
aws iam create-role \ --role-name S3TablesRoleForLakeFormation \ --assume-role-policy-document file://Role-Trust-Policy.json
Role-Trust-Policy.json:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccessPolicy", "Effect": "Allow", "Principal": { "Service": "lakeformation.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetContext", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:SourceAccount": "
111122223333
" } } } ] } -
Fügen Sie der Rolle eine Richtlinie hinzu.
aws iam put-role-policy \ --role-name S3TablesRoleForLakeFormation \ --policy-name LakeFormationDataAccessPermissionsForS3TableBucket \ --policy-document file://LF-GluePolicy.json
GluePolicyLF-.json:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationPermissionsForS3ListTableBucket", "Effect": "Allow", "Action": [ "s3tables:ListTableBuckets" ], "Resource": [ "*" ] }, { "Sid": "LakeFormationDataAccessPermissionsForS3TableBucket", "Effect": "Allow", "Action": [ "s3tables:CreateTableBucket", "s3tables:GetTableBucket", "s3tables:CreateNamespace", "s3tables:GetNamespace", "s3tables:ListNamespaces", "s3tables:DeleteNamespace", "s3tables:DeleteTableBucket", "s3tables:CreateTable", "s3tables:DeleteTable", "s3tables:GetTable", "s3tables:ListTables", "s3tables:RenameTable", "s3tables:UpdateTableMetadataLocation", "s3tables:GetTableMetadataLocation", "s3tables:GetTableData", "s3tables:PutTableData" ], "Resource": [ "arn:aws:s3tables:
us-east-1
:111122223333
:bucket/*" ] } ] }
-
-
Erstellen Sie den s3tablescatalog. Dadurch werden Objekte aufgefüllt, die AWS Glue Data Catalog Tabellen-Buckets, Namespaces und Tabellen entsprechen.
aws glue create-catalog \ --region
us-east-1
\ --cli-input-json file://catalog.jsoncatalog.json:
{ "Name": "s3tablescatalog", "CatalogInput": { "FederatedCatalog": { "Identifier": "arn:aws:s3tables:
us-east-1
:111122223333
:bucket/*", "ConnectionName": "aws:s3tables" }, "CreateDatabaseDefaultPermissions":[], "CreateTableDefaultPermissions":[] } } -
Tabellen-Buckets bei Lake Formation registrieren
aws lakeformation register-resource \ --region
us-east-1
\ --cli-input-json file://input.jsoninput.json:
{ "ResourceArn": "arn:aws:s3tables:
us-east-1
:111122223333
:bucket/*", "WithFederation": true, "RoleArn": "arn:aws:iam::111122223333
:role/S3TablesRoleForLakeFormation" } Vergewissern Sie sich, dass das hinzugefügt
s3tablescatalog
wurde, AWS Glue indem Sie den folgenden Befehl verwenden.aws glue get-catalog --catalog-id s3tablescatalog
Nächste Schritte
Erstellen eines Ressourcenlinks zu den Namespaces Ihrer Tabelle
Um auf Ihre Tabellen zugreifen zu können, benötigen einige AWS Analysedienste einen Ressourcenlink, der auf den Namespace Ihrer Tabelle abzielt. Ein Ressourcenlink ist ein Datenkatalogobjekt, das als Alias für oder Zeiger auf eine andere Datenkatalogressource, z. B. eine Datenbank oder Tabelle, fungiert. Der Link wird im Datenkatalog des Kontos oder der Region gespeichert, in dem er erstellt wurde. Weitere Informationen finden Sie unter Funktionsweise von Ressourcenverbindungen im Entwicklerhandbuch zu Lake Formation.
Nach der AWS Integration erstellen Sie Ressourcenlinks, um mit Ihren Tabellen in den folgenden Diensten zu arbeiten:
-
Amazon Redshift
-
Amazon Data Firehose
-
Amazon EMR
Sie erstellen Ressourcenlinks zu Ihren Tabellennamespaces und geben dann den Namen des Links an die AWS Analysedienste an, damit diese mit den verknüpften Tabellen arbeiten können.
Der folgende CLI-Befehl zeigt, wie Sie einen Ressourcenlink erstellen, mit dem Sie Ihre S3-Tabellen mit AWS Analysediensten verbinden können. Wenn Sie dieses Beispiel verwenden möchten, ersetzen Sie die user input placeholders
(Platzhalter für Benutzereingaben) durch Ihre Informationen.
aws glue create-database --region
us-east-2
--catalog-id "111122223333
" --database-input \ '{ "Name": "resource-link-name
", "TargetDatabase": { "CatalogId": "111122223333
:s3tablescatalog/amzn-s3-demo-table-bucket
", "DatabaseName": "my_namespace
" }, "CreateTableDefaultPermissions": [] }'
Lake Formation Berechtigungen für Ihre Tabellenressourcen erteilen
Nach der Integration verwaltet Lake Formation den Zugriff auf Ihre Tabellenressourcen. Lake Formation verwendet ein eigenes Berechtigungsmodell (Lake Formation Formation-Berechtigungen), das eine detaillierte Zugriffskontrolle für Datenkatalogressourcen ermöglicht. Lake Formation erfordert, dass jeder IAM-Prinzipal (Benutzer oder Rolle) autorisiert ist, Aktionen auf von Lake Formation verwalteten Ressourcen durchzuführen. Weitere Informationen finden Sie unter Übersicht über Lake-Formation-Berechtigungen. Bevor Principals auf Tabellen in AWS Analytics-Services zugreifen können, müssen Sie Lake Formation Formation-Berechtigungen für diese Ressourcen gewähren.
Sie müssen Lake Formation Formation-Berechtigungen für Ihre Tabellenressourcen gewähren, um mit ihnen in den folgenden Diensten arbeiten zu können:
-
Amazon Redshift
-
Amazon Data Firehose
-
Amazon QuickSight
-
Amazon Athena
Anmerkung
Für Dienste, die einen Ressourcenlink für den Zugriff auf Ihre Tabellen verwenden, müssen Sie separat Berechtigungen sowohl für den Ressourcenlink als auch für den (verknüpften) Ziel-Namespace gewähren.
Erteilen Sie die Berechtigung für eine Tabelle
Sie können einem Hauptbenutzer die Lake Formation Formation-Berechtigung für eine Tabelle im S3-Tabellen-Bucket entweder über die Lake Formation Formation-Konsole oder erteilen AWS CLI.
Erteilen Sie die Berechtigung für einen Ressourcenlink
Wenn Sie einen Ressourcenlink für den Zugriff auf Ihre Tabellen verwenden, müssen Sie separat Berechtigungen sowohl für den Ressourcenlink als auch für den (verknüpften) Ziel-Namespace oder die Zieltabelle erteilen. Sie können einer Lake Formation Formation-Hauptberechtigung für einen Ressourcenlink erteilen, der mit Ihrem Tabellennamespace verknüpft ist, entweder über die Lake Formation Formation-Konsole oder AWS CLI.