Considerazioni quando si accede ai dati federati con Amazon Redshift - Amazon Redshift

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

Considerazioni quando si accede ai dati federati con Amazon Redshift

Alcune funzionalità di Amazon Redshift non supportano l'accesso ai dati federati. Di seguito sono riportate le limitazioni e le considerazioni correlate.

Di seguito sono riportate limitazioni e considerazioni che si applicano quando si utilizzano query federate con Amazon Redshift:

  • Le query federate supportano l'accesso in lettura a origini dati esterne. Non è possibile scrivere o creare oggetti database nell'origine dati esterna.

  • In alcuni casi, potresti accedere a un database cluster Amazon RDS o Aurora DB in una regione AWS diversa da Amazon Redshift. In questi casi, in genere sono previsti costi di latenza di rete e di fatturazione per il trasferimento di dati tra regioni. AWS Ti consigliamo di utilizzare un database globale Aurora con un endpoint locale nella stessa AWS regione del cluster Amazon Redshift. I database globali Aurora utilizzano un'infrastruttura dedicata per la replica basata sullo storage in due regioni AWS con latenza tipica inferiore a 1 secondo.

  • Considera il costo di accesso al cluster Amazon RDS o Aurora DB. Ad esempio, quando si utilizza questa funzionalità per accedere al cluster Aurora DB, i costi del cluster Aurora DB si basano sugli IOPS.

  • Le query federate non consentono l'accesso ad Amazon Redshift dal cluster RDS o Aurora DB.

  • Le query federate sono disponibili solo AWS nelle regioni in cui sono disponibili sia Amazon Redshift che Amazon RDS o il cluster Aurora DB.

  • Le query federate al momento non supportano ALTER SCHEMA. Per modificare uno schema, utilizzare DROP e quindi CREATE EXTERNAL SCHEMA.

  • Le query federate non funzionano con il dimensionamento simultaneo.

  • Le query federate al momento non supportano l'accesso tramite un wrapper di dati esterni PostgreSQL.

  • Le query federate per RDS MySQL o Aurora MySQL supportano l'isolamento delle transazioni a livello READ COMMITTED.

  • Se non specificato, Amazon Redshift si connette a RDS per MySQL o ad Aurora MySQL sulla porta 3306. Verifica il numero di porta MySQL prima di creare uno schema esterno per MySQL.

  • Se non specificato, Amazon Redshift si connette a RDS PostgreSQL o a PostgreSQL sulla porta 5432. Verifica il numero di porta PostgreSQL prima di creare uno schema esterno per PostgreSQL.

  • Quando si recuperano i tipi di dati TIMESTAMP e DATE da MySQL, i valori zero vengono trattati come NULL.

  • Se viene utilizzato un endpoint di lettura del database del cluster Aurora DB, può verificarsi un errore di «snapshot non valida». Ciò può essere evitato con uno dei seguenti metodi:

    • Utilizza un endpoint specifico dell'istanza del cluster Aurora DB (anziché utilizzare l'endpoint del cluster del cluster Aurora DB). Questo metodo utilizza l'isolamento delle transazioni REPEATABLE READ per i risultati dal database PostgreSQL.

    • Usa un endpoint Aurora DB Cluster Reader e imposta su false pg_federation_repeatable_read per la sessione. Questo metodo utilizza l'isolamento delle transazioni READ COMMITTED per i risultati dal database PostgreSQL. Per ulteriori informazioni sugli endpoint del lettore di cluster Aurora DB, consulta Tipi di endpoint del cluster Aurora DB nella Guida per l'utente di Amazon Aurora. Per informazioni su pg_federation_repeatable_read, consulta pg_federation_repeatable_read.

Di seguito sono riportate considerazioni per le transazioni quando si lavora con query federate su database PostgreSQL:

  • Se una query è costituita da tabelle federate, il nodo direttivo avvia una transazione READ ONLY REPEATABLE READ nel database remoto. Questa transazione rimane per la durata della transazione Amazon Redshift.

  • Il nodo direttivo crea uno snapshot del database remoto mediante chiamata pg_export_snapshot e crea un blocco di lettura sulle tabelle interessate.

  • Un nodo di calcolo avvia una transazione e utilizza lo snapshot creato nel nodo direttivo per emettere query al database remoto.

Versioni supportate dei database federati

Uno schema esterno di Amazon Redshift fa riferimento a un database in un RDS PostgreSQL o Aurora PostgreSQL esterno. In tal caso, si applicano le seguenti limitazioni:

  • Quando si crea uno schema esterno che fa riferimento al cluster Aurora DB, il database Aurora PostgreSQL deve avere la versione 9.6 o successiva.

  • Quando si crea uno schema esterno che fa riferimento ad Amazon RDS, la versione del database PostgreSQL Amazon RDS deve essere 9.6 o successiva.

Uno schema esterno Amazon Redshift può fare riferimento a un database in un RDS MySQL o Aurora MySQL esterno. In tal caso, si applicano le seguenti limitazioni:

  • Quando si crea uno schema esterno che fa riferimento al cluster Aurora DB, il database Aurora MySQL deve avere la versione 5.6 o successiva.

  • Quando si crea uno schema esterno che fa riferimento ad Amazon RDS, la versione del database RDS MySQL deve essere 5.6 o successiva.