Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Per completare la creazione di un'integrazione Zero-ETL che replichi i dati da Amazon RDS in Amazon Redshift, devi creare un database di destinazione in Amazon Redshift.
Innanzitutto, connettiti al cluster o al gruppo di lavoro Amazon Redshift e crea un database con un riferimento al tuo identificatore di integrazione. Quindi, puoi aggiungere dati al cluster del database RDS di origine e vederli replicati in Amazon Redshift.
Argomenti
Creazione di un database di destinazione in Amazon Redshift
Prima di poter iniziare a replicare i dati in Amazon Redshift dopo la creazione di un'integrazione, devi creare un database di destinazione nel data warehouse di destinazione. Questo database di destinazione deve includere un riferimento all'identificatore di integrazione. Puoi utilizzare la console Amazon Redshift o Editor di query v2 per creare il database.
Per istruzioni sulla creazione di un database di destinazione, consulta Creazione di un database di destinazione in Amazon Redshift.
Dopo aver configurato l'integrazione, puoi aggiungere alcuni dati al cluster del database RDS che desideri replicare nel tuo data warehouse Amazon Redshift.
Nota
Esistono differenze tra i tipi di dati in Amazon RDS e Amazon Redshift. Per una tabella di mappature dei tipi di dati, consulta Differenze tra i tipi di dati tra i database RDS e Amazon Redshift.
Innanzitutto, connettiti al del database di origine utilizzando il client di tua scelta. Per istruzioni, consulta Connessione alla tua istanza DB MySQL.
Quindi, crea una tabella e inserisci una riga di dati di esempio.
Importante
Assicurati che la tabella abbia una chiave primaria. Altrimenti, non può essere replicata nel data warehouse di destinazione.
L'esempio seguente utilizza l'utilità MySQL Workbench
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');
Interrogazione dei dati di Amazon RDS in Amazon Redshift
Dopo aver aggiunto i dati al cluster del database RDS, questi vengono replicati in Amazon Redshift e sono pronti per essere interrogati.
Esecuzione di query sui dati replicati
-
Vai alla console Amazon Redshift e scegli Editor di query v2 nel riquadro di navigazione a sinistra.
-
Connettiti al cluster o al gruppo di lavoro e scegli il database di destinazione (creato dall'integrazione) dal menu a tendina (destination_database in questo esempio). Per istruzioni sulla creazione di un database di destinazione, consulta Creazione di un database di destinazione in Amazon Redshift.
-
Usa un'istruzione SELECT per interrogare i tuoi dati. In questo esempio, è possibile eseguire il comando seguente per selezionare tutti i dati dalla tabella creata nel database RDS di origine del cluster :
SELECT * from
my_db
."books_table
";-
è il nome dello schema del database RDS.my_db
-
è il nome della tabella RDS.books_table
-
È inoltre possibile interrogare i dati utilizzando un client a riga di comando. Per esempio:
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
Nota
Per distinguere tra maiuscole e minuscole, usa le virgolette doppie (" ") per i nomi di schemi, tabelle e colonne. Per ulteriori informazioni, consulta enable_case_sensitive_identifier.
Differenze tra i tipi di dati tra i database RDS e Amazon Redshift
La tabella seguente mostra la mappatura di un RDS per MySQL. Le tabelle mostrano le mappature di un tipo di dati Aurora MySQL tipo di dati Amazon Redshift corrispondente. Amazon RDS Aurora attualmente supporta solo questi tipi di dati per integrazioni zero-ETL.
Se una tabella nel del database di origine include un tipo di dati non supportato, la tabella non è sincronizzata e non è utilizzabile dal target Amazon Redshift. Lo streaming dall'origine alla destinazione va avanti, ma la tabella con il tipo di dati non supportato non è disponibile. Per correggere la tabella e renderla disponibile in Amazon Redshift, devi annullare manualmente la modifica iniziale e aggiornare l'integrazione eseguendo ALTER DATABASE...INTEGRATION
REFRESH
.
Tipo di dati RDS per MySQL | Tipo di dati di Amazon Redshift | Descrizione | Limitazioni |
---|---|---|---|
INT | INTEGER | Intero a quattro byte firmato | Nessuno |
SMALLINT | SMALLINT | Intero a due byte firmato | Nessuno |
TINYINT | SMALLINT | Intero a due byte firmato | Nessuno |
MEDIUMINT | INTEGER | Intero a quattro byte firmato | Nessuno |
BIGINT | BIGINT | Intero a otto byte firmato | Nessuno |
INT UNSIGNED | BIGINT | Intero a otto byte firmato | Nessuno |
TINYINT UNSIGNED | SMALLINT | Intero a due byte firmato | Nessuno |
MEDIUMINT UNSIGNED | INTEGER | Intero a quattro byte firmato | Nessuno |
BIGINT UNSIGNED | DECIMAL(20,0) | Numerico esatto di precisione selezionabile | Nessuno |
DECIMALE (p, s) = NUMERICO (p, s) | DECIMAL(p,s) | Numerico esatto di precisione selezionabile |
Precisione superiore a 38 e scala superiore a 37 non supportate |
DECIMALE (p, s) SENZA SEGNO = NUMERICO (p, s) SENZA SEGNO | DECIMAL(p,s) | Numerico esatto di precisione selezionabile |
Precisione superiore a 38 e scala superiore a 37 non supportate |
FLOAT4/REALE | REAL | Numero in virgola mobile a precisione singola | Nessuno |
FLOAT4/REAL NON FIRMATO | REAL | Numero in virgola mobile a precisione singola | Nessuno |
DOUBLE/REAL/FLOAT8 | DOUBLE PRECISION | Numero in virgola mobile a precisione doppia | Nessuno |
DOUBLE/REAL/FLOAT8 NON FIRMATO | DOUBLE PRECISION | Numero in virgola mobile a precisione doppia | Nessuno |
BIT (n) | BARBYTE(8) | Valore binario a lunghezza variabile | Nessuno |
BINARY(n) | BARBYTE (n) | Valore binario a lunghezza variabile | Nessuno |
VARBINARY(n) | VARBYTE (n) | Valore binario a lunghezza variabile | Nessuno |
CHAR(n) | VARCHAR(n) | Valore di stringa di lunghezza variabile | Nessuno |
VARCHAR(n) | VARCHAR(n) | Valore di stringa di lunghezza variabile | Nessuno |
TEXT | VARCHAR(65535) | Valore di stringa a lunghezza variabile fino a 65.535 caratteri | Nessuno |
TINYTEXT | VARCHAR(255) | Valore di stringa a lunghezza variabile fino a 255 caratteri | Nessuno |
MEDIUMTEXT | VARCHAR(65535) | Valore di stringa a lunghezza variabile fino a 65.535 caratteri | Nessuno |
LONGTEXT | VARCHAR(65535) | Valore di stringa a lunghezza variabile fino a 65.535 caratteri | Nessuno |
ENUM | VARCHAR(1020) | Valore di stringa a lunghezza variabile fino a 1.020 caratteri | Nessuno |
SET | VARCHAR(1020) | Valore di stringa a lunghezza variabile fino a 1.020 caratteri | Nessuno |
DATE | DATE | Data di calendario (anno, mese, giorno) | Nessuno |
DATETIME | TIMESTAMP | Data e ora (senza fuso orario) | Nessuno |
TIMESTAMP(p) | TIMESTAMP | Data e ora (senza fuso orario) | Nessuno |
TIME | VARCHAR(18) | Valore di stringa a lunghezza variabile fino a 18 caratteri | Nessuno |
ANNO | VARCHAR(4) | Valore di stringa a lunghezza variabile fino a 4 caratteri | Nessuno |
JSON | SUPER | Dati o documenti semistrutturati come valori | Nessuno |