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 mit RDSQuelldatenbank und deren Abfrage in Amazon Redshift
Um die Erstellung einer ETL Zero-Integration abzuschließen, die Daten von Amazon Amazon Redshift repliziert, müssen Sie eine Zieldatenbank in Amazon Redshift erstellen.
Stellen Sie 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 zu Ihrem Ihrer RDSQuelldatenbank hinzufügen und sehen, wie sie in Amazon Redshift repliziert werden.
Themen
Erstellen einer Zieldatenbank in Amazon Redshift
Bevor Sie mit der Replikation von Daten in Amazon Redshift beginnen können, müssen Sie in Ihrem Ziel-Data-Warehouse eine Zieldatenbank erstellen. Diese Zieldatenbank 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.
Nachdem Sie Ihre Integration konfiguriert haben, können Sie dem der RDSDatenbank einige Daten hinzufügen, die Sie in Ihr Amazon Redshift Data Warehouse replizieren möchten.
Anmerkung
Es gibt Unterschiede zwischen den Datentypen in Amazon RDS und Amazon Redshift. Eine Tabelle mit Datentypzuordnungen finden Sie unter Unterschiede zwischen den Datentypen zwischen RDS - und Amazon Redshift Redshift-Datenbanken.
Stellen Sie zunächst mithilfe des My- SQL her. Detaillierte Anweisungen finden Sie unter Verbinden mit einer DB-Instance, auf der die MySQL-Datenbank-Engine ausgeführt wird.
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.
Im folgenden Beispiel wird das My SQL 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');
Abfragen Ihrer Amazon RDS in Amazon Redshift
Nachdem Sie dem Daten hinzugefügt haben, werden sie in Amazon Redshift repliziert und können abgefragt werden. RDS
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 RDSQuelldatenbank erstellt haben:
SELECT * from
my_db
."books_table
";-
ist der Name des RDS.my_db
-
ist der RDS.books_table
-
Sie können die Daten auch mit einem Befehlszeilenclient abfragen. Beispielsweise:
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.
Unterschiede zwischen den Datentypen zwischen RDS - und Amazon Redshift Redshift-Datenbanken
Die folgende Tabelle zeigt die Zuordnung einer RDS For SQL zu einem entsprechenden Amazon Redshift SQL Redshift-Datentyp. Amazon RDS unterstützt derzeit nur diese Datentypen, sodass keine ETL Integrationen erforderlich sind.
Wenn eine Tabelle in Ihrem einen nicht unterstützten Datentyp enthält, ist die Tabelle nicht mehr synchron und kann vom Amazon Redshift Redshift-Ziel nicht 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 in Amazon Redshift 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
ausführen.
RDSfür My SQL
RDSfür My SQL Datentyp | Amazon-Redshift-Datentyp | Beschreibung | Einschränkungen |
---|---|---|---|
INT | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | |
SMALLINT | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | |
TINYINT | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | |
MEDIUMINT | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | |
BIGINT | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | |
INT UNSIGNED | BIGINT | 8-Byte-Ganzzahl mit Vorzeichen | |
TINYINT UNSIGNED | SMALLINT | 2-Byte-Ganzzahl mit Vorzeichen | |
MEDIUMINT UNSIGNED | INTEGER | 4-Byte-Ganzzahl mit Vorzeichen | |
BIGINT UNSIGNED | DECIMAL(20,0) | Genauer Zahlenwert mit wählbarer Genauigkeit | |
DECIMAL(p, s) = NUMERIC (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 |
DECIMAL(p, s) UNSIGNED = NUMERIC (p, s) UNSIGNED | 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 | |
FLOAT4/REAL UNSIGNED | REAL | Gleitkommazahl mit einfacher Genauigkeit | |
DOUBLE/REAL/FLOAT8 | DOUBLE PRECISION | Double (Gleitkommazahl mit doppelter Genauigkeit) | |
DOUBLE/REAL/FLOAT8 UNSIGNED | DOUBLE PRECISION | Double (Gleitkommazahl mit doppelter Genauigkeit) | |
BIT(n) | VARBYTE(8) | Binärwert mit variabler Länge | |
BINARY(n) | VARBYTE(n) | Binärwert mit variabler Länge | |
VARBINARY(n) | VARBYTE(n) | Binärwert mit variabler Länge | |
CHAR(n) | VARCHAR(n) | Zeichenkettenwert mit variabler Länge | |
VARCHAR(n) | VARCHAR(n) | Zeichenkettenwert mit variabler Länge | |
TEXT | VARCHAR(65535) | Zeichenkettenwert variabler Länge bis zu 65535 Byte | |
TINYTEXT | VARCHAR(255) | Zeichenkettenwert variabler Länge bis zu 255 Byte | |
MEDIUMTEXT | VARCHAR(65535) | Zeichenkettenwert variabler Länge bis zu 65535 Byte | |
LONGTEXT | VARCHAR(65535) | Zeichenkettenwert variabler Länge bis zu 65535 Byte | |
ENUM | VARCHAR(1020) | Zeichenkettenwert variabler Länge bis zu 1020 Byte | |
SET | VARCHAR(1020) | Zeichenkettenwert variabler Länge bis zu 1020 Byte | |
DATE | DATE | Kalenderdatum (Jahr, Monat, Tag) | |
DATETIME | TIMESTAMP | Datum und Uhrzeit (ohne Zeitzone) | |
TIMESTAMP(p) | TIMESTAMP | Datum und Uhrzeit (ohne Zeitzone) | |
TIME | VARCHAR(18) | Zeichenkettenwert variabler Länge bis zu 18 Byte | |
YEAR | VARCHAR(4) | Zeichenkettenwert variabler Länge bis zu 4 Byte | |
JSON | SUPER | Semistrukturierte Daten oder Dokumente als Werte |