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à.
Caricamento di dati in Amazon Redshift
Esistono diversi modi per caricare i dati in un database Amazon Redshift. Una delle fonti di dati più diffuse da caricare sono i file Amazon S3. La tabella seguente riassume alcuni dei metodi da utilizzare partendo da una fonte Amazon S3.
Metodo da usare | Descrizione | Quando è necessario il metodo |
---|---|---|
COPY command (Comando COPY) |
Esegue un'importazione di file in batch per caricare i dati dai tuoi 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. |
Deve essere utilizzato quando sono necessari requisiti di base per il caricamento manuale dei dati per avviare manualmente l'ingestione di file in batch. Questo metodo viene utilizzato principalmente con pipeline di inserimento di file personalizzate e di terze parti o carichi di lavoro di inserimento di file una tantum o ad hoc. |
COPIA... Comando CREATE JOB (copia automatica) |
Esegue automaticamente i comandi COPY quando viene creato un nuovo file su percorsi tracciati di Amazon S3. Per ulteriori informazioni, consulta Crea un'integrazione di eventi S3 per copiare automaticamente i file dai bucket Amazon S3. |
Deve essere utilizzato quando una pipeline di importazione di file deve importare automaticamente i dati quando viene creato un nuovo file su Amazon S3. Amazon Redshift tiene 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 di data lake |
Crea tabelle esterne per eseguire query sul data lake sui tuoi file Amazon S3, quindi esegui il comando INSERT INTO per caricare i risultati delle tue query sul data lake nelle tabelle locali. Per ulteriori informazioni, consulta Tabelle esterne per Redshift Spectrum. |
Deve essere utilizzato in uno dei seguenti scenari:
|
Altri metodi che puoi prendere in considerazione | ||
Importazione di dati in streaming |
L'ingestione di streaming consente l'inserimento a bassa latenza e alta velocità di dati di flusso da Amazon Kinesis Data Streams e Amazon Managed Streaming for Apache Kafka in una vista materializzata fornita da Amazon Redshift o Redshift Serverless. Per ulteriori informazioni, consulta Nozioni di base sull'importazione dati in streaming da Amazon Kinesis Data Streams e Guida introduttiva all'acquisizione di streaming da sorgenti Apache Kafka. |
Deve essere preso in considerazione per i casi d'uso in cui i dati vengono prima trasmessi in streaming in file su Amazon S3 e poi caricati da Amazon S3. Se non è necessario conservare i dati su 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é importare il contenuto della tabella in una tabella locale. Per ulteriori informazioni, consulta Amazon Redshift Spectrum. |
Deve essere usato quando lo use case non richiede le prestazioni delle query di tabelle locali in Amazon Redshift. |
Caricamento in batch con Amazon Redshift Query Editor v2 |
Puoi preparare ed eseguire visivamente i carichi di lavoro di importazione di file in batch su Amazon Redshift Query Editor v2. Per ulteriori informazioni, consulta Caricamento dei dati da S3 nella Amazon Redshift Management Guide. |
Deve essere usato quando desideri che l'editor di query v2 prepari le istruzioni COPY e desideri uno strumento visivo per semplificare il processo di preparazione delle istruzioni COPY. |
Carica dati da un file locale utilizzando Amazon Redshift Query Editor v2 |
Puoi caricare i file direttamente dal tuo 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 Amazon Redshift Management Guide. |
Deve essere utilizzato quando è necessario caricare rapidamente file dal computer locale per eseguire query occasionali. Con questo metodo, Amazon Redshift Query Editor v2 archivia temporaneamente il file su un bucket Amazon S3 di proprietà del cliente ed esegue un comando di copia utilizzando questo percorso 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 alloca il carico di lavoro ai nodi Amazon Redshift ed esegue le operazioni di caricamento in parallelo, incluso l'ordinamento delle righe e la distribuzione dei dati tra le slice di nodo.
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 AWS risorse, Amazon Redshift deve disporre dell'autorizzazione ad accedere a tali risorse e a eseguire le azioni necessarie per accedere ai dati. Puoi usare 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.