Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il post del blog
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 a larghezza fissa da Amazon S3
I file di dati a larghezza fissa hanno lunghezze uniformi per ciascuna colonna di dati. Ogni campo in un file di dati a larghezza fissa ha esattamente la stessa lunghezza e la stessa posizione. Per i dati di carattere (CHAR e VARCHAR) in un file di dati a larghezza fissa, è necessario includere spazi iniziali o finali come segnaposti per mantenere uniforme la larghezza. Per gli interi, è necessario utilizzare gli zero iniziali come segnaposti. Un file di dati a larghezza fissa non ha delimitatori per separare le colonne.
Per caricare un file di dati a larghezza fissa in una tabella esistente, UTILIZZA il parametro FIXEDWIDTH nel comando COPY. Le specifiche della tabella devono corrispondere al valore di fixedwidth_spec affinché i dati vengano caricati correttamente.
Per caricare dati a larghezza fissa da un file a una tabella, emetti il seguente comando:
COPY table_name FROM 's3://amzn-s3-demo-bucket/prefix' IAM_ROLE 'arn:aws:iam::0123456789012:role/MyRedshiftRole' FIXEDWIDTH 'fixedwidth_spec';
Il parametro fixedwidth_spec è una stringa che contiene un identificatore per ogni colonna e la larghezza di ogni colonna, separati da due punti. Le coppie column:width sono delimitate da virgole. L'identificatore può essere qualsiasi elemento desiderato: numeri, lettere o una combinazione dei due. L'identificatore non ha alcuna relazione con la tabella stessa, quindi la specifica deve contenere le colonne nello stesso ordine della tabella.
I seguenti due esempi mostrano la stessa specifica, il primo con identificatori numerici e il secondo con identificatori di stringa:
'0:3,1:25,2:12,3:2,4:6'
'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6'
Il seguente esempio mostra dati di esempio a larghezza fissa che potrebbero essere caricati nella tabella VENUE utilizzando le specifiche precedenti:
1 Toyota Park Bridgeview IL0 2 Columbus Crew Stadium Columbus OH0 3 RFK Stadium Washington DC0 4 CommunityAmerica Ballpark Kansas City KS0 5 Gillette Stadium Foxborough MA68756
Il seguente comando COPY carica questo set di dati nella tabella VENUE:
COPY venue FROM 's3://amzn-s3-demo-bucket/data/venue_fw.txt' IAM_ROLE 'arn:aws:iam::0123456789012:role/MyRedshiftRole' FIXEDWIDTH 'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6';