

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.

# Hinzufügen von Daten zu einer RDS-Quelldatenbank und Abfragen der Daten
<a name="zero-etl.querying"></a>

Zum Erstellen einer Null-ETL-Integration, die Daten von Amazon RDS in Amazon Redshift repliziert, müssen Sie eine Datenbank im Ziel erstellen.

Stellen Sie für Verbindungen mit Amazon Redshift zunächst eine Verbindung mit Ihrem Amazon-Redshift-Cluster oder Ihrer Arbeitsgruppe her und erstellen Sie eine Datenbank mit einem Verweis auf Ihre Integrations-ID. Anschließend können Sie Daten zur RDS-Quelldatenbank hinzufügen und diese in Amazon Redshift oder Amazon SageMaker replizieren.

**Topics**
+ [Erstellen einer Zieldatenbank](#zero-etl.create-db)
+ [Hinzufügen von Daten zur Quelldatenbank](#zero-etl.add-data-rds)
+ [Abfragen Ihrer Amazon-RDS-Daten in Amazon Redshift](#zero-etl.query-data-redshift)
+ [Datentypunterschiede zwischen RDS und Amazon Redshift-Datenbanken](#zero-etl.data-type-mapping)
+ [DDL-Vorgänge für RDS für PostgreSQL](#zero-etl.ddl-postgres)

## Erstellen einer Zieldatenbank
<a name="zero-etl.create-db"></a>

Bevor Sie nach der Erstellung einer Integration mit der Replikation von Daten in Amazon Redshift beginnen können, müssen Sie in Ihrem Ziel-Data-Warehouse eine Datenbank erstellen. Diese Datenbank muss einen Verweis auf die Integrations-ID enthalten. Sie können die Amazon-Redshift-Konsole oder Query Editor v2 verwenden, um die Datenbank zu erstellen.

Anleitungen zum Erstellen einer Zieldatenbank finden Sie unter [Erstellen einer Zieldatenbank in Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.creating-db.html#zero-etl-using.create-db).

## Hinzufügen von Daten zur Quelldatenbank
<a name="zero-etl.add-data-rds"></a>

Nachdem Sie Ihre Integration konfiguriert haben, können Sie die RDS-Quelldatenbank mit Daten füllen, die Sie in Ihr Data Warehouse replizieren möchten.

**Anmerkung**  
Es gibt Unterschiede zwischen den Datentypen in Amazon RDS und dem Ziel-Analyse-Warehouse. Eine Tabelle mit Datentypzuordnungen finden Sie unter [Datentypunterschiede zwischen RDS und Amazon Redshift-Datenbanken](#zero-etl.data-type-mapping).

Stellen Sie zunächst mit dem MySQL-Client Ihrer Wahl eine Verbindung zur Quelldatenbank her. Anleitungen finden Sie unter [Herstellen einer Verbindung mit Ihrer MySQL-DB-Instance](USER_ConnectToInstance.md).

Erstellen Sie dann eine Tabelle und fügen Sie eine Zeile mit Beispieldaten ein.

**Wichtig**  
Stellen Sie sicher, dass die Tabelle über einen Primärschlüssel verfügt. Andernfalls kann sie nicht in das Ziel-Data-Warehouse repliziert werden.

**RDS für MySQL**

Im folgenden Beispiel wird das [Dienstprogramm MySQL Workbench](https://dev.mysql.com/downloads/workbench/) verwendet.

```
CREATE DATABASE my_db;

USE my_db;

CREATE TABLE books_table (ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL,
Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID));

INSERT INTO books_table VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
```



**RDS für PostgreSQL**

Das folgende Beispiel verwendet das interaktive PostgreSQL-Terminal `[psql](https://www.postgresql.org/docs/current/app-psql.html)`. Wenn Sie eine Verbindung zur Datenbank herstellen, schließen Sie den Datenbanknamen ein, den Sie replizieren möchten.

```
psql -h mydatabase.123456789012.us-east-2.rds.amazonaws.com -p 5432 -U username -d named_db;

named_db=> CREATE TABLE books_table (ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL,
Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID));

named_db=> INSERT INTO books_table VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
```

**RDS für Oracle**

Im folgenden Beispiel wird SQL\$1Plus verwendet, um eine Verbindung mit Ihrer Datenbank von RDS für Oracle herzustellen.

```
sqlplus 'user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dns_name)(PORT=port))(CONNECT_DATA=(SID=database_name)))'

SQL> CREATE TABLE books_table (ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL,
Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID));

SQL> INSERT INTO books_table VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
```

## Abfragen Ihrer Amazon-RDS-Daten in Amazon Redshift
<a name="zero-etl.query-data-redshift"></a>

Nachdem Sie Daten zur RDS-Datenbank hinzugefügt haben, werden sie in die Zieldatenbank repliziert und können abgefragt werden.

**So fragen Sie die replizierten Daten ab**

1. Navigieren Sie zur Amazon Redshift-Konsole und wählen Sie im linken Navigationsbereich die Option **Query Editor v2** aus.

1. Stellen Sie eine Verbindung mit Ihrem Cluster oder Ihrer Arbeitsgruppe her und wählen Sie Ihre aus der Integration erstellte Datenbank im Dropdown-Menü aus (**destination\$1database** in diesem Beispiel). Anleitungen zum Erstellen einer Zieldatenbank finden Sie unter [Erstellen einer Zieldatenbank in Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/zero-etl-using.creating-db.html#zero-etl-using.create-db).

1. Verwenden Sie eine SELECT-Anweisung, um Ihre Daten abzufragen. In diesem Beispiel können Sie den folgenden Befehl ausführen, um alle Daten aus der Tabelle auszuwählen, die Sie in der RDS-Quelldatenbank erstellt haben:

   ```
   SELECT * from my_db."books_table";
   ```  
![\[Führen Sie eine SELECT-Anweisung im Abfrage-Editor aus. Das Ergebnis ist eine einzelne Zeile mit Beispieldaten, die zur Amazon-RDS-Datenbank hinzugefügt wurden.\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/images/zero-etl-redshift-editor.png)
   + `my_db` ist der Name des RDS-Datenbankschemas. 
   + `books_table` ist der Name der RDS-Tabelle.

Sie können die Daten auch mit einem Befehlszeilen-Client abfragen. Beispiel:

```
destination_database=# select * from my_db."books_table";

 ID |       Title |        Author |   Copyright |                  Genre |  txn_seq |  txn_id
----+–------------+---------------+-------------+------------------------+----------+--------+
  1 | The Shining |  Stephen King |        1977 |   Supernatural fiction |        2 |   12192
```

**Anmerkung**  
Um zwischen Groß- und Kleinschreibung zu unterscheiden, verwenden Sie doppelte Anführungszeichen (" ") für Schema-, Tabellen- und Spaltennamen. Weitere Informationen finden Sie unter [enable\$1case\$1sensitive\$1identifier](https://docs.aws.amazon.com/redshift/latest/dg/r_enable_case_sensitive_identifier.html).

## Datentypunterschiede zwischen RDS und Amazon Redshift-Datenbanken
<a name="zero-etl.data-type-mapping"></a>

Die folgenden Tabellen zeigen die Zuordnungen der Datentypen von RDS für MySQL, RDS für PostgreSQL und RDS für Oracle zu den entsprechenden Zieldatentypen. *Amazon RDS unterstützt derzeit nur diese Datentypen für Null-ETL-Integrationen.*

Wenn eine Tabelle in der Quelldatenbank einen nicht unterstützten Datentyp enthält, wird die Tabelle nicht synchronisiert und kann vom Ziel nicht genutzt werden. Das Streaming von der Quelle zum Ziel wird fortgesetzt, aber die Tabelle mit dem nicht unterstützten Datentyp ist nicht verfügbar. Um die Tabelle zu reparieren und im Ziel verfügbar zu machen, müssen Sie die grundlegende Änderung manuell rückgängig machen und dann die Integration aktualisieren, indem Sie `[ALTER DATABASE...INTEGRATION REFRESH](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_DATABASE.html)` ausführen.

**Anmerkung**  
Null-ETL-Integrationen mit einem Amazon SageMaker-Lakehouse können nicht aktualisiert werden. Löschen Sie stattdessen die Integration und erstellen Sie sie erneut.

**Topics**
+ [RDS für MySQL](#zero-etl.data-type-mapping-mysql)
+ [RDS für PostgreSQL](#zero-etl.data-type-mapping-postgres)
+ [RDS für Oracle](#zero-etl.data-type-mapping-oracle)

### RDS für MySQL
<a name="zero-etl.data-type-mapping-mysql"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/zero-etl.querying.html)

### RDS für PostgreSQL
<a name="zero-etl.data-type-mapping-postgres"></a>

Null-ETL-Integrationen für RDS für PostgreSQL unterstützen keine benutzerdefinierten Datentypen oder Datentypen, die durch Erweiterungen erstellt wurden.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/zero-etl.querying.html)

### RDS für Oracle
<a name="zero-etl.data-type-mapping-oracle"></a>

**Nicht unterstützte Datentypen**

Die folgenden Datentypen von RDS für Oracle werden von Amazon Redshift nicht unterstützt:
+ `ANYDATA`
+ `BFILE`
+ `REF`
+ `ROWID`
+ `UROWID`
+ `VARRAY`
+ `SDO_GEOMETRY`
+ Benutzerdefinierte Datentypen

**Unterschiede zwischen den Datentypen**

Die folgende Tabelle zeigt die Unterschiede zwischen den Datentypen, die sich auf eine Null-ETL-Integration auswirken, wenn RDS für Oracle die Quelle und Amazon Redshift das Ziel ist.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/zero-etl.querying.html)

## DDL-Vorgänge für RDS für PostgreSQL
<a name="zero-etl.ddl-postgres"></a>

Amazon Redshift wird von PostgreSQL abgeleitet und hat daher aufgrund der gemeinsamen PostgreSQL-Architektur mehrere Features mit RDS für PostgreSQL gemeinsam. Null-ETL-Integrationen nutzen diese Ähnlichkeiten, um die Datenreplikation von RDS für PostgreSQL in Amazon Redshift zu optimieren, indem sie Datenbanken nach Namen zuordnen und die Datenbank, das Schema und die Tabellenstruktur gemeinsam nutzen.

Beachten Sie bei der Verwaltung von Null-ETL-Integrationen von RDS für PostgreSQL die folgenden Punkte:
+ Die Isolation wird auf Datenbankebene verwaltet.
+ Die Replikation erfolgt auf Datenbankebene. 
+ Datenbanken von RDS für PostgreSQL werden Amazon-Redshift-Datenbanken nach Namen zugeordnet, wobei Daten in die entsprechende umbenannte Redshift-Datenbank fließen, wenn das Original umbenannt wird.

Trotz ihrer Ähnlichkeiten weisen Amazon Redshift und RDS für PostgreSQL wesentliche Unterschiede auf. In den folgenden Abschnitten werden die Systemantworten von Amazon Redshift für gängige DDL-Vorgänge beschrieben.

**Topics**
+ [Datenbankvorgänge](#zero-etl.ddl-postgres-database)
+ [Schemavorgänge](#zero-etl.ddl-postgres-schema)
+ [Tabellenoperationen](#zero-etl.ddl-postgres-table)

### Datenbankvorgänge
<a name="zero-etl.ddl-postgres-database"></a>

Die folgende Tabelle zeigt die Systemantworten für Datenbank-DDL-Vorgänge.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/zero-etl.querying.html)

### Schemavorgänge
<a name="zero-etl.ddl-postgres-schema"></a>

Die folgende Tabelle zeigt die Systemantworten für Schema-DDL-Vorgänge.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/zero-etl.querying.html)

### Tabellenoperationen
<a name="zero-etl.ddl-postgres-table"></a>

Die folgende Tabelle zeigt die Systemantworten auf Tabellen-DDL-Vorgänge.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/AmazonRDS/latest/UserGuide/zero-etl.querying.html)