Un formato di file di archiviazione colonnare open source che offre prestazioni di compressione e query eccezionali per carichi di lavoro di analisi di big data
Archived. This article has not been updated since the publish date above. The dynamic nature of information means that previously accurate content can become outdated or even obsolete over time. Readers are advised to exercise due diligence and cross-check any information found in this blog post before making decisions or adopting any practices based on said information.
Apache Parquet è un formato open-source di file di dati a colonne, pensato per lo stoccaggio e il recupero efficiente dei dati. Offre una compressione efficiente dei dati e schemi di codifica con prestazioni avanzate per gestire dati complessi in massa. Apache Parquet è nato per essere usato come formato di interscambio comune per carichi di lavoro in batch e interattivi. È simile ad altri formati di file a colonne disponibili in Hadoop, in particolare RCFile e ORC.
Apache Parquet viene implementato utilizzando un algoritmo di assemblaggio che ha polverizzato ogni record e che contiene la struttura di dati complessa utilizzata per immagazzinare i dati. Parquet è ottimizzato per lavorare con dati complessi in massa e offre diverse modalità per la compressione efficiente dei dati e svariate tipologie di codifica dei dati. Questo approccio è particolarmente valido per le query che devono leggere colonne specifiche all'interno di una grande tabella. Parquet può leggere solo le colonne necessarie, riducendo drasticamente il traffico I/O.
CSV è un formato semplice e comune utilizzato da numerosi strumenti quali Excel, Fogli Google e molti altri. Anche se i file CSV sono il formato di default per le pipeline di elaborazione dei dati, presentano alcuni svantaggi:
Parquet aiuta gli utilizzatori a ridurre le necessità di stoccaggio di almeno un terzo per grandi set di dati; inoltre, migliora notevolmente i tempi di scansione e deserializzazione e, quindi, i costi complessivi. La tabella riportata sotto mette a confronto il risparmio economico e l'incremento di velocità garantiti dalla conversione dei dati da CSV a Parquet.
|
Set di dati |
Dimensioni su Amazon S3 |
Tempo di esecuzione della query |
Dati scansionati |
Costo |
|
Dati memorizzati in formato CSV |
1 TB |
236 secondi |
1,15 TB |
$5,75 |
|
Dati memorizzati in formato Apache Parquet |
130 GB |
6,78 secondi |
2,51 GB |
$0,01 |
|
Risparmi |
87% in meno utilizzando Parquet |
34x più veloce |
99% in meno di dati scansionati |
99,7% di risparmio |
Il progetto open-source Delta Lake si basa sul formato Parquet e lo estende con funzionalità aggiuntive come transazioni ACID sullo stoccaggio di oggetti in cloud, viaggi nel tempo, evoluzione degli schemi e semplici comandi DML (CREATE/UPDATE/INSERT/DELETE/MERGE). Delta Lake implementa molte di queste importanti funzionalità attraverso l'uso di un registro di transazioni ordinato che abilita funzionalità di data warehousing sullo stoccaggio di oggetti in cloud. Approfondisci l 'argomento leggendo questo post sul blog di Databricks: Diving into Delta Lake: Unpacking the Transaction Log.
Iscriviti al nostro blog e ricevi gli ultimi articoli direttamente nella tua casella di posta.