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 einem einer RDS-Quelldatenbank und deren Abfrage
Um die Erstellung einer Zero-ETL-Integration abzuschließen, die Daten von Amazon RDS Amazon Redshift repliziert, müssen Sie eine Datenbank im Zielziel erstellen.
Stellen Sie für Verbindungen mit Amazon Redshift eine Verbindung zu Ihrem Amazon Redshift Redshift-Cluster oder Ihrer Arbeitsgruppe her und erstellen Sie eine Datenbank mit einem Verweis auf Ihre Integrations-ID. Anschließend können Sie Daten zu Ihrem für die Quell-RDS-Datenbank hinzufügen und sehen, wie sie in Amazon Redshift oder repliziert werden. Amazon SageMaker
Themen
Eine Zieldatenbank erstellen
Bevor Sie mit der Replikation von Daten in Amazon Redshift beginnen können, müssen Sie nach dem Erstellen einer Integration eine Datenbank in Ihrem Ziel-Data Warehouse 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.
Anweisungen zum Erstellen einer Zieldatenbank finden Sie unter Erstellen einer Zieldatenbank in Amazon Redshift.
Daten zum der Quelldatenbank hinzufügen
Nachdem Sie Ihre Integration konfiguriert haben, können Sie den der Quell-RDS-Datenbank 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 Target Analytics Warehouse. Eine Tabelle mit Datentypzuordnungen finden Sie unter Datentypunterschiede zwischen RDS und Amazon Redshift-Datenbanken.
Stellen Sie zunächst mit dem MySQL Ihrer Wahl eine Verbindung zum her. Detaillierte Anweisungen finden Sie unter Verbindung zu Ihrer MySQL-DB-Instance herstellen.
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 MySQL Workbench-Hilfsprogramm
CREATE DATABASE
my_db
; USEmy_db
; CREATE TABLEbooks_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 INTObooks_table
VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
RDS für PostgreSQL
Das folgende Beispiel verwendet das interaktive psql
PostgreSQL-Terminal. Wenn Sie eine Verbindung zur Datenbank herstellen, geben Sie den Datenbanknamen an, den Sie replizieren möchten.
psql -h
mydatabase
.123456789012
.us-east-2.rds.amazonaws.com -p 5432 -Uusername
-dnamed_db
; named_db=> CREATE TABLEbooks_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 INTObooks_table
VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
RDS für Oracle
Im folgenden Beispiel wird SQL*Plus verwendet, um eine Verbindung zu Ihrer RDS for Oracle-Datenbank herzustellen.
sqlplus '
user_name
@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dns_name
)(PORT=port
))(CONNECT_DATA=(SID=database_name
)))' SQL> CREATE TABLEbooks_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 INTObooks_table
VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');
Abfragen Ihrer Amazon RDS in Amazon Redshift
Nachdem Sie dem der RDS-Datenbank Daten hinzugefügt haben, werden sie in die Zieldatenbank repliziert und können abgefragt werden.
So fragen Sie die replizierten Daten ab
-
Navigieren Sie zur Amazon Redshift-Konsole und wählen Sie im linken Navigationsbereich die Option Query Editor v2 aus.
-
Stellen Sie eine Verbindung mit Ihrem Cluster oder Ihrer Arbeitsgruppe her und wählen Sie Ihre aus der Integration erstellte Datenbank im Drop-down-Menü aus (destination_database in diesem Beispiel). Anweisungen zum Erstellen einer Zieldatenbank finden Sie unter Erstellen einer Zieldatenbank in Amazon Redshift.
-
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 im der Quell-RDS-Datenbank erstellt haben:
SELECT * from
my_db
."books_table
";-
ist der Name des RDS-Datenbankschemas.my_db
-
ist der Name der RDS-Tabelle.books_table
-
Sie können die Daten auch mit einem Befehlszeilenclient abfragen. Zum 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_case_sensitive_identifier.
Datentypunterschiede zwischen RDS und Amazon Redshift-Datenbanken
Die folgenden Tabellen zeigen die Zuordnungen von RDS für MySQL, RDS für PostgreSQL und RDS für Oracle. Sie zu den entsprechenden Zieldatentypen. Amazon RDS unterstützt derzeit nur diese Datentypen für Zero-ETL-Integrationen.
Wenn eine Tabelle in Ihrem einen nicht unterstützten Datentyp enthält, ist die Tabelle nicht mehr synchron und kann vom Zielziel nicht mehr verwendet 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 sie im Zielziel verfügbar zu machen, müssen Sie die grundlegende Änderung manuell rückgängig machen und dann die Integration aktualisieren, indem Sie Folgendes ausführen. ALTER DATABASE...INTEGRATION
REFRESH
Anmerkung
Sie können Zero-ETL-Integrationen nicht mit einem Lakehouse aktualisieren. Amazon SageMaker Löschen Sie stattdessen die Integration und versuchen Sie erneut, sie zu erstellen.
RDS für MySQL
RDS für MySQL-Datentyp | Zieldatentyp | Beschreibung | Einschränkungen |
---|---|---|---|
INT | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | Keine |
SMALLINT | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | Keine |
TINYINT | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | Keine |
MEDIUMINT | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | Keine |
BIGINT | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | Keine |
INT UNSIGNED | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | Keine |
TINYINT UNSIGNED | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | Keine |
MEDIUMINT UNSIGNED | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | Keine |
BIGINT UNSIGNED | DECIMAL(20,0) | Genauer Zahlenwert mit wählbarer Genauigkeit | Keine |
DEZIMAL (p, s) = NUMERISCH (p, s) | DECIMAL (p,s) | Genauer Zahlenwert mit wählbarer Genauigkeit |
Eine Genauigkeit von mehr als 38 und eine Skalierung von mehr als 37 werden nicht unterstützt |
DEZIMAL (p, s) OHNE VORZEICHEN = NUMERISCH (p, s) OHNE VORZEICHEN | DECIMAL (p,s) | Genauer Zahlenwert mit wählbarer Genauigkeit |
Eine Genauigkeit von mehr als 38 und eine Skalierung von mehr als 37 werden nicht unterstützt |
FLOAT4/REAL | REAL | Gleitkommazahl mit einfacher Genauigkeit | Keine |
FLOAT4/REAL UNSIGNIERT | REAL | Gleitkommazahl mit einfacher Genauigkeit | Keine |
DOUBLE/REAL/FLOAT8 | DOUBLE PRECISION | Double (Gleitkommazahl mit doppelter Genauigkeit) | Keine |
DOUBLE/REAL/FLOAT8 UNSIGNIERT | DOUBLE PRECISION | Double (Gleitkommazahl mit doppelter Genauigkeit) | Keine |
BIT (n) | VARBYTE(8) | Binärwert mit variabler Länge | Keine |
BINARY(n) | VARBYTE (n) | Binärwert mit variabler Länge | Keine |
VARBINARY (n) | VARBYTE (n) | Binärwert mit variabler Länge | Keine |
CHAR(n) | VARCHAR (n) | Zeichenkettenwert mit variabler Länge | Keine |
VARCHAR (n) | VARCHAR (n) | Zeichenkettenwert mit variabler Länge | Keine |
TEXT | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
TINYTEXT | VARCHAR(255) | Zeichenkettenwert mit variabler Länge bis zu 255 Zeichen | Keine |
MEDIUMTEXT | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
LONGTEXT | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
ENUM | VARCHAR(1020) | Zeichenkettenwert mit variabler Länge bis zu 1.020 Zeichen | Keine |
SET | VARCHAR(1020) | Zeichenkettenwert mit variabler Länge bis zu 1.020 Zeichen | Keine |
DATUM | DATUM | Kalenderdatum (Jahr, Monat, Tag) | Keine |
DATETIME | TIMESTAMP (ZEITSTEMPEL) | Datum und Uhrzeit (ohne Zeitzone) | Keine |
TIMESTAMP(p) | TIMESTAMP (ZEITSTEMPEL) | Datum und Uhrzeit (ohne Zeitzone) | Keine |
TIME | VARCHAR(18) | Zeichenkettenwert mit variabler Länge bis zu 18 Zeichen | Keine |
JAHR | VARCHAR(4) | Zeichenkettenwert mit variabler Länge bis zu 4 Zeichen | Keine |
JSON | SUPER | Semistrukturierte Daten oder Dokumente als Werte | Keine |
Zero-ETL-Integrationen für RDS for PostgreSQL unterstützen keine benutzerdefinierten Datentypen oder Datentypen, die durch Erweiterungen erstellt wurden.
RDS für PostgreSQL | Amazon-Redshift-Datentyp | Beschreibung | Einschränkungen |
---|---|---|---|
Array | SUPER | Semistrukturierte Daten oder Dokumente als Werte | Keine |
bigint | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | Keine |
große Seriennummer | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | Keine |
etwas variierend (n) | VARBYTE (n) | Binärwert mit variabler Länge bis zu 16.777.216 Byte | Keine |
Bit (n) | VARBYTE (n) | Binärwert mit variabler Länge bis zu 16.777.216 Byte | Keine |
Bit, Bit variierend | VARBYTE (16777216) | Binärwert mit variabler Länge bis zu 16.777.216 Byte | Keine |
boolesch | BOOLEAN | Logischer boolescher Wert (wahr/falsch) | Keine |
bytea | VARBYTE (16777216) | Binärwert mit variabler Länge bis zu 16.777.216 Byte | Keine |
char (n) | CHAR(n) | Zeichenkettenwert mit fester Länge bis zu 65.535 Byte | Keine |
Zeichen variierend (n) | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
cid | BIGINT |
8-Byte-Ganzzahl mit Vorzeichen |
Keine |
Apfelwein |
VARCHAR (19) |
Zeichenkettenwert mit variabler Länge bis zu 19 Zeichen |
Keine |
date | DATUM | Kalenderdatum (Jahr, Monat, Tag) |
Werte über 294.276 n. Chr. werden nicht unterstützt |
double precision | DOUBLE PRECISION | Gleitkommazahlen mit doppelter Genauigkeit | Subnormale Werte werden nicht vollständig unterstützt |
gtsvector |
VARCHAR(65535) |
Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen |
Keine |
inet |
VARCHAR (19) |
Zeichenkettenwert mit variabler Länge bis zu 19 Zeichen |
Keine |
Ganzzahl | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | Keine |
int2vector |
SUPER | Semistrukturierte Daten oder Dokumente als Werte. | Keine |
Intervall | INTERVAL | Dauer der Zeit | Es werden nur INTERVAL-Typen unterstützt, die entweder ein Jahr pro Monat oder einen Tag bis Sekunde angeben. |
json | SUPER | Semistrukturierte Daten oder Dokumente als Werte | Keine |
jsonb | SUPER | Semistrukturierte Daten oder Dokumente als Werte | Keine |
Json-Pfad | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
macaddr |
VARCHAR (17) | Zeichenkettenwert mit variabler Länge bis zu 17 Zeichen | Keine |
macaddr8 |
VARCHAR (23) | Zeichenkettenwert mit variabler Länge bis zu 23 Zeichen | Keine |
money | DEZIMAL (20,3) | Betrag in der Währung | Keine |
Name | VARCHAR (64) | Zeichenkettenwert mit variabler Länge bis zu 64 Zeichen | Keine |
numeric(p,s) | DECIMAL (p,s) | Benutzerdefinierter Wert mit fester Genauigkeit |
|
OID | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | Keine |
Oid-Vektor | SUPER | Semistrukturierte Daten oder Dokumente als Werte. | Keine |
pg_brin_bloom_summary | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
pg_dependencies | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
pg_lsn | VARCHAR (17) | Zeichenkettenwert mit variabler Länge bis zu 17 Zeichen | Keine |
pg_mcv_list | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
pg_ndistinct | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
pg_node_tree | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
pg_snapshot | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
real | REAL | Gleitkommazahl mit einfacher Genauigkeit | Subnormale Werte werden nicht vollständig unterstützt |
Vorläufer | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
smallint | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | Keine |
kleine Seriennummer | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | Keine |
serial | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | Keine |
text | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
tid | VARCHAR (23) | Zeichenkettenwert mit variabler Länge bis zu 23 Zeichen | Keine |
Zeit [(p)] ohne Zeitzone | VARCHAR (19) | Zeichenkettenwert mit variabler Länge bis zu 19 Zeichen | Infinity und -Infinity Werte werden nicht unterstützt |
Zeit [(p)] mit Zeitzone | VARCHAR (22) | Zeichenkettenwert mit variabler Länge bis zu 22 Zeichen | Infinity und -Infinity Werte werden nicht unterstützt |
Zeitstempel [(p)] ohne Zeitzone | TIMESTAMP (ZEITSTEMPEL) | Datum und Uhrzeit (ohne Zeitzone) |
|
Zeitstempel [(p)] mit Zeitzone | TIMESTAMPTZ | Datum und Uhrzeit (mit Zeitzone) |
|
tsquery | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
tsvector | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
txid_snapshot | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
uuid | VARCHAR (36) | 36 Zeichen lange Zeichenfolge mit variabler Länge | Keine |
xid | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | Keine |
xid8 | DEZIMAL (20, 0) | Dezimalzahl mit fester Genauigkeit | Keine |
xml | VARCHAR(65535) | Zeichenkettenwert mit variabler Länge bis zu 65.535 Zeichen | Keine |
RDS für Oracle
Datentypen werden nicht unterstützt
Die folgenden RDS for Oracle-Datentypen 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 Zero-ETL-Integration auswirken, wenn RDS for Oracle die Quelle und Amazon Redshift das Ziel ist.
Datentyp RDS für Oracle | Amazon-Redshift-Datentyp |
---|---|
BINARY_FLOAT |
FLOAT4 |
BINARY_DOUBLE |
FLOAT8 |
BINARY |
VARCHAR (Länge) |
FLOAT (P) |
Wenn die Genauigkeit =< 24 ist, dann FLOAT4. Wenn die Genauigkeit > 24 ist, dann FLOAT8. |
NUMBER (P,S) |
Wenn die Skala => 0 und =< 37 ist, dann NUMERIC (p, s). Wenn die Skala => 38 und =< 127 ist, dann VARCHAR (Länge). Wenn die Skala 0 ist:
Wenn die Skala kleiner als 0 ist, dann INT8. |
DATUM |
Wenn die Skala je nach Redshift-Zielspaltentyp => 0 und =< 6 ist, dann eine der folgenden:
Wenn die Skala => 7 und =< 9 ist, dann VARCHAR (37). |
INTERVAL_YEAR TO MONTH |
Wenn die Länge 1—65.535 ist, dann VARCHAR (Länge in Byte). Wenn die Länge 65.536—2.147.483.647 ist, dann VARCHAR (65535). |
INTERVAL_DAY TO SECOND |
Wenn die Länge 1—65.535 ist, dann VARCHAR (Länge in Byte). Wenn die Länge 65.536—2.147.483.647 ist, dann VARCHAR (65535). |
TIMESTAMP (ZEITSTEMPEL) |
Wenn die Skala je nach Redshift-Zielspaltentyp => 0 und =< 6 ist, dann eine der folgenden:
Wenn die Skala => 7 und =< 9 ist, dann VARCHAR (37). |
TIMESTAMP WITH TIME ZONE |
Wenn die Länge 1—65.535 ist, dann VARCHAR (Länge in Byte). Wenn die Länge 65.536—2.147.483.647 ist, dann VARCHAR (65535). |
TIMESTAMP WITH LOCAL TIME ZONE |
Wenn die Länge 1—65.535 ist, dann VARCHAR (Länge in Byte). Wenn die Länge 65.536—2.147.483.647 ist, dann VARCHAR (65535). |
CHAR |
Wenn die Länge 1—65.535 ist, dann VARCHAR (Länge in Byte). Wenn die Länge 65.536—2.147.483.647 ist, dann VARCHAR (65535). |
VARCHAR2 |
Wenn die Länge größer als 4.000 Byte ist, dann VARCHAR (maximale LOB-Größe). Die maximale LOB-Größe darf 63 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. Wenn die Länge 4.000 Byte oder weniger beträgt, dann VARCHAR (Länge in Byte). |
NCHAR |
Wenn die Länge 1—65.535 ist, dann NVARCHAR (Länge in Byte). Wenn die Länge 65.536—2.147.483.647 ist, dann NVARCHAR (65535). |
NVARCHAR2 |
Wenn die Länge mehr als 4.000 Byte beträgt, dann NVARCHAR (maximale LOB-Größe). Die maximale LOB-Größe darf 63 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. Wenn die Länge 4.000 Byte oder weniger beträgt, dann NVARCHAR (Länge in Byte). |
RAW |
VARCHAR (Länge) |
REAL |
FLOAT8 |
BLOB |
VARCHAR (maximale LOB-Größe * 2) Die maximale LOB-Größe darf 31 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. |
CLOB |
VARCHAR (maximale LOB-Größe) Die maximale LOB-Größe darf 63 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. |
NCLOB |
NVARCHAR (maximale LOB-Größe) Die maximale LOB-Größe darf 63 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. |
LONG |
VARCHAR (maximale LOB-Größe) Die maximale LOB-Größe darf 63 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. |
LONG RAW |
VARCHAR (maximale LOB-Größe * 2) Die maximale LOB-Größe darf 31 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. |
XMLTYPE |
VARCHAR (maximale LOB-Größe) Die maximale LOB-Größe darf 63 KB nicht überschreiten. Amazon Redshift unterstützt keine Größe von VARCHARs mehr als 64 KB. |
Amazon Redshift ist von PostgreSQL abgeleitet und teilt daher aufgrund der gemeinsamen PostgreSQL-Architektur mehrere Funktionen mit RDS for PostgreSQL . Zero-ETL-Integrationen nutzen diese Ähnlichkeiten, um die Datenreplikation von RDS für PostgreSQL nach Amazon Redshift zu optimieren, indem sie Datenbanken nach Namen zuordnen und die gemeinsame Datenbank, das Schema und die Tabellenstruktur nutzen.
Beachten Sie bei der Verwaltung von RDS für PostgreSQL Zero-ETL-Integrationen die folgenden Punkte:
-
Die Isolierung wird auf Datenbankebene verwaltet.
-
Die Replikation erfolgt auf Datenbankebene.
-
RDS for PostgreSQL werden Amazon Redshift Redshift-Datenbanken namentlich zugeordnet, wobei Daten in die entsprechende umbenannte Redshift-Datenbank fließen, wenn das Original umbenannt wird.
Trotz ihrer Ähnlichkeiten weisen Amazon Redshift und RDS for PostgreSQL Aurora PostgreSQL Unterschiede auf. In den folgenden Abschnitten werden die Antworten des Amazon Redshift Redshift-Systems für gängige DDL-Operationen beschrieben.
Datenbankoperationen
Die folgende Tabelle zeigt die Systemantworten für Datenbank-DDL-Operationen.
DDL-Vorgang | Reaktion des Redshift-Systems |
---|---|
CREATE DATABASE |
Keine Operation |
DROP DATABASE |
Amazon Redshift löscht alle Daten in der Redshift-Zieldatenbank. |
RENAME DATABASE |
Amazon Redshift löscht alle Daten in der ursprünglichen Zieldatenbank und synchronisiert die Daten in der neuen Zieldatenbank erneut. Wenn die neue Datenbank nicht existiert, müssen Sie sie manuell erstellen. Anweisungen finden Sie unter Erstellen einer Zieldatenbank in Amazon Redshift. |
Schemaoperationen
Die folgende Tabelle zeigt die Systemantworten für Schema-DDL-Operationen.
DDL-Vorgang | Reaktion des Redshift-Systems |
---|---|
CREATE SCHEMA |
Keine Operation |
DROP SCHEMA |
Amazon Redshift löscht das ursprüngliche Schema. |
RENAME SCHEMA |
Amazon Redshift löscht das ursprüngliche Schema und synchronisiert dann die Daten im neuen Schema erneut. |
Tabellenoperationen
Die folgende Tabelle zeigt die Systemantworten für Tabellen-DDL-Operationen.
DDL-Vorgang | Reaktion des Redshift-Systems |
---|---|
CREATE TABLE |
Amazon Redshift erstellt die Tabelle. Einige Operationen führen dazu, dass die Tabellenerstellung fehlschlägt, z. B. das Erstellen einer Tabelle ohne Primärschlüssel oder das Durchführen einer deklarativen Partitionierung. Weitere Informationen erhalten Sie unter Einschränkungen und Fehlerbehebung bei Amazon RDS Zero-ETL-Integrationen. |
DROP TABLE |
Amazon Redshift löscht die Tabelle. |
TRUNCATE TABLE |
Amazon Redshift kürzt die Tabelle. |
ALTER TABLE
(RENAME... ) |
Amazon Redshift benennt die Tabelle oder Spalte um. |
ALTER TABLE (SET
SCHEMA ) |
Amazon Redshift löscht die Tabelle im ursprünglichen Schema und synchronisiert die Tabelle im neuen Schema erneut. |
ALTER TABLE (ADD PRIMARY
KEY ) |
Amazon Redshift fügt einen Primärschlüssel hinzu und synchronisiert die Tabelle erneut. |
ALTER TABLE (ADD
COLUMN ) |
Amazon Redshift fügt der Tabelle eine Spalte hinzu. |
ALTER TABLE (DROP
COLUMN ) |
Amazon Redshift löscht die Spalte, wenn es sich nicht um eine Primärschlüsselspalte handelt. Andernfalls wird die Tabelle erneut synchronisiert. |
ALTER TABLE (SET
LOGGED/UNLOGGED ) |
Wenn Sie die Tabelle auf protokolliert ändern, synchronisiert Amazon Redshift die Tabelle erneut. Wenn Sie die Tabelle auf unlogged ändern, löscht Amazon Redshift die Tabelle. |