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 dei dati da file compressi e non compressi
Quando carichi dati compressi, ti consigliamo di suddividere i dati per ogni tabella in più file. Quando carichi dati delimitati non compressi, il COPY comando utilizza l'elaborazione parallela (MPP) e gli intervalli di scansione per caricare dati da file di grandi dimensioni in un bucket Amazon S3.
Caricamento dei dati da più file compressi
Nei casi in cui sono stati compressi dati, ti consigliamo di suddividerli per ogni tabella in più file. Il COPY comando può caricare dati da più file in parallelo. È possibile caricare più file specificando un prefisso comune o chiave di prefisso, per l'insieme o elencando in modo esplicito i file in un file manifest.
Dividi i dati in file in modo che il numero di file sia un multiplo del numero di sezioni nel cluster. In questo modo Amazon Redshift può dividere i dati in modo uniforme tra le sezioni. Il numero di sezioni per nodo dipende dalla dimensione dei nodi del cluster. Ad esempio, ogni nodo di calcolo dc2.large ha due slice e ogni nodo di calcolo dc2.8xlarge ha 16 slice. Per ulteriori informazioni sul numero di sezioni per ogni dimensione di nodo, consulta Informazioni su cluster e nodi nella Guida alla gestione di Amazon Redshift.
Tutti i nodi partecipano all'esecuzione di query parallele, lavorando sui dati di calcolo distribuiti più uniformemente possibile all'interno delle sezioni. Se disponi di un cluster con due nodi dc2.large, potresti suddividere i dati in quattro file o più di quattro. Amazon Redshift non prende in considerazione la dimensione di file nella suddivisione del carico di lavoro. Pertanto, è necessario assicurarsi che i file abbiano approssimativamente le stesse dimensioni, da 1 MB a 1 GB dopo la compressione.
Per utilizzare i prefissi degli oggetti per identificare i file di caricamento, denomina ciascun file con un prefisso comune. Ad esempio, il file venue.txt
può essere diviso in quattro file, come segue.
venue.txt.1 venue.txt.2 venue.txt.3 venue.txt.4
Se metti più file in una cartella del bucket e specifichi il nome della cartella come prefisso, COPY carica tutti i file nella cartella. Se elenchi in modo esplicito i file da caricare tramite un file manifest, i file possono risiedere in diversi bucket o diverse cartelle.
Per ulteriori informazioni sui file manifest, consulta Example: COPY from Amazon S3 using a manifest.
Caricamento di dati da file delimitati e non compressi
Quando carichi dati delimitati e non compressi, il COPY comando utilizza l'architettura massively parallel processing (MPP) di Amazon Redshift. Amazon Redshift utilizza automaticamente le sezioni che lavorano in parallelo per caricare intervalli di dati da un file di grandi dimensioni in un bucket Amazon S3. Il file deve essere delimitato per il caricamento parallelo. Ad esempio, tubo delimitato. Il caricamento automatico e parallelo dei dati con il COPY comando è disponibile anche per CSV i file. È possibile utilizzare l'elaborazione parallela impostando le chiavi di distribuzione nelle tabelle. Per ulteriori informazioni sulle chiavi di distribuzione, consulta Distribuzione dei dati per l'ottimizzazione delle query.
Il caricamento automatico e parallelo dei dati non è supportato quando la COPY query include una delle seguenti parole chiave: ESCAPEREMOVEQUOTES, eFIXEDWIDTH.
I dati dai file vengono caricati nella tabella di destinazione, una riga per riga. I campi nel file di dati corrispondono alle colonne della tabella in ordine, da sinistra a destra. I campi nei file di dati possono essere a larghezza fissa o delimitati da caratteri; il delimitatore predefinito è una barra verticale (|). Per impostazione predefinita, vengono caricate tutte le colonne della tabella, ma è possibile definire facoltativamente un elenco di colonne separato da virgole. Se una colonna della tabella non è inclusa nell'elenco di colonne specificato nel COPY comando, viene caricata con un valore predefinito. Per ulteriori informazioni, consulta Caricamento dei valori delle colonne predefiniti.
Segui questo procedimento generale per caricare dati da Amazon S3, quando i dati non sono compressi e delimitati:
-
Caricare i file su Amazon S3.
-
Esegui un COPY comando per caricare la tabella.
-
Verifica i dati siano stati caricati correttamente.
Per esempi di COPY comandi, vedereCOPYesempi. Per informazioni sui dati caricati in Amazon Redshift, consultare le tabelle di sistema STL_LOAD_COMMITS e STL_LOAD_ERRORS.
Per ulteriori informazioni sui nodi e sulle sezioni contenute in ciascun nodo, consulta Informazioni su cluster e nodi nella Guida alla gestione di Amazon Redshift.