Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Aggiungere dati a un 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à.

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 cluster Aurora DB) e interrogarli in Amazon Redshift

Per completare la creazione di un'integrazione Zero-ETL che replichi i dati da Amazon 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 cluster Aurora DB del che desideri replicare nel tuo data warehouse Amazon Redshift.

Nota

Esistono differenze tra i tipi di dati in Amazon 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 client MySQL o PostgreSQL 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 utilità pg_dump e pg_restore PostgreSQL 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.

MySQL

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

PostgreSQL

L'esempio seguente utilizza il terminale psql interattivo PostgreSQL. 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 in Amazon Redshift

Dopo aver aggiunto i dati al cluster Aurora DB del , 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'istruzione SELECT per interrogare i tuoi dati. In questo esempio, è possibile eseguire il comando seguente per selezionare tutti i dati dalla tabella creata nel di origine del cluster Aurora DB:

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

    • 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 o Aurora PostgreSQL con un tipo di dati Amazon Redshift corrispondente. Amazon Aurora attualmente supporta solo questi tipi di dati per 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.

Tipo di dati Aurora 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

Aurora PostgreSQL

Le integrazioni zero-ETL per Aurora PostgreSQL non supportano tipi di dati personalizzati o tipi di dati creati da estensioni.

Tipo di dati Aurora PostgreSQL Tipo di dati di Amazon Redshift Descrizione Limitazioni
array SUPER Dati o documenti semistrutturati come valori Nessuno
bigint BIGINT Intero a otto byte firmato Nessuno
grande seriale BIGINT Intero a otto byte firmato Nessuno
bit variabile (n) BARBYTE (n) Valore binario a lunghezza variabile fino a 16.777.216 byte Nessuno
bit (n) BARBYTE (n) Valore binario a lunghezza variabile fino a 16.777.216 byte Nessuno
bit, bit variabile BARBYTE (16777216) Valore binario a lunghezza variabile fino a 16.777.216 byte Nessuno
Booleano BOOLEAN Booleano logico (vero/falso) Nessuno
bytea BARBYTE (16777216) Valore binario a lunghezza variabile fino a 16.777.216 byte Nessuno
carattere (n) CHAR(n) Valore di stringa di caratteri a lunghezza fissa fino a 65.535 byte Nessuno
carattere variabile (n) VARCHAR(65535) Valore della stringa di caratteri a lunghezza variabile fino a 65.535 caratteri Nessuno
cid BIGINT

Intero a otto byte firmato

Nessuno
sidro

ARCHAR (19)

Valore di stringa a lunghezza variabile fino a 19 caratteri

data DATE Data di calendario (anno, mese, giorno)

Valori superiori a 294.276 d.C. Non sono supportati

double precision DOUBLE PRECISION Numeri a virgola mobile a doppia precisione Valori subnormali non completamente supportati

gtsvector

VARCHAR(65535)

Valore di stringa a lunghezza variabile fino a 65.535 caratteri

Nessuno
inet

VARCHAR (19)

Valore di stringa a lunghezza variabile fino a 19 caratteri

Nessuno
integer INTEGER Intero a quattro byte firmato Nessuno

int2 vector

SUPER Dati o documenti semistrutturati come valori. Nessuno
intervallo INTERVAL Durata del tempo Sono supportati solo i tipi INTERVAL che specificano un qualificatore anno/mese o un qualificatore da giorno a secondo.
json SUPER Dati o documenti semistrutturati come valori Nessuno
jsonb SUPER Dati o documenti semistrutturati come valori Nessuno
percorso json VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno

macaddr

VARCHAR (17) Valore di stringa a lunghezza variabile fino a 17 caratteri Nessuno

macaddr8

BARRA (23) Valore di stringa a lunghezza variabile fino a 23 caratteri Nessuno
money DECIMALE (20,3) Importo in valuta Nessuno
nome VARCHAR (64) Valore di stringa a lunghezza variabile fino a 64 caratteri Nessuno
numeric(p,s) DECIMAL(p,s) Valore di precisione fisso definito dall'utente
  • NaNvalori non supportati

  • La precisione e la scala devono essere definite in modo esplicito e non devono essere superiori a 38 (precisione) e 37 (scala)

  • Scala negativa non supportata

oid BIGINT Intero a otto byte firmato Nessuno
vettore oid SUPER Dati o documenti semistrutturati come valori. Nessuno
pg_brin_bloom_summary VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
pg_dependencies VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
pg_lsn VARCHAR (17) Valore di stringa a lunghezza variabile fino a 17 caratteri Nessuno
pg_mcv_list VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
pg_ndistinct VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
pg_node_tree VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
pg_snapshot VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
real REAL Numero in virgola mobile a precisione singola Valori subnormali non completamente supportati
recursore VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
smallint SMALLINT Intero a due byte firmato Nessuno
seriale piccolo SMALLINT Intero a due byte firmato Nessuno
seriale INTEGER Intero a quattro byte firmato Nessuno
text VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
tid VARCHAR (23) Valore di stringa a lunghezza variabile fino a 23 caratteri Nessuno
ora [(p)] senza fuso orario VARCHAR (19) Valore di stringa a lunghezza variabile fino a 19 caratteri Infinitye -Infinity valori non supportati
ora [(p)] con fuso orario VARCHAR (22) Valore di stringa a lunghezza variabile fino a 22 caratteri Infinitye -Infinity valori non supportati
timestamp [(p)] senza fuso orario TIMESTAMP Data e ora (senza fuso orario)
  • Infinitye -Infinity valori non supportati

  • 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

tsquery VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
tsvector VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
txid_snapshot VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno
uuid VARCHAR (36) Stringa di 36 caratteri a lunghezza variabile Nessuno
xid BIGINT Intero a otto byte firmato Nessuno
xid8 DECIMALE (20, 0) Decimale a precisione fissa Nessuno
xml VARCHAR(65535) Valore di stringa a lunghezza variabile fino a 65.535 caratteri Nessuno

Operazioni DDL per Aurora PostgreSQL

Amazon Redshift è derivato da PostgreSQL, quindi condivide diverse funzionalità con Aurora PostgreSQL grazie alla loro architettura PostgreSQL comune. Le integrazioni zero-ETL sfruttano queste somiglianze per semplificare la replica dei dati da Aurora PostgreSQL ad Amazon Redshift, mappando i database per nome e utilizzando la struttura condivisa di database, schemi e tabelle.

Considera i seguenti punti quando gestisci le integrazioni Aurora PostgreSQL Zero-ETL:

  • L'isolamento è gestito a livello di database.

  • La replica avviene a livello di database.

  • I database Aurora PostgreSQL sono mappati ai database Amazon Redshift per nome, con i dati che fluiscono verso il corrispondente database Redshift rinominato se l'originale viene rinominato.

Nonostante le loro somiglianze, Amazon Redshift e Aurora PostgreSQL presentano differenze importanti. Le seguenti sezioni descrivono le risposte del sistema Amazon Redshift per le operazioni DDL comuni.

Operazioni di database

La tabella seguente mostra le risposte di sistema per le operazioni DDL del database.

Operazione DDL Risposta del sistema Redshift
CREATE DATABASE Nessuna operazione
DROP DATABASE Amazon Redshift elimina tutti i dati nel database Redshift di destinazione.
RENAME DATABASE Amazon Redshift elimina tutti i dati nel database di destinazione originale e risincronizza i dati nel nuovo database di destinazione. Se il nuovo database non esiste, devi crearlo manualmente. Per istruzioni, consulta Creare un database di destinazione in Amazon Redshift.

Operazioni dello schema

La tabella seguente mostra le risposte del sistema per le operazioni DDL dello schema.

Operazione DDL Risposta del sistema Redshift
CREATE SCHEMA Nessuna operazione
DROP SCHEMA Amazon Redshift elimina lo schema originale.
RENAME SCHEMA Amazon Redshift elimina lo schema originale, quindi risincronizza i dati nel nuovo schema.

Operazioni sulle tabelle

La tabella seguente mostra le risposte del sistema per le operazioni DDL della tabella.

Operazione DDL Risposta del sistema Redshift
CREATE TABLE

Amazon Redshift crea la tabella.

Alcune operazioni impediscono la creazione della tabella, ad esempio la creazione di una tabella senza una chiave primaria o l'esecuzione del partizionamento dichiarativo. Per ulteriori informazioni, consulta Limitazioni di Aurora PostgreSQL e Risoluzione dei problemi delle ETL integrazioni zero di Aurora con Amazon Redshift.

DROP TABLE Amazon Redshift abbandona la situazione.
TRUNCATE TABLE Amazon Redshift tronca la tabella.
ALTER TABLE (RENAME...) Amazon Redshift rinomina la tabella o la colonna.
ALTER TABLE (SET SCHEMA)

Amazon Redshift elimina la tabella nello schema originale e risincronizza la tabella nel nuovo schema.

ALTER TABLE (ADD PRIMARY KEY) Amazon Redshift aggiunge una chiave primaria e risincronizza la tabella.
ALTER TABLE (ADD COLUMN) Amazon Redshift aggiunge una colonna alla tabella.
ALTER TABLE (DROP COLUMN)

Amazon Redshift elimina la colonna se non è una colonna chiave primaria. Altrimenti, risincronizza la tabella.

ALTER TABLE (SET LOGGED/UNLOGGED) Se modifichi la tabella in loggata, Amazon Redshift risincronizza la tabella. Se modifichi la tabella in unlogged, Amazon Redshift elimina la tabella.
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.