Hinzufügen von Daten zu einem Aurora-DB-Cluster mit und deren Abfrage in Amazon Redshift - Amazon Aurora

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 Aurora-DB-Cluster mit und deren Abfrage in Amazon Redshift

Um die Erstellung einer ETL Zero-Integration abzuschließen, die Daten von Aurora nach RDS 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 Aurora-DB-Cluster Ihrer hinzufügen und sehen, wie sie in Amazon Redshift repliziert werden.

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.

Daten zum hinzufügen

Nachdem Sie Ihre Integration konfiguriert haben, können Sie dem Aurora-DB-Cluster der einige Daten hinzufügen, die Sie in Ihr Amazon Redshift Data Warehouse replizieren möchten.

Anmerkung

Es gibt Unterschiede zwischen den Datentypen in Amazon Aurora und Amazon Redshift. Eine Tabelle mit Datentypzuordnungen finden Sie unter Unterschiede zwischen den Datentypen zwischen Aurora - und Amazon Redshift Redshift-Datenbanken.

Stellen Sie zunächst mithilfe des My- SQL oder SQL Postgre-Clients Ihrer Wahl eine Verbindung zum her. Detaillierte Anweisungen finden Sie unter Herstellen einer Verbindung mit einem Amazon Aurora-DB-Cluster.

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.

Die SQL Postgre-Dienstprogramme pg_dump und pg_restore erstellen zunächst Tabellen ohne Primärschlüssel und fügen ihn anschließend hinzu. Wenn Sie eines dieser Dienstprogramme verwenden, empfehlen wir, zuerst ein Schema zu erstellen und dann Daten in einem separaten Befehl zu laden.

Mein SQL

Im folgenden Beispiel wird das My SQL Workbench-Hilfsprogramm 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');

Postgret SQL

Das folgende Beispiel verwendet das SQL interaktive psql Postgre-Terminal. Wenn Sie eine Verbindung zum Cluster herstellen, schließen Sie die benannte Datenbank ein, die Sie bei der Erstellung der Integration angegeben haben.

psql -h mycluster.cluster-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");

Abfragen Ihrer Aurora-Daten in Amazon Redshift

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.

  2. 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.

  3. 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 Aurora-DB-Cluster der erstellt haben:

    SELECT * from my_db."books_table";
    Führen Sie eine SELECT Anweisung im Redshift-Abfrage-Editor aus. Das Ergebnis ist eine einzelne Zeile mit Beispieldaten, die der RDS Datenbank hinzugefügt wurde.
    • my_dbist der Name des Aurora-Datenbankschemas. Diese Option wird nur für Meine SQL Datenbanken benötigt.

    • books_tableist der Aurora-Tabellenname.

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 Aurora - und Amazon Redshift Redshift-Datenbanken

Die folgende My-Tabelle. Sie zeigt die Zuordnungen eines Aurora My SQL - oder Aurora Postgre-Datentyps zu einem entsprechenden Amazon Redshift SQL Redshift-Datentyp. Amazon Aurora 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.

Aurora My SQL

Aurora Mein 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

Aurora Postgret SQL

ETLZero-Integrationen für Aurora Postgre unterstützen SQL keine benutzerdefinierten Datentypen oder Datentypen, die durch Erweiterungen erstellt wurden.

Wichtig

Die Funktion „Keine ETL Integration mit Amazon Redshift“ für Aurora Postgre SQL befindet sich in der Vorschauversion. Sowohl die Dokumentation als auch die Funktion können sich ändern. Sie können diese Funktion nur in Testumgebungen verwenden, nicht in Produktionsumgebungen. Die Allgemeinen Geschäftsbedingungen für die Vorschauversion finden Sie unter Betas und Vorschauen in AWS Nutzungsbedingungen.

Aurora SQL Postgre-Datentyp Amazon-Redshift-Datentyp Beschreibung Einschränkungen
bigint BIGINT 8-Byte-Ganzzahl mit Vorzeichen
große Seriennummer BIGINT 8-Byte-Ganzzahl mit Vorzeichen
Bit (n) VARBYTE(n) Binärwert mit variabler Länge
etwas variierend (n) VARBYTE(n) Binärwert mit variabler Länge
Bit VARBYTE(1024000) Zeichenkettenwert variabler Länge bis zu 1.024.000 Byte
boolesch BOOLEAN Logischer boolescher Wert (wahr/falsch)
bytea VARBYTE(1024000) Zeichenkettenwert variabler Länge bis zu 1.024.000 Byte
Zeichen (n) CHAR(n) Zeichenfolge mit fester Länge
Charakter variierend (n) VARCHAR(65535) Zeichenkettenwert mit variabler Länge
date DATE Kalenderdatum (Jahr, Monat, Tag)
  • Werte größer als 9999-12-31 werden nicht unterstützt

  • B.C.-Werte werden nicht unterstützt

double precision DOUBLE PRECISION Gleitkommazahlen mit doppelter Genauigkeit Subnormale Werte werden nicht unterstützt
Ganzzahl INTEGER 4-Byte-Ganzzahl mit Vorzeichen
money DECIMAL(20,3) Betrag in der Währung
numeric(p,s) DECIMAL(p, s) Zeichenkettenwert mit variabler Länge
  • NaNWerte werden nicht unterstützt

  • Eine Genauigkeit von mehr als 38 und eine Skalierung von mehr als 37 werden nicht unterstützt

  • Negative Skala wird nicht unterstützt

real REAL Gleitkommazahl mit einfacher Genauigkeit
smallint SMALLINT 2-Byte-Ganzzahl mit Vorzeichen
kleine Seriennummer SMALLINT 2-Byte-Ganzzahl mit Vorzeichen
serial INTEGER 4-Byte-Ganzzahl mit Vorzeichen
text VARCHAR(65535) Zeichenkettenwert variabler Länge bis zu 65.535 Byte
Zeit [(p)] [ohne Zeitzone] VARCHAR(19) Zeichenkettenwert mit variabler Länge bis zu 19 Byte Infinityund -Infinity Werte werden nicht unterstützt
Zeit [(p)] mit Zeitzone VARCHAR(22) Zeichenkettenwert mit variabler Länge bis zu 22 Byte Infinityund -Infinity Werte werden nicht unterstützt
Zeitstempel [(p)] [ohne Zeitzone] TIMESTAMP Datum und Uhrzeit (ohne Zeitzone)
  • Infinityund -Infinity Werte werden nicht unterstützt

  • Werte, die größer als 9999-12-31 nicht unterstützt sind

  • B.C.-Werte werden nicht unterstützt

Zeitstempel [(p)] mit Zeitzone TIMESTAMPTZ Datum und Uhrzeit (mit Zeitzone)
  • Infinityund -Infinity Werte werden nicht unterstützt

  • Werte, die größer als 9999-12-31 nicht unterstützt sind

  • B.C.-Werte werden nicht unterstützt