Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Lavora con i dati CSV in AWS Glue

Modalità Focus
Lavora con i dati CSV in AWS Glue - Amazon Athena

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

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

Questa pagina descrive come creare uno schema da file CSV che contengono virgolette attorno ai valori dei dati per ogni colonna o da file CSV che includono valori di intestazione. AWS Glue

Gestione dei dati CSV racchiusi tra virgolette

Supponiamo che un file CSV contenga campi di dati racchiusi tra virgolette, come nell'esempio seguente.

"John","Doe","123-555-1231","John said \"hello\"" "Jane","Doe","123-555-9876","Jane said \"hello\""

Per eseguire una query in Athena su una tabella creata da un file CSV contenente valori tra virgolette, è necessario modificare le proprietà della tabella in AWS Glue modo da utilizzare Open De. CSVSer Per ulteriori informazioni su OpenCSV SerDe, vedere. Apri CSV SerDe per l'elaborazione di CSV

Per modificare le proprietà delle tabelle nella console AWS Glue
  1. Nel riquadro di navigazione della AWS Glue console, scegli Tabelle.

  2. Scegli il collegamento per la tabella che desideri modificare, quindi scegli Actions (Operazioni), Edit table details (Modifica tabella).

  3. Nella pagina Edit table (Modifica tabella), apporta le modifiche seguenti:

    • Per Serialization lib (Libreria serializzazione), inserisci org.apache.hadoop.hive.serde2.OpenCSVSerde.

    • Per Parametri Serde, inserisci i seguenti valori per le chiavi escapeChar, quoteChar e separatorChar:

      • Per escapeChar, inserire una barra rovesciata (\).

      • Per quoteChar, inserire una virgoletta doppia (").

      • Per separatorChar, inserire una virgola (,).

  4. Seleziona Salva.

Per ulteriori informazioni, consulta la sezione relativa alla visualizzazione e modifica dei dettagli tabella nella Guida per sviluppatori AWS Glue .

Puoi anche aggiornare le proprietà AWS Glue delle tabelle a livello di codice. Utilizzate l'operazione AWS Glue UpdateTableAPI o il AWS CLI comando update-table per modificare il SerDeInfo blocco nella definizione della tabella, come nel seguente esempio JSON.

"SerDeInfo": { "name": "", "serializationLib": "org.apache.hadoop.hive.serde2.OpenCSVSerde", "parameters": { "separatorChar": "," "quoteChar": "\"" "escapeChar": "\\" } },

Gestione dei file CSV con intestazioni

Quando definisci una tabella in Athena con un'istruzione CREATE TABLE, puoi utilizzare la proprietà tabella skip.header.line.count per ignorare gli header nei dati CSV, come nell'esempio seguente.

... STORED AS TEXTFILE LOCATION 's3://amzn-s3-demo-bucket/csvdata_folder/'; TBLPROPERTIES ("skip.header.line.count"="1")

In alternativa, puoi rimuovere gli header CSV in anticipo in modo che le informazioni degli header non siano incluse nei risultati delle query di Athena di Athena. Un metodo per procedere è utilizzare i processi AWS Glue che eseguono le operazioni di estrazione, trasformazione e caricamento (ETL). È possibile scrivere script AWS Glue utilizzando un linguaggio che è un'estensione del dialetto PySpark Python. Per ulteriori informazioni, consulta Authoring Jobs in AWS Glue nella AWS Glue Developer Guide.

L'esempio seguente mostra una funzione in AWS Glue uno script che scrive un frame dinamico utilizzando from_options e imposta l'opzione writeHeader format su false, che rimuove le informazioni di intestazione:

glueContext.write_dynamic_frame.from_options(frame = applymapping1, connection_type = "s3", connection_options = {"path": "s3://amzn-s3-demo-bucket/MYTABLEDATA/"}, format = "csv", format_options = {"writeHeader": False}, transformation_ctx = "datasink2")
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.