Konfiguration eines Zero-ETL-Integrationsziels - AWS Glue

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.

Konfiguration eines Zero-ETL-Integrationsziels

AWS Bei der Konfiguration eines Ziels für eine Zero-ETL-Integration stehen mehrere Optionen zur Verfügung. Das Ziel kann ein verschlüsseltes Amazon Redshift Data Warehouse oder ein Amazon SageMaker Lakehouse-Katalog sein.

Bevor Sie das Ziel für die Zero-ETL-Integration auswählen, müssen Sie eine der folgenden Zielressourcen konfigurieren.

Zu den Konfigurationsoptionen für ein Ziel in einer Zero-ETL-Integration gehören:

Anmerkung

Sie können das Ziel einer Zero-ETL-Integration nach der Erstellung nicht ändern.

Konfiguration eines Amazon SageMaker Lakehouse-Katalogs mit regulärem S3-Speicher

In diesem Abschnitt werden die Voraussetzungen und Einrichtungsschritte für die Konfiguration eines regulären Amazon S3 S3-Buckets als Speicher für Ihr Amazon SageMaker Lakehouse-Katalogziel in einer Zero-ETL-Integration beschrieben.

Voraussetzungen für die Einrichtung einer Integration

Bevor Sie eine Zero-ETL-Integration mit einem Amazon SageMaker Lakehouse-Katalog unter Verwendung von normalem S3-Speicher erstellen, müssen Sie die folgenden Einrichtungsaufgaben ausführen:

  1. Richten Sie eine Datenbank ein AWS Glue

  2. Geben Sie die RBAC-Richtlinie für den Katalog an

  3. Erstellen Sie eine IAM-Zielrolle

Nachdem Sie den Amazon SageMaker Lakehouse-Katalog mit regulärem Amazon S3 S3-Speicher konfiguriert haben, können Sie mit Konfiguration der Integration mit Ihrem Ziel dem Abschluss der Integrationseinrichtung fortfahren.

Konfiguration von Amazon S3 S3-Tabellen als Ziel

In diesem Abschnitt werden die Voraussetzungen und Einrichtungsschritte für die Konfiguration von Amazon S3 S3-Tabellen als Ziel für Ihre Zero-ETL-Integration beschrieben.

Voraussetzungen für die Einrichtung einer Integration

Bevor Sie eine Zero-ETL-Integration mit Amazon S3 S3-Tabellen als Ziel erstellen, müssen Sie die folgenden Einrichtungsaufgaben ausführen:

  1. Bucket für Amazon S3 S3-Tabellen einrichten

  2. Geben Sie die RBAC-Richtlinie für den Katalog an

  3. Erstellen Sie eine IAM-Zielrolle

Bucket für Amazon S3 S3-Tabellen einrichten

  1. Erstellen Sie einen S3-Tabellen-Bucket in Ihrem Konto, indem Sie den Anweisungen unter Erste Schritte mit Amazon S3 S3-Tabellen folgen.

  2. Aktivieren Sie Analytics-Integrationen mit Ihrem S3-Table-Bucket, indem Sie diese Anweisungen befolgen: AWS Services in Amazon S3 S3-Tabellen integrieren.

Geben Sie die RBAC-Richtlinie für den Katalog an

Die folgenden Berechtigungen müssen der Catalog RBAC Policy hinzugefügt werden, um Integrationen zwischen Quell- und Amazon S3 S3-Tabellen-Katalogziel zu ermöglichen.

Die Ressourcenrichtlinie für den AWS Glue Zielkatalog muss Glue Service-Berechtigungen für enthalten AuthorizeInboundIntegration. Darüber hinaus sind CreateInboundIntegration Berechtigungen entweder für den Quellprinzipal, der die Integration erstellt, oder für die AWS Glue Zielressourcenrichtlinie erforderlich.

Anmerkung

Für ein kontenübergreifendes Szenario müssen sowohl die Quellprinzipal- als auch die AWS Glue Zielkatalog-Ressourcenrichtlinie Glue: CreateInboundIntegration -Berechtigungen für die Ressource enthalten.

{ "Version": "2012-10-17", "Statement": [ { // Optional for same account but mandatory for cross account scenarios // Allow Alice to create Integration on Target Catalog "Principal": { "AWS": [ "arn:aws:iam::<source-account-id>:user/Alice" ] }, "Effect": "Allow", "Action": [ "glue:CreateInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog/<s3tablescatalog>/*" ], "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<Account>:table/<table-name>" } } }, { // Required: Allow Glue to Authorize the Inbound Integration on behalf of Bob "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Effect": "Allow", "Action": [ "glue:AuthorizeInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog/<s3tablescatalog>/*" ], "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<account-id>:table/<table-name>" } } } ] }
Anmerkung

<s3tablescatalog>Ersetzen Sie es durch den Katalognamen Ihrer S3-Tabellen.

Erstellen Sie eine IAM-Zielrolle

Erstellen Sie eine IAM-Zielrolle mit den folgenden Berechtigungen und Vertrauensbeziehungen:

Beispiel für eine IAM-Richtlinie:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3tables:ListTableBuckets", "s3tables:GetTableBucket", "s3tables:GetTableBucketEncryption", "s3tables:GetNamespace", "s3tables:CreateNamespace", "s3tables:ListNamespaces", "s3tables:CreateTable", "s3tables:GetTable", "s3tables:GetTableEncryption", "s3tables:ListTables", "s3tables:GetTableMetadataLocation", "s3tables:UpdateTableMetadataLocation", "s3tables:GetTableData", "s3tables:PutTableData" ], "Resource": "arn:aws:s3tables:<region>:<account-id>:bucket/*", "Effect": "Allow" }, { "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "AWS/Glue/ZeroETL" } }, "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*", "Effect": "Allow" } ] }

Fügen Sie der Target-IAM-Rolle die folgende Vertrauensrichtlinie hinzu, damit der AWS Glue Service sie übernehmen kann:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Anmerkung

Stellen Sie sicher, dass es in der S3-Tables-Bucket-Ressourcenrichtlinie keine explizite DENY-Anweisung für diese Ziel-IAM-Rolle gibt. Eine explizite DENY-Anweisung würde alle ALLOW-Berechtigungen außer Kraft setzen und verhindern, dass die Integration ordnungsgemäß funktioniert.

Konfiguration eines Amazon SageMaker Lakehouse-Katalogs mit Amazon Redshift verwaltetem Speicher

In diesem Abschnitt werden die Voraussetzungen und Einrichtungsschritte für die Konfiguration eines Amazon SageMaker Lakehouse-Katalogs mit Amazon Redshift verwaltetem Speicher (RMS) als Ziel für Ihre Zero-ETL-Integration beschrieben.

Voraussetzungen für die Einrichtung einer Integration

Bevor Sie eine Zero-ETL-Integration mit einem Amazon SageMaker Lakehouse-Katalog mithilfe von Redshift Managed Storage erstellen, müssen Sie die folgenden Einrichtungsaufgaben ausführen:

  1. Richten Sie einen Cluster oder eine serverlose Arbeitsgruppe ein Amazon Redshift

  2. Registrieren Sie die Amazon Redshift Integration mit Lake Formation

  3. Erstellen Sie einen verwalteten Katalog in Lake Formation

  4. Konfigurieren Sie IAM-Berechtigungen

Amazon Redshift Verwalteten Speicher einrichten

So richten Sie Amazon Redshift verwalteten Speicher für Ihre Zero-ETL-Integration ein:

  1. Erstellen oder verwenden Sie einen vorhandenen Amazon Redshift Redshift-Cluster oder eine serverlose Arbeitsgruppe. Stellen Sie sicher, dass in der Amazon Redshift Zielarbeitsgruppe oder dem Zielcluster der enable_case_sensitive_identifier Parameter aktiviert ist, damit die Integration erfolgreich ist. Weitere Informationen zur Aktivierung der Groß- und Kleinschreibung finden Sie unter Aktivieren der Groß- und Kleinschreibung für Ihr Data Warehouse im Amazon Redshift Redshift-Managementleitfaden.

  2. Registrieren Sie eine Integration von Redshift in den Katalog unter. AWS Lake Formation Siehe Registrierung von Amazon Redshift Clustern und Namespaces im Datenkatalog. AWS Glue

  3. Erstellen Sie einen föderierten oder verwalteten Katalog in. AWS Lake Formation Weitere Informationen finden Sie unter:

  4. Konfigurieren Sie IAM-Berechtigungen für die Zielrolle. Die Rolle benötigt Berechtigungen für den Zugriff auf Redshift- und Lake Formation Formation-Ressourcen. Die Rolle sollte mindestens Folgendes haben:

    • Berechtigungen für den Zugriff auf den Redshift-Cluster oder die Redshift-Arbeitsgruppe

    • Berechtigungen für den Zugriff auf den Lake Formation-Katalog

    • Berechtigungen zum Erstellen und Verwalten von Tabellen im Katalog

    • CloudWatch und CloudWatch protokolliert Berechtigungen für die Überwachung

Nachdem Sie den Amazon SageMaker Lakehouse-Katalog mit verwaltetem Amazon Redshift Redshift-Speicher konfiguriert haben, können Sie mit Konfiguration der Integration mit Ihrem Ziel dem Abschluss der Integrationseinrichtung fortfahren.

Konfiguration eines Amazon Redshift Data Warehouse-Ziels

In diesem Abschnitt werden die Voraussetzungen und Einrichtungsschritte für die Konfiguration eines Amazon Redshift Data Warehouse als Ziel für Ihre Zero-ETL-Integration beschrieben.

Voraussetzungen für die Einrichtung einer Integration

Bevor Sie eine Zero-ETL-Integration mit einem Amazon Redshift Data Warehouse-Ziel erstellen, müssen Sie die folgenden Einrichtungsaufgaben ausführen:

  1. Richten Sie einen Amazon Redshift Cluster oder eine serverlose Arbeitsgruppe ein

  2. Konfigurieren Sie die Berücksichtigung von Groß-

  3. Konfigurieren Sie IAM-Berechtigungen

Das Amazon Redshift Data Warehouse einrichten

So richten Sie ein Amazon Redshift Data Warehouse für Ihre Zero-ETL-Integration ein:

  1. Navigieren Sie zur Amazon Redshift Konsole und klicken Sie auf Cluster erstellen oder verwenden Sie einen vorhandenen Cluster. Klicken Sie für Amazon Redshift Serverless auf Arbeitsgruppe erstellen.

  2. Wenn Sie einen neuen Cluster erstellen, wählen Sie eine geeignete Clustergröße und stellen Sie sicher, dass Ihr Cluster verschlüsselt ist. Für Serverless konfigurieren Sie die Arbeitsgruppeneinstellungen entsprechend Ihren Anforderungen.

  3. Stellen Sie sicher, dass in der Amazon Redshift Zielarbeitsgruppe oder dem Zielcluster der enable_case_sensitive_identifier Parameter aktiviert ist, damit die Integration erfolgreich ist. Weitere Informationen zur Aktivierung der Groß- und Kleinschreibung finden Sie unter Aktivieren der Groß- und Kleinschreibung für Ihr Data Warehouse im Amazon Redshift Redshift-Managementleitfaden.

  4. Konfigurieren Sie IAM-Berechtigungen, damit die Zero-ETL-Integration auf Ihr Data Warehouse zugreifen kann. Amazon Redshift Sie müssen eine IAM-Rolle mit den folgenden Berechtigungen erstellen:

    • Berechtigungen für den Zugriff auf den Amazon Redshift Cluster oder die Arbeitsgruppe

    • Berechtigungen zum Erstellen und Verwalten von Datenbanken und Tabellen in Amazon Redshift

    • CloudWatch und Amazon CloudWatch protokolliert die Berechtigungen für die Überwachung

  5. Nachdem die Amazon Redshift Arbeitsgruppen- oder Clustereinrichtung abgeschlossen ist, müssen Sie Ihr Data Warehouse für Zero-ETL-Integrationen konfigurieren. Weitere Informationen finden Sie unter Erste Schritte mit Zero-ETL-Integrationen im Amazon Redshift Management Guide.

Anmerkung

Wenn Sie ein Amazon Redshift Data Warehouse als Ziel verwenden, erstellt die Integration ein Schema in der angegebenen Datenbank, um die replizierten Daten zu speichern. Der Schemaname wird vom Integrationsnamen abgeleitet.

Nach der Konfiguration des Amazon Redshift Data Warehouse können Sie mit Konfiguration der Integration mit Ihrem Ziel dem Abschluss der Integrationseinrichtung fortfahren.

Konfiguration der Integration mit Ihrem Ziel

Nachdem Sie Ihre Zielressourcen konfiguriert, Ihre Verbindung ausgewählt und eine Quell-IAM-Rolle angegeben haben, gehen Sie wie folgt vor, um die Einrichtung der Integration abzuschließen:

  1. Geben Sie das Ziel an, das Sie in den vorherigen Schritten konfiguriert haben.

  2. Wählen Sie die Option AWS Glue Repariere es für mich aus. Für das Amazon Redshift Ziel wird dies:

    • Wenden Sie einen autorisierten Dienstprinzipal auf den Amazon Redshift Cluster oder die serverlose Arbeitsgruppe an.

    • Wenden Sie einen autorisierten AWS Glue Quell-ARN auf den Amazon Redshift Cluster oder die serverlose Arbeitsgruppe an.

    • Ordnen Sie eine neue Parametergruppe zu. enable_case_sensitive_identifier = true

    Der Screenshot zeigt die Auswahl eines Ziels in einer Zero-ETL-Integration.
  3. Geben Sie den Namen der Integration ein und wählen Sie „Integration erstellen und starten“.

  4. Sobald sich Ihre Integration im aktiven Status befindet, navigieren Sie zur Seite mit den Integrationsdetails und wählen Sie Datenbank aus Integration erstellen aus.

  5. Schließlich können Sie zum Redshift-Abfrage-Editor navigieren und eine Verbindung zu Ihrer Datenbank herstellen, um den Snapshot und die inkrementellen Daten zu validieren.

Anmerkung

Sie können im Namespace- oder Katalognamen nur alphanumerische Kleinbuchstaben und Unterstriche verwenden. Dies unterscheidet sich von dem, was der AWS Glue Datenkatalog ermöglicht, eine Datenbank mit einem beliebigen Namen (einschließlich Sonderzeichen) zu erstellen.