

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.

# Integrieren mit Amazon Redshift
<a name="RedshiftforDynamoDB"></a>

Amazon Redshift ist ein schneller, vollständig verwalteter Data-Warehouse-Service für Datenmengen im Petabyte-Bereich, mit dem Sie im Zusammenspiel mit Ihren vorhandenen Business-Intelligence-Tools alle Ihre Daten einfach, effizient und wirtschaftlich analysieren können.

DynamoDB und Amazon Redshift können zusammen verwendet werden, um unterschiedliche Datenspeicher- und Verarbeitungsanforderungen innerhalb einer Anwendung oder eines Datenökosystems zu erfüllen.

In den folgenden Themen finden Sie detailliertere Informationen zur Integration von DynamoDB in Amazon Redshift.

**Topics**
+ [Überlegungen zu einer kontoübergreifenden Integration in CMK](cross-account-integration-considerations.md)
+ [Null-ETL-Integration von DynamoDB in Amazon Redshift](RedshiftforDynamoDB-zero-etl.md)
+ [Laden von Daten aus DynamoDB in Amazon Redshift mit dem Befehl COPY](RedshiftforDynamoDB-copy-data.md)

# Überlegungen zu einer kontoübergreifenden Integration in CMK
<a name="cross-account-integration-considerations"></a>

Bei dem Versuch einer Integration von DynamoDB in Amazon Redshift geht die erste Aktion von Amazon Redshift aus. Ohne die entsprechenden Berechtigungen könnte diese Aktion zu einem unbemerkten Fehler führen. In den folgenden Abschnitten werden die Berechtigungen beschrieben, die für diese kontenübergreifende Integration erforderlich sind.

## Erforderliche Richtlinien und Berechtigungen AWS KMS
<a name="required-kms-policies-permissions"></a>

Ersetzen Sie die Platzhalter in den folgenden Beispielen:
+ `111122223333`: Die AWS-Konto ID, unter der Amazon Redshift gehostet wird
+ `444455556666`: Die AWS-Konto ID, unter der DynamoDB gehostet wird
+ `REDSHIFT_ROLE_NAME`: Der von Amazon Redshift verwendete Name für die IAM-Rolle
+ `REGION`: Der AWS-Region Ort, an dem sich Ihre Ressourcen befinden
+ `TABLE_NAME`: Der Name der DynamoDB-Tabelle.
+ `KMS_KEY_ID`: Die ID des KMS-Schlüssels

### KMS-Schlüsselrichtlinie im DynamoDB-Konto
<a name="kms-key-policy-dynamodb-account"></a>

Die folgende AWS KMS wichtige Richtlinie ermöglicht den kontoübergreifenden Zugriff zwischen Ihren DynamoDB- und Amazon Redshift Redshift-Services. In diesem Beispiel enthält das Konto 444455556666 die DynamoDB-Tabelle und den AWS KMS Schlüssel, während das Konto 111122223333 den Amazon Redshift Redshift-Cluster enthält, der Zugriff benötigt, um die Daten zu entschlüsseln.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::444455556666:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow Redshift to use the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/REDSHIFT_ROLE_NAME"
            },
            "Action": [
                "kms:Decrypt",
                "kms:DescribeKey",
                "kms:GenerateDataKey",
                "kms:GenerateDataKeyWithoutPlaintext"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### IAM-Richtlinie für die Amazon-Redshift-Rolle (im Amazon-Redshift-Konto)
<a name="iam-policy-redshift-role"></a>

Die folgende IAM-Richtlinie ermöglicht einem Amazon Redshift Redshift-Service den Zugriff auf DynamoDB-Tabellen und die zugehörigen AWS KMS Verschlüsselungsschlüssel in einem kontoübergreifenden Szenario. In diesem Beispiel enthält das Konto 444455556666 die DynamoDB-Ressourcen und AWS KMS Schlüssel, auf die der Amazon Redshift Redshift-Service zugreifen muss.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDynamoDBAccess",
            "Effect": "Allow",
            "Action": [
                "dynamodb:DescribeTable",
                "dynamodb:BatchGetItem",
                "dynamodb:Scan",
                "dynamodb:Query",
                "dynamodb:BatchGetItem",
                "dynamodb:GetItem",
                "dynamodb:GetRecords",
                "dynamodb:GetShardIterator",
                "dynamodb:DescribeStream",
                "dynamodb:ListStreams"
            ],
            "Resource": [
                "arn:aws:dynamodb:*:444455556666:table/TABLE_NAME",
                "arn:aws:dynamodb:*:444455556666:table/TABLE_NAME/stream/*"
            ]
        },
        {
            "Sid": "AllowKMSAccess",
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "kms:DescribeKey",
                "kms:GenerateDataKey",
                "kms:GenerateDataKeyWithoutPlaintext"
            ],
            "Resource": "arn:aws:kms:us-east-1:444455556666:key/KMS_KEY_ID"
        }
    ]
}
```

------

### Vertrauensstellung für die Amazon-Redshift-Rolle
<a name="trust-relationship-redshift-role"></a>

------
#### [ JSON ]

****  

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

------

### DynamoDB-Tabellenrichtlinie (bei Verwendung von ressourcenbasierten Richtlinien)
<a name="dynamodb-table-policy"></a>

Die folgende ressourcenbasierte Richtlinie ermöglicht einem Amazon-Redshift-Service im Konto 111122223333 den Zugriff auf DynamoDB-Tabellen und -Streams im Konto 444455556666. Fügen Sie diese Richtlinie an die DynamoDB-Tabelle an, um den kontenübergreifenden Zugriff zu aktivieren.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowRedshiftAccess",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:role/REDSHIFT_ROLE_NAME"
            },
            "Action": [
                "dynamodb:DescribeTable",
                "dynamodb:BatchGetItem",
                "dynamodb:Scan",
                "dynamodb:Query",
                "dynamodb:BatchGetItem",
                "dynamodb:GetItem",
                "dynamodb:GetRecords",
                "dynamodb:GetShardIterator",
                "dynamodb:DescribeStream",
                "dynamodb:ListStreams"
            ],
            "Resource": [
                "arn:aws:dynamodb:*:444455556666:table/TABLE_NAME",
                "arn:aws:dynamodb:*:444455556666:table/TABLE_NAME/stream/*"
            ]
        }
    ]
}
```

------

## Wichtige Überlegungen
<a name="important-considerations"></a>

1. Stellen Sie sicher, dass sich der KMS-Schlüssel in derselben Region befindet wie die DynamoDB-Tabelle.

1. Der KMS-Schlüssel muss ein vom Kunden verwalteter Schlüssel (CMK) sein, kein. Von AWS verwalteter Schlüssel

1. Wenn Sie globale DynamoDB-Tabellen verwenden, konfigurieren Sie Berechtigungen für alle relevanten Regionen.

1. Erwägen Sie das Hinzufügen von Bedingungsanweisungen, um den Zugriff auf der Grundlage von VPC-Endpunkten oder IP-Bereichen einzuschränken.

1. Für mehr Sicherheit sollten Sie die Verwendung der `aws:PrincipalOrgID`-Bedingungen in Betracht ziehen, um den Zugriff auf die Organisation einzuschränken.

1. Überwachen Sie die Verwendung von KMS-Schlüsseln anhand CloudTrail von CloudWatch Messdaten.

# Null-ETL-Integration von DynamoDB in Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl"></a>

Die Null-ETL-Integration von Amazon DynamoDB in Amazon Redshift ermöglicht eine reibungslose Analyse von DynamoDB-Daten ohne jegliche Codierung. Durch dieses vollständig verwaltete Feature werden DynamoDB-Tabellen automatisch in eine Amazon-Redshift-Datenbank repliziert, sodass Benutzer SQL-Abfragen und Analysen für ihre Daten ausführen können, ohne komplexe ETL-Prozesse einrichten zu müssen. Die Integration funktioniert durch die Replikation von Daten aus der DynamoDB-Tabelle in die Amazon-Redshift-Datenbank. 

Geben Sie zur Einrichtung einfach eine DynamoDB-Tabelle als Quelle und eine Amazon-Redshift-Datenbank als Ziel an. Bei der Aktivierung exportiert die Integration die vollständige DynamoDB-Tabelle und füllt die Amazon Redshift-Datenbank. Die für diesen ersten Prozess benötigte Zeit ist abhängig von der Größe der DynamoDB-Tabelle. Durch die Null-ETL-Integration werden dann mithilfe inkrementeller DynamoDB-Exporte alle 15 bis 30 Minuten Aktualisierungen von DynamoDB-Daten in Amazon Redshift repliziert. Das bedeutet, dass die replizierten DynamoDB-Daten in Amazon Redshift automatisch aufbewahrt werden. up-to-date 

Nach der Konfiguration können Benutzer die DynamoDB-Daten in Amazon Redshift mithilfe von SQL-Standard-Clients und -Tools analysieren, ohne dass sich dies auf die Leistung der DynamoDB-Tabellen auswirkt. Durch den Wegfall des umständlichen ETL-Prozesses bietet diese Null-ETL-Integration eine schnelle und einfache Möglichkeit, mithilfe von Amazon-Redshift-Analysen und -Funktionen für Machine Learning Erkenntnisse aus DynamoDB-Daten zu gewinnen. 

**Topics**
+ [Voraussetzungen zum Erstellen einer Null-ETL-Integration von DynamoDB in Amazon Redshift](#RedshiftforDynamoDB-zero-etl-prereqs)
+ [Einschränkungen bei der Verwendung der Null-ETL-Integration von DynamoDB in Amazon Redshift](#RedshiftforDynamoDB-zero-etl-limitations)
+ [Erstellen einer Null-ETL-Integration von DynamoDB in Amazon Redshift](RedshiftforDynamoDB-zero-etl-getting-started.md)
+ [Anzeigen von Null-ETL-Integrationen von DynamoDB in Amazon Redshift](RedshiftforDynamoDB-zero-etl-viewing.md)
+ [Löschen von Null-ETL-Integration von DynamoDB in Amazon Redshift](RedshiftforDynamoDB-zero-etl-deleting.md)

## Voraussetzungen zum Erstellen einer Null-ETL-Integration von DynamoDB in Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl-prereqs"></a>

1.  Voraussetzung für die Integration ist die Erstellung einer DynamoDB-Quelltabelle und eines Amazon-Redshift-Zielclusters. Weitere Informationen hierzu finden Sie unter [Schritt 1: Konfigurieren einer DynamoDB-Quelltabelle](RedshiftforDynamoDB-zero-etl-getting-started.md#RedshiftforDynamoDB-zero-etl-getting-started-configuring) und [Schritt 2: Erstellen eines Data-Warehouse für Amazon Redshift](RedshiftforDynamoDB-zero-etl-getting-started.md#RedshiftforDynamoDB-zero-etl-getting-started-creating). 

1.  [Für eine Zero-ETL-Integration zwischen Amazon DynamoDB und Amazon Redshift muss in Ihrer DynamoDB-Quelltabelle Recovery (PITR) aktiviert sein. Point-in-time ](Point-in-time-recovery.md)

1. Für **ressourcenbasierte Richtlinien** erfordert die Zero-ETL-Integration eine ressourcenbasierte Richtlinie, die direkt an Ihre DynamoDB-Tabelle angehängt ist. Diese Inline-Richtlinie gewährt dem Amazon Redshift Redshift-Service die Erlaubnis, für die Replikation auf Ihre Tabellendaten zuzugreifen. Weitere Informationen zu ressourcenbasierten Richtlinien für DynamoDB finden Sie unter [Verwenden von ressourcenbasierten](access-control-resource-based.md) Richtlinien für DynamoDB.

   Wenn Sie die Integration erstellen, bei der sich Ihre DynamoDB-Tabelle und Ihr Amazon Redshift Data Warehouse in demselben Konto befinden, können Sie im Integrationsschritt „Integration erstellen“ die Option **Fix it for me** verwenden, um die erforderlichen Ressourcenrichtlinien automatisch sowohl auf DynamoDB als auch auf Amazon Redshift anzuwenden.

   Wenn Sie eine Integration erstellen, bei der sich Ihre DynamoDB-Tabelle und Ihr Amazon Redshift Data Warehouse in unterschiedlichen AWS Konten befinden, müssen Sie die folgende Ressourcenrichtlinie manuell auf Ihre DynamoDB-Tabelle anwenden.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "StatementthatallowsAmazonRedshiftservicetoDescribeTableandExportTable",
               "Effect": "Allow",
               "Principal": {
                   "Service": "redshift.amazonaws.com"
               },
               "Action": [
                   "dynamodb:ExportTableToPointInTime",
                   "dynamodb:DescribeTable"
               ],
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "111122223333"
                   },
                   "ArnEquals": {
                       "aws:SourceArn": "arn:aws:redshift:us-east-1:111122223333:integration:*"
                   }
               }
           },
           {
               "Sid": "StatementthatallowsAmazonRedshiftservicetoDescribeTableandExportTable",
               "Effect": "Allow",
               "Principal": {
                   "Service": "redshift.amazonaws.com"
               },
               "Action": "dynamodb:DescribeExport",
               "Resource": "arn:aws:dynamodb:us-east-1:111122223333:table/table-name/export/*",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "111122223333"
                   },
                   "ArnEquals": {
                       "aws:SourceArn": "arn:aws:redshift:us-east-1:111122223333:integration:*"
                   }
               }
           }
       ]
   }
   ```

------

   Möglicherweise müssen Sie auch die Ressourcenrichtlinie im Data Warehouse von Amazon Redshift konfigurieren. Weitere Informationen finden Sie unter [Konfigurieren einer Autorisierung unter Verwendung der Amazon-Redshift-API](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.redshift-iam.html#zero-etl-using.resource-policies).

1. 

**Bei identitätsbasierten IAM-Richtlinien:**

   1.  Der Benutzer, der die Integration erstellt, benötigt eine identitätsbasierte Richtlinie, die die folgenden Aktionen autorisiert: `GetResourcePolicy`, `PutResourcePolicy` und `UpdateContinuousBackups`.
**Anmerkung**  
 In den folgenden Beispielrichtlinien wird die Ressource als `arn:aws:redshift{-serverless}` angezeigt. Dieses Beispiel zeigt, dass der ARN je nachdem, ob es sich bei dem Namespace um einen Amazon-Redshift-Cluster oder einen Amazon-Redshift-Serverless-Namespace handelt, `arn:aws:redshift` oder `arn:aws:redshift-serverless` lauten kann. 

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "dynamodb:ListTables"
                  ],
                  "Resource": "*"
              },
              {
                  "Effect": "Allow",
                  "Action": [
                      "dynamodb:GetResourcePolicy",
                      "dynamodb:PutResourcePolicy",
                      "dynamodb:UpdateContinuousBackups"
                  ],
                  "Resource": [
                      "arn:aws:dynamodb:us-east-1:111122223333:table/table-name"
                  ]
              },
              {
                  "Sid": "AllowRedshiftDescribeIntegration",
                  "Effect": "Allow",
                  "Action": [
                      "redshift:DescribeIntegrations"
                  ],
                  "Resource": "*"
              },
              {
                  "Sid": "AllowRedshiftCreateIntegration",
                  "Effect": "Allow",
                  "Action": "redshift:CreateIntegration",
                  "Resource": "arn:aws:redshift:us-east-1:111122223333:integration:*"
              },
              {
                  "Sid": "AllowRedshiftModifyDeleteIntegration",
                  "Effect": "Allow",
                  "Action": [
                      "redshift:ModifyIntegration",
                      "redshift:DeleteIntegration"
                  ],
                  "Resource": "arn:aws:redshift:us-east-1:111122223333:integration:uuid"
              },
              {
                  "Sid": "AllowRedshiftCreateInboundIntegration",
                  "Effect": "Allow",
                  "Action": "redshift:CreateInboundIntegration",
                  "Resource": "arn:aws:redshift:us-east-1:111122223333:namespace:uuid"
              }
          ]
      }
      ```

------

   1.  Der Benutzer, der für die Konfiguration des Amazon-Redshift-Ziel-Namespace verantwortlich ist, benötigt eine identitätsbasierte Richtlinie, die die folgenden Aktionen autorisiert: `PutResourcePolicy`, `DeleteResourcePolicy` und `GetResourcePolicy`.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "redshift:PutResourcePolicy",
                      "redshift:DeleteResourcePolicy",
                      "redshift:GetResourcePolicy"
                  ],
                  "Resource": [
                      "arn:aws:redshift:us-east-1:111122223333:cluster:cluster-name"
                  ]
              },
              {
                  "Effect": "Allow",
                  "Action": [
                      "redshift:DescribeInboundIntegrations"
                  ],
                  "Resource": [
                      "arn:aws:redshift:us-east-1:111122223333:cluster:cluster-name"
                  ]
              }
          ]
      }
      ```

------

1. 

**Berechtigungen für Verschlüsselungsschlüssel**  
Wenn die DynamoDB-Quelltabelle mit einem vom Kunden verwalteten AWS KMS -Schlüssel verschlüsselt ist, müssen Sie dem KMS-Schlüssel die folgende Richtlinie hinzufügen. Anhand dieser Richtlinie kann Amazon Redshift mit dem KMS-Schlüssel Daten aus der verschlüsselten Tabelle exportieren.

   ```
   {
       "Sid": "Statement to allow Amazon Redshift service to perform Decrypt operation on the source DynamoDB Table",
       "Effect": "Allow",
       "Principal": {
           "Service": [
               "redshift.amazonaws.com"
           ]
       },
       "Action": "kms:Decrypt",
       "Resource": "*",
       "Condition": {
           "StringEquals": {
               "aws:SourceAccount": "<account>"
           },
           "ArnEquals": {
               "aws:SourceArn": "arn:aws:redshift:<region>:<account>:integration:*"
           }
       }
   }
   ```

 Sie können auch die Schritte unter [Erste Schritte mit Null-ETL-Integrationen](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.setting-up.html#zero-etl-using.redshift-iam) im Amazon-Redshift-Verwaltungshandbuch ausführen, um die Berechtigungen für den Amazon-Redshift-Namespace zu konfigurieren. 

## Einschränkungen bei der Verwendung der Null-ETL-Integration von DynamoDB in Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl-limitations"></a>

 Die folgenden allgemeinen Einschränkungen gelten für die aktuelle Version dieser Integration. Diese Einschränkungen können sich in nachfolgenden Versionen ändern. 

**Anmerkung**  
Lesen Sie zusätzlich zu den unten aufgeführten Einschränkungen auch die allgemeinen Überlegungen zur Verwendung von Null-ETL-Integrationen. Weitere Informationen finden Sie unter [Überlegungen bei der Verwendung von Null-ETL-Integrationen mit Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl.reqs-lims.html) im *Amazon-Redshift-Verwaltungshandbuch*.
+ Die DynamoDB-Tabelle und der Amazon-Redshift-Cluster müssen sich in derselben Region befinden.
+ Die DynamoDB-Quelltabelle muss entweder mit einem Amazon-eigenen oder einem vom Kunden verwalteten Schlüssel verschlüsselt werden. AWS KMS Die von Amazon verwaltete Verschlüsselung wird für die DynamoDB-Quelltabelle nicht unterstützt.

# Erstellen einer Null-ETL-Integration von DynamoDB in Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl-getting-started"></a>

 Bevor Sie eine Null-ETL-Integration erstellen, müssen Sie zuerst die DynamoDB-Quelltabelle und dann das Ziel-Data-Warehouse von Amazon Redshift einrichten. 

## Schritt 1: Konfigurieren einer DynamoDB-Quelltabelle
<a name="RedshiftforDynamoDB-zero-etl-getting-started-configuring"></a>

 Um eine Zero-ETL-Integration mit Amazon Redshift zu erstellen, müssen Sie point-in-time Recovery (PITR) für Ihre Tabelle aktivieren. Wenn Sie die PITR-Option nicht aktiviert haben, kann dies während der Einrichtung der Integration von der Konsole übernommen werden. [Einzelheiten zur Aktivierung von PITR finden Sie unter Wiederherstellung. Point-in-time ](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/PointInTimeRecovery_Howitworks.html) 

## Schritt 2: Erstellen eines Data-Warehouse für Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl-getting-started-creating"></a>

Wenn Sie noch kein Data-Warehouse für Amazon Redshift eingerichtet haben, können Sie dies jetzt tun. Informationen zum Erstellen einer Serverless-Arbeitsgruppe für Amazon Redshift finden Sie unter [Erstellen einer Arbeitsgruppe mit einem Namespace](https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-console-workgroups-create-workgroup-wizard.html). Informationen zum Erstellen eines Amazon-Redshift-Clusters finden Sie unter [Erstellen eines Clusters](https://docs.aws.amazon.com/redshift/latest/mgmt/create-cluster.html). 

 Damit die Integration erfolgreich durchgeführt werden kann, muss für die Zielarbeitsgruppe oder den Ziel-Cluster für Amazon Redshift der Parameter „enable\$1case\$1sensitive\$1identifier parameter“ aktiviert sein. Weitere Informationen zum Aktivieren der Unterscheidung zwischen Groß- und Kleinschreibung finden Sie unter [Aktivieren der Unterscheidung zwischen Groß- und Kleinschreibung für Ihr Data Warehouse](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-setting-up.case-sensitivity.html) im Amazon-Redshift-Managementleitfaden. 

 Nachdem die Einrichtung der Amazon-Redshift-Arbeitsgruppe oder des -Clusters abgeschlossen ist, müssen Sie Ihr Data Warehouse konfigurieren. Weitere Informationen finden Sie im Amazon-Redshift-Managementleitfaden unter [Null-ETL-Integrationen](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.html).

## Schritt 3: Erstellen einer Null-ETL-Integration für DynamoDB
<a name="RedshiftforDynamoDB-zero-etl-getting-started-creating-zetl"></a>

Führen Sie vor dem Erstellen einer Null-ETL-Integration die Aufgaben im Abschnitt [Voraussetzungen zum Erstellen einer Null-ETL-Integration von DynamoDB in Amazon Redshift](RedshiftforDynamoDB-zero-etl.md#RedshiftforDynamoDB-zero-etl-prereqs) aus. Das Erstellen einer Integration zwischen DynamoDB und Amazon Redshift ist ein zweistufiger Prozess. Erstellen Sie zunächst eine Integration aus der DynamoDB-Datenbank und hängen Sie dann eine Amazon-Redshift-Datenbank an die neu erstellte Integration an. 

**Erstellen einer Null-ETL-Integration**

1.  Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon DynamoDB DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodbv2](https://console.aws.amazon.com/dynamodbv2) 

1.  Wählen Sie im Navigationsbereich **Integrationen** aus. 

1. Wählen Sie **Null-ETL-Integration erstellen** und dann **Amazon Redshift** aus.

1. Dadurch gelangen Sie zur **Amazon-Redshift-Konsole**. Lesen Sie den unter [Erstellen einer Null-ETL-Integration für DynamoDB](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-setting-up.create-integration-ddb.html) den **Abschnitt „DynamoDB“**, bevor Sie fortfahren.

# Anzeigen von Null-ETL-Integrationen von DynamoDB in Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl-viewing"></a>

 Sie können die Details einer Null-ETL-Integration einblenden, um ihre Konfigurationsinformationen und den aktuellen Status einzusehen. 

**So zeigen Sie die Details einer Null-ETL-Integration in der Amazon-DynamoDB-Konsole an:**

1.  Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon DynamoDB DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodbv2](https://console.aws.amazon.com/dynamodbv2) 

1.  Wählen Sie in der DynamoDB-Konsole die Option **Integrationen** aus. 

1.  Wählen Sie im Bereich **Null-ETL-Integration** die Null-ETL-Integration aus, die Sie anzeigen möchten. 

**So zeigen Sie die Details einer Null-ETL-Integration in der Amazon-Redshift-Konsole an:**

1.  Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon Redshift Redshift-Konsole unter[https://console.aws.amazon.com/redshiftv2](https://console.aws.amazon.com/redshiftv2). 

1. Folgen Sie den Schritten unter [Anzeigen von Null-ETL-Integrationen](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.describing.html).

**Anmerkung**  
 Die möglichen Statusangaben einer Null-ETL-Integration in Amazon Redshift sind unter [Anzeigen von Null-ETL-Integrationen](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.describing.html) im *Amazon-Redshift-Verwaltungshandbuch* aufgeführt.

# Löschen von Null-ETL-Integration von DynamoDB in Amazon Redshift
<a name="RedshiftforDynamoDB-zero-etl-deleting"></a>

 Wenn Sie eine Null-ETL-Integration löschen, werden die Daten nicht aus DynamoDB oder Amazon Redshift gelöscht, sondern das Senden von Daten aus der Quelltabelle in die Amazon-Redshift-Zieltabelle wird von DynamoDB unterbunden. 

**So löschen Sie eine Null-ETL-Integration**

1.  Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon DynamoDB DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodbv2](https://console.aws.amazon.com/dynamodbv2) 

1.  Wählen Sie in der DynamoDB-Konsole die Option **Integrationen** aus. 

1.  Wählen Sie im Bereich **Null-ETL-Integration** die Null-ETL-Integration aus, die Sie löschen möchten. 

1.  Wählen Sie **Manage** (Verwalten). Dadurch gelangen Sie zur Seite mit den Integrationsdetails.

1.  Um die Löschung zu bestätigen, klicken Sie auf **Delete (Löschen)**. 

# Laden von Daten aus DynamoDB in Amazon Redshift mit dem Befehl COPY
<a name="RedshiftforDynamoDB-copy-data"></a>



Amazon Redshift ergänzt Amazon DynamoDB um hochentwickelte Business-Intelligence-Funktionen und eine leistungsfähige Schnittstelle auf SQL-Basis. Wenn Sie Daten aus einer DynamoDB-Tabelle in Amazon Redshift kopieren, können Sie komplexe Datenanalyseabfragen für diese Daten ausführen, einschließlich Joins mit anderen Tabellen im Amazon-Redshift-Cluster.

Im Hinblick auf den bereitgestellten Durchsatz wird eine Kopieroperation aus einer DynamoDB-Tabelle der Lesekapazität der Tabelle zugerechnet. Nachdem die Daten kopiert wurden, wirken sich die SQL-Abfragen in Amazon Redshift nicht auf DynamoDB aus. Dies liegt daran, dass Ihre Abfragen auf eine Kopie der Daten aus DynamoDB und nicht auf DynamoDB selbst wirken.

Vor dem Laden von Daten aus einer DynamoDB-Tabelle müssen Sie zunächst eine Amazon-Redshift-Tabelle als Ziel für die Daten erstellen. Hinweis: Sie kopieren dabei Daten aus einer NoSQL-Umgebung in eine SQL-Umgebung und die Regeln in einer Umgebung gelten nicht unbedingt in der anderen. Im Folgenden sind einige der Unterschiede aufgeführt:
+ DynamoDB-Tabellennamen können bis zu 255 Zeichen enthalten, einschließlich „.“ (Punkt) und „-“ (Bindestrich); außerdem muss die Groß- und Kleinschreibung beachtet werden. Amazon-Redshift-Tabellennamen sind auf 127 Zeichen beschränkt, dürfen keine Punkte oder Bindestriche enthalten und die Groß-/Kleinschreibung braucht nicht beachtet werden. Außerdem dürfen bei Tabellennamen keine Konflikte mit einem für Amazon Redshift reservierten Wort auftreten.
+ DynamoDB unterstützt das SQL-Konzept NULL nicht. Sie müssen angeben, wie Amazon Redshift leere oder leere Attributwerte in DynamoDB interpretiert und sie entweder als NULLs oder als leere Felder behandelt.
+ DynamoDB-Datentypen entsprechen nicht direkt den Datentypen von Amazon Redshift. Sie müssen dafür sorgen, dass jede Spalte in der Amazon-Redshift-Tabelle den richtigen Datentyp und die entsprechende Größe besitzt, um die Daten aus DynamoDB aufnehmen zu können.

Nachfolgend ist ein COPY-Befehl aus Amazon-Redshift-SQL als Beispiel aufgeführt:

```
copy favoritemovies from 'dynamodb://my-favorite-movies-table'
credentials 'aws_access_key_id=<Your-Access-Key-ID>;aws_secret_access_key=<Your-Secret-Access-Key>'
readratio 50;
```

In diesem Beispiel lautet die Quelltabelle in DynamoDB `my-favorite-movies-table`. Die Zieltabelle in Amazon Redshift ist `favoritemovies`. Die `readratio 50`-Klausel regelt den Verbrauch des bereitgestellten Durchsatzes (in Prozent). In diesem Fall belegt der COPY-Befehl nicht mehr als 50 % der für `my-favorite-movies-table` bereitgestellten Lesekapazitätseinheiten. Wir empfehlen dringend, dieses Verhältnis auf einen Wert festzulegen, der kleiner als der durchschnittliche, nicht genutzte, bereitgestellte Durchsatz ist.

Ausführliche Anweisungen zum Laden von Daten aus DynamoDB in Amazon Redshift finden Sie in den folgenden Abschnitten im[https://docs.aws.amazon.com/redshift/latest/dg/](https://docs.aws.amazon.com/redshift/latest/dg/):
+ [Laden von Daten aus einer DynamoDB-Tabelle](https://docs.aws.amazon.com/redshift/latest/dg/t_Loading-data-from-dynamodb.html)
+ [Der COPY-Befehl](https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html)
+ [COPY-Beispiele](https://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html)