

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

# Usa la compressione in Athena
<a name="compression-formats"></a>

Athena supporta diversi formati di compressione per la lettura e la scrittura di dati, inclusa la lettura da una tabella che utilizza più formati di compressione. Ad esempio, Athena può leggere correttamente i dati in una tabella che utilizza il formato file Parquet quando alcuni file Parquet vengono compressi con Snappy e altri file Parquet vengono compressi con GZIP. Lo stesso principio vale per i formati di archiviazione ORC, file di testo e JSON.

## Formati di compressione supportati
<a name="compression-support-formats"></a>

Athena supporta i seguenti formati di compressione:
+ **BZIP2** — Formato che utilizza l'algoritmo Burrows-Wheeler.
+ **DEFLATE**: algoritmo di compressione basato su [LZSS](https://en.wikipedia.org/wiki/Lempel%E2%80%93Ziv%E2%80%93Storer%E2%80%93Szymanski) e [codifica Huffman](https://en.wikipedia.org/wiki/Huffman_coding). [Deflate](https://en.wikipedia.org/wiki/Deflate) è rilevante solo per il formato file Avro.
+ **GZIP**: algoritmo di compressione basato su Deflate. Per le tabelle Hive nel motore Athena versioni 2 e 3 e le tabelle Iceberg nel motore Athena versione 2, il formato di compressione in scrittura predefinito per i file nei formati di archiviazione dei file di testo e Parquet è GZIP. I file nel formato `tar.gz` non sono supportati.
+ **LZ4**— Questo membro della famiglia Lempel-Ziv 77 (LZ7) si concentra anche sulla velocità di compressione e decompressione piuttosto che sulla compressione massima dei dati. LZ4 ha i seguenti formati di inquadratura:
  + **LZ4 Raw/Unframed**: implementazione standard senza cornice del formato di compressione a blocchi. LZ4 [Per ulteriori informazioni, vedere la descrizione del formato a blocchi su. LZ4 ](https://github.com/lz4/lz4/blob/dev/doc/lz4_Block_format.md) GitHub
  + **LZ4 framed**: la consueta implementazione del framing di. LZ4 Per ulteriori informazioni, vedere la [descrizione del formato del LZ4 frame](https://github.com/lz4/lz4/blob/dev/doc/lz4_Frame_format.md) su. GitHub
  + **LZ4 hadoop-compatible**: l'implementazione di Apache Hadoop di. LZ4 [Questa implementazione include la compressione con la classe .java. LZ4 BlockCompressorStream](https://github.com/apache/hadoop/blob/f67237cbe7bc48a1b9088e990800b37529f1db2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/compress/BlockCompressorStream.java)
+ **LZO**: formato che utilizza l'algoritmo Lempel-Ziv-Oberhumer, che si concentra sull'elevata velocità di compressione e decompressione anziché sulla compressione massima dei dati. LZO ha due implementazioni:
  + **LZO standard**: per ulteriori informazioni, consulta il [riassunto](http://www.oberhumer.com/opensource/lzo/#abstract) su LZO sul sito Web di Oberhumer.
  + **Compatibile con LZO con hadoop: questa implementazione racchiude** [l'algoritmo LZO con la classe .java. BlockCompressorStream](https://github.com/apache/hadoop/blob/f67237cbe7bc48a1b9088e990800b37529f1db2a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/compress/BlockCompressorStream.java)
+ **SNAPPY** — Algoritmo di compressione che fa parte della famiglia Lempel-Ziv 77 (). LZ7 Snappy si concentra sull'elevata velocità di compressione e decompressione piuttosto che sulla compressione massima dei dati.
+ **ZLIB**: basato su Deflate, ZLIB è il formato di compressione della scrittura di default per i file nel formato di archiviazione dati ORC. [Per ulteriori informazioni, consulta la pagina zlib su.](https://github.com/madler/zlib) GitHub
+  **ZSTD**: l'[algoritmo di compressione dei dati in tempo reale Zstandard](http://facebook.github.io/zstd/) è un algoritmo di compressione veloce che fornisce rapporti di compressione elevati. La libreria Zstandard (ZSTD) viene fornita come software open source tramite una licenza BSD. ZSTD è la compressione predefinita per le tabelle Iceberg. Quando si scrivono dati compressi ZSTD, Athena utilizza il livello di compressione ZSTD 3 per impostazione predefinita. Per ulteriori informazioni sui livelli di compressione ZSTD in Athena, consulta [Usa i livelli di compressione ZSTD](compression-support-zstd-levels.md).

**Nota**  
Athena non supporta la scrittura di file Parquet compressi con LZ4 o formati LZO. Sono però supportate le letture per questi formati di compressione.

## Specifica i formati di compressione
<a name="compression-support-specifying-compression-formats"></a>

Quando si scrivono istruzioni CREATE TABLE o CTAS, è possibile specificare le proprietà di compressione che specificano il tipo di compressione da utilizzare quando Athena scrive su tali tabelle.
+ Per CTAS, consultare [Proprietà tabella CTAS](create-table-as.md#ctas-table-properties). Per alcuni esempi, consulta [Esempi di query CTAS](ctas-examples.md).
+ Per CREATE TABLE, consultare [ALTER TABLE SET TBLPROPERTIES](alter-table-set-tblproperties.md) per un elenco delle proprietà della tabella di compressione.

## Specifica l’assenza di compressione
<a name="compression-support-specifying-no-compression"></a>

Le istruzioni CREATE TABLE supportano la scrittura di file non compressi. Per scrivere file non compressi, utilizza la sintassi seguente: 
+ CREATE TABLE (file di testo o JSON): in `TBLPROPERTIES`, specifica `write.compression = NONE`.
+ CREATE TABLE (Parquet): in `TBLPROPERTIES`, specifica `parquet.compression = UNCOMPRESSED`.
+ CREATE TABLE (ORC): in `TBLPROPERTIES`, specifica `orc.compress = NONE`.

## Note e risorse
<a name="compression-support-notes-and-resources"></a>
+ Attualmente, estensioni di file in lettere maiuscole come `.GZ` o `.BZIP2` non sono riconosciute da Athena. Evitare di utilizzare set di dati con estensioni di file in lettere maiuscole o rinominare le estensioni dei file di dati in lettere minuscole.
+ Per i dati in CSV, TSV e JSON, Athena determina il tipo di compressione dall'estensione del file. Se non è presente alcuna estensione di file, i dati vengono gestiti da Athena come testo normale non compresso. Se i dati sono compressi, verifica che il nome del file includa l'estensione della compressione, ad esempio `gz`.
+ Il formato di file ZIP non è supportato.
+ Per interrogare i log di Amazon Data Firehose da Athena, i formati supportati includono la compressione GZIP o i file ORC con compressione SNAPPY.
+ Per ulteriori informazioni sull'uso della compressione, consulta la sezione 3 («Comprimi e dividi file») del post del blog AWS Big Data I [10 migliori consigli per l'ottimizzazione delle prestazioni per Amazon Athena](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/).

**Topics**
+ [Specifica i formati di compressione](#compression-support-specifying-compression-formats)
+ [Specifica l’assenza di compressione](#compression-support-specifying-no-compression)
+ [Note e risorse](#compression-support-notes-and-resources)
+ [Compressione delle tabelle Hive](compression-support-hive.md)
+ [Compressione delle tabelle Iceberg](compression-support-iceberg.md)
+ [Livelli di compressione ZSTD](compression-support-zstd-levels.md)