Aggiungere dati a un di origine (cluster Aurora DB) e interrogarli in Amazon Redshift - Amazon Aurora

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

Aggiungere dati a un di origine (cluster Aurora DB) e interrogarli in Amazon Redshift

Per completare la creazione di un'ETLintegrazione zero che replichi i dati da Aurora 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 Aurora DB del di origine e vederli replicati in Amazon Redshift.

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 del cluster Aurora DB che desideri replicare nel tuo data warehouse Amazon Redshift.

Nota

Esistono differenze tra i tipi di dati in Aurora e Amazon Redshift. Per una tabella di mappature dei tipi di dati, consulta Differenze tra i tipi di dati tra i database Aurora e Amazon Redshift.

Innanzitutto, connettiti al cluster DB del di origine utilizzando il SQL client My SQL o Postgre di tua scelta. Per istruzioni, consulta Connessione a un cluster database Amazon Aurora.

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.

Le SQL utilità pg_dump e pg_restore Postgre inizialmente creano tabelle senza una chiave primaria e poi le aggiungono in seguito. Se utilizzi una di queste utilità, ti consigliamo di creare prima uno schema e poi di caricare i dati in un comando separato.

Mio SQL

L'esempio seguente utilizza l'utilità My SQL 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');

Postgree SQL

L'esempio seguente utilizza il terminale interattivo psql SQL Postgre. Quando ti connetti al cluster, includi il database denominato che hai specificato durante la creazione dell'integrazione.

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");

Interrogazione dei dati di Aurora in Amazon Redshift

Dopo aver aggiunto i dati al del cluster Aurora DB, questi vengono replicati in Amazon Redshift e sono pronti per essere interrogati.

Esecuzione di query sui dati replicati
  1. Vai alla console Amazon Redshift e scegli Editor di query v2 nel riquadro di navigazione a sinistra.

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

  3. Usa un'SELECTistruzione per interrogare i tuoi dati. In questo esempio, è possibile eseguire il comando seguente per selezionare tutti i dati dalla tabella creata nel Aurora DB:

    SELECT * from my_db."books_table";
    Esegui un'SELECTistruzione all'interno dell'editor di query Redshift. Il risultato è una singola riga di dati di esempio che è stata aggiunta al RDS database.
    • my_dbè il nome dello schema del database Aurora. Questa opzione è necessaria solo per I miei SQL database.

    • books_tableè il nome della tabella Aurora.

È 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 Aurora e Amazon Redshift

La che mostra le mappature di un tipo di dati Aurora My SQL o Aurora SQL Postgre con un tipo di dati Amazon Redshift corrispondente. Aurora attualmente supporta solo questi tipi di dati per le integrazioni zero. ETL

Se una tabella nel cluster DB del 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.

SQL

Aurora Il mio tipo di dati SQL Tipo di dati di Amazon Redshift Descrizione Limitazioni
INT INTEGER Intero a quattro byte firmato
SMALLINT SMALLINT Intero a due byte firmato
TINYINT SMALLINT Intero a due byte firmato
MEDIUMINT INTEGER Intero a quattro byte firmato
BIGINT BIGINT Intero a otto byte firmato
INT UNSIGNED BIGINT Intero a otto byte firmato
TINYINT UNSIGNED SMALLINT Intero a due byte firmato
MEDIUMINT UNSIGNED INTEGER Intero a quattro byte firmato
BIGINT UNSIGNED DECIMAL(20,0) Numerico esatto di precisione selezionabile
DECIMAL(p, s) = NUMERIC (p, s) DECIMAL(p, s) Numerico esatto di precisione selezionabile

Precisione superiore a 38 e scala superiore a 37 non supportate

DECIMAL(p, s) UNSIGNED = NUMERIC (p, s) UNSIGNED DECIMAL(p, s) Numerico esatto di precisione selezionabile

Precisione superiore a 38 e scala superiore a 37 non supportate

FLOAT4/REAL REAL Numero in virgola mobile a precisione singola
FLOAT4/REAL UNSIGNED REAL Numero in virgola mobile a precisione singola
DOUBLE/REAL/FLOAT8 DOUBLE PRECISION Numero in virgola mobile a precisione doppia
DOUBLE/REAL/FLOAT8 UNSIGNED DOUBLE PRECISION Numero in virgola mobile a precisione doppia
BIT(n) VARBYTE(8) Valore binario a lunghezza variabile
BINARY(n) VARBYTE(n) Valore binario a lunghezza variabile
VARBINARY(n) VARBYTE(n) Valore binario a lunghezza variabile
CHAR(n) VARCHAR(n) Valore di stringa di lunghezza variabile
VARCHAR(n) VARCHAR(n) Valore di stringa di lunghezza variabile
TEXT VARCHAR(65535) Valore di stringa di lunghezza variabile fino a 65535 byte
TINYTEXT VARCHAR(255) Valore di stringa di lunghezza variabile fino a 255 byte
MEDIUMTEXT VARCHAR(65535) Valore di stringa di lunghezza variabile fino a 65535 byte
LONGTEXT VARCHAR(65535) Valore di stringa di lunghezza variabile fino a 65535 byte
ENUM VARCHAR(1020) Valore di stringa di lunghezza variabile fino a 1020 byte
SET VARCHAR(1020) Valore di stringa di lunghezza variabile fino a 1020 byte
DATE DATE Data di calendario (anno, mese, giorno)
DATETIME TIMESTAMP Data e ora (senza fuso orario)
TIMESTAMP(p) TIMESTAMP Data e ora (senza fuso orario)
TIME VARCHAR(18) Valore di stringa di lunghezza variabile fino a 18 byte
YEAR VARCHAR(4) Valore di stringa di lunghezza variabile fino a 4 byte
JSON SUPER Dati o documenti semistrutturati come valori

Aurora Postgre SQL

ETLLe integrazioni zero per Aurora SQL Postgre non supportano tipi di dati personalizzati o tipi di dati creati da estensioni.

Importante

La funzionalità zero ETL integrazioni con Amazon Redshift per Aurora SQL Postgre è in versione di anteprima. La documentazione e la funzionalità sono soggette a modifiche. Puoi utilizzare questa funzionalità solo in ambienti di test, non in ambienti di produzione. Per i termini e le condizioni in anteprima, consulta Beta e anteprime in AWS Termini del servizio.

Tipo di dati Aurora SQL Postgre Tipo di dati di Amazon Redshift Descrizione Limitazioni
bigint BIGINT Intero a otto byte firmato
grande seriale BIGINT Intero a otto byte firmato
bit (n) VARBYTE(n) Valore binario a lunghezza variabile
bit variabile (n) VARBYTE(n) Valore binario a lunghezza variabile
bit VARBYTE(1024000) Valore di stringa a lunghezza variabile fino a 1.024.000 byte
booleano BOOLEAN Booleano logico (vero/falso)
bytea VARBYTE(1024000) Valore di stringa a lunghezza variabile fino a 1.024.000 byte
carattere (n) CHAR(n) Stringa di caratteri a lunghezza fissa
carattere variabile (n) VARCHAR(65535) Valore di stringa di lunghezza variabile
data DATE Data di calendario (anno, mese, giorno)
  • Valori maggiori di quelli 9999-12-31 non supportati

  • Valori B.C. non supportati

double precision DOUBLE PRECISION Numeri a virgola mobile a doppia precisione Valori subnormali non supportati
integer INTEGER Intero a quattro byte firmato
money DECIMAL(20,3) Importo in valuta
numeric(p,s) DECIMAL(p, s) Valore di stringa di lunghezza variabile
  • NaNvalori non supportati

  • Precisione superiore a 38 e scala superiore a 37 non supportate

  • Scala negativa non supportata

real REAL Numero in virgola mobile a precisione singola
smallint SMALLINT Intero a due byte firmato
seriale piccolo SMALLINT Intero a due byte firmato
seriale INTEGER Intero a quattro byte firmato
text VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 byte
ora [(p)] [senza fuso orario] VARCHAR(19) Valore di stringa a lunghezza variabile fino a 19 byte Infinitye valori non supportati -Infinity
ora [(p)] con fuso orario VARCHAR(22) Valore di stringa a lunghezza variabile fino a 22 byte Infinitye valori non supportati -Infinity
timestamp [(p)] [senza fuso orario] TIMESTAMP Data e ora (senza fuso orario)
  • Infinitye valori non supportati -Infinity

  • Valori maggiori di quelli 9999-12-31 non supportati

  • Valori B.C. non supportati

timestamp [(p)] con fuso orario TIMESTAMPTZ Data e ora (con fuso orario)
  • Infinitye -Infinity valori non supportati

  • Valori maggiori di quelli 9999-12-31 non supportati

  • Valori B.C. non supportati