Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dal 1º novembre 2025. Se desideri utilizzare le UDF Python, creale prima di tale data. Le UDF Python esistenti continueranno a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog
Caricamento dei dati in Amazon Redshift
Sono disponibili diversi modi per caricare i dati in un database Amazon Redshift. Una delle origini di dati popolari da caricare sono i file Amazon S3. Nella tabella seguente sono riepilogati alcuni dei metodi da utilizzare con l’avvio da un’origine Amazon S3.
| Metodo da usare | Descrizione | Quando è necessario un metodo |
|---|---|---|
COPY command (Comando COPY) |
Esegue un’importazione di file in batch per caricare i dati dai file Amazon S3. Questo metodo sfrutta le funzionalità di elaborazione parallela di Amazon Redshift. Per ulteriori informazioni, consulta Caricamento delle tabelle con il comando COPY. |
Utilizzalo quando sono necessari requisiti di base per il caricamento dei dati per avviare manualmente l’importazione di file in batch. Questo metodo viene usato principalmente con pipeline di importazione di file personalizzate e di terze parti o carichi di lavoro di importazione di file una tantum o ad hoc. |
Comando COPY... CREATE JOB (copia automatica) |
Esegue automaticamente i comandi COPY quando viene creato un nuovo file nei percorsi monitorati di Amazon S3. Per ulteriori informazioni, consulta Creare un’integrazione di eventi S3 per copiare automaticamente i file dai bucket Amazon S3. |
Utilizzalo quando una pipeline di importazione di file deve importare automaticamente i dati quando viene creato un nuovo file in Amazon S3. Amazon Redshift consente di tenere traccia dei file importati per prevenire la duplicazione dei dati. Questo metodo richiede la configurazione da parte dei proprietari di bucket Amazon S3. |
Caricamento da query sui data lake |
Crea tabelle esterne per eseguire query sui data lake per i file Amazon S3, quindi esegui il comando INSERT INTO per caricare i risultati delle query sui data lake nelle tabelle locali. Per ulteriori informazioni, consulta Tabelle esterne per Redshift Spectrum. |
Utilizzalo in uno dei seguenti scenari:
|
| Altri metodi da prendere in considerazione | ||
Importazione di dati in streaming |
L’importazione in streaming comporta l’importazione a bassa latenza e ad alta velocità di dati del flusso dal flusso di dati Amazon Kinesis e da Streaming gestito da Amazon per Apache Kafka in una vista materializzata con provisioning Amazon Redshift o una vista materializzata Redshift serverless. Per ulteriori informazioni, consulta Nozioni di base sull'importazione dati in streaming da Amazon Kinesis Data Streams e Nozioni di base sull’importazione in streaming da origini Apache Kafka. |
Prendilo in considerazione per i casi d’uso in cui i dati vengono prima trasmessi in streaming in file in Amazon S3 e poi caricati da Amazon S3. Se non è necessario conservare i dati in Amazon S3, spesso puoi prendere in considerazione lo streaming dei dati direttamente in Amazon Redshift. |
Esecuzione di query sui data lake |
Esecuzione di query direttamente da una tabella di data lake anziché importazione dei contenuti della tabella in una tabella locale. Per ulteriori informazioni, consulta Amazon Redshift Spectrum. |
Utilizzalo quando il caso d’uso non richiede le prestazioni delle query su tabelle locali in Amazon Redshift. |
Caricamento in batch con Amazon Redshift Query Editor V2 |
Puoi preparare ed eseguire i carichi di lavoro di importazione di file in batch in modo visivo in Amazon Redshift Query Editor V2. Per ulteriori informazioni, consulta Caricamento di dati da Amazon S3 nella Guida alla gestione di Amazon Redshift. |
Utilizzalo quando desideri che Query Editor V2 prepari le istruzioni COPY e desideri uno strumento visivo per semplificare il processo di preparazione delle istruzioni COPY. |
Caricare i dati da un file locale tramite Amazon Redshift Query Editor V2 |
Puoi caricare i file direttamente dal desktop nelle tabelle Amazon Redshift senza dover caricare manualmente i file in Amazon S3. Per ulteriori informazioni, consulta Caricamento di dati da una configurazione di file e da un flusso di lavoro locali nella Guida alla gestione di Amazon Redshift. |
Utilizzalo quando hai bisogno di caricare rapidamente i file dal computer locale per eseguire query una tantum. Con questo metodo, Amazon Redshift Query Editor v2 archivia temporaneamente il file in un bucket Amazon S3 di proprietà del cliente ed esegue un comando di copia utilizzando questo percorso di Amazon S3. |
Il modo più efficiente per caricare una tabella è il comando COPY. Inoltre, è possibile aggiungere dati alle tabelle usando i comandi INSERT, sebbene sia molto meno efficiente rispetto all'utilizzo di COPY. Il comando COPY è in grado di leggere da più file di dati o più flussi di dati contemporaneamente. Amazon Redshift assegna il carico di lavoro ai nodi Amazon Redshift ed esegue le operazioni di caricamento in parallelo, tra cui l’ordinamento delle righe e la distribuzione dei dati tra le sezioni dei nodi.
Nota
Le tabelle esterne di Amazon Redshift Spectrum sono di sola lettura. Non puoi utilizzare COPY o INSERT in una tabella esterna.
Per accedere ai dati su altre risorse AWS, Amazon Redshift deve disporre dell’autorizzazione ad accedere a tali risorse e a eseguire le azioni necessarie per l’accesso ai dati. Puoi utilizzare AWS Identity and Access Management (IAM) per limitare l’accesso degli utenti alle risorse e ai dati di Amazon Redshift.
Dopo il caricamento iniziale dei dati, se aggiungi, modifichi o elimini una grande quantità di dati, devi eseguire il follow-up tramite un comando VACUUM per riorganizzare i dati e recuperare spazio dopo le eliminazioni. Devi anche eseguire un comando ANALYZE per aggiornare le statistiche della tabella.