Apache Parquet (Stockage en colonnes)
Apache Parquet est un format de stockage en colonnes conçu pour des analyses efficaces sur de grands ensembles de données. Il est la norme dans les écosystèmes big data (Spark, Hive, DuckDB) et les entrepôts de données cloud.
Type MIME
application/vnd.apache.parquet
Type
Binaire
Compression
Sans perte
Avantages
- + Excellent compression through columnar encoding
- + Fast analytical queries — reads only needed columns
- + Predicate pushdown skips irrelevant row groups entirely
- + Standard in Spark, DuckDB, Pandas, and cloud data lakes
Inconvénients
- − Not suited for transactional row-level updates
- − More complex to write than CSV or JSON
- − Schema evolution has some limitations
Quand utiliser .PARQUET
Utilisez Parquet pour les données analytiques, les data lakes, les datasets d'apprentissage automatique et partout où les requêtes portent sur des sous-ensembles de colonnes. Préférez CSV pour les échanges de données simples ou Arrow pour le traitement en mémoire.
Détails techniques
Parquet utilise un stockage en colonnes avec des row groups, des pages et un élagage par métadonnées. Prend en charge Snappy, gzip, LZ4, Zstd et la compression par dictionnaire. Le schéma est intégré via les types logiques Parquet (horodatage, décimal, etc.). Compatible avec les schémas Arrow.
Historique
Parquet a été créé en 2013 par Twitter et Cloudera, inspiré du format Dremel de Google. Devenu un projet de haut niveau Apache en 2015 et la norme de facto pour le stockage de données analytiques dans les environnements cloud et big data.