00

En bref

  • Apache Parquet est un format binaire de données en colonnes qui stocke les tables en groupes de lignes et blocs de colonnes, dont la lecture dépend des fonctions prises en charge par le lecteur.
  • Sur un ordinateur Windows ou Mac disposant de Python et de PyArrow, exécutez import pyarrow.parquet as pq puis table = pq.read_table('fichier.parquet'). table.to_pandas() produit un DataFrame. Pour choisir les colonnes : pq.read_table('fichier.parquet', columns=['colonne']). Pour un groupe de lignes : pq.ParquetFile('fichier.parquet').read_row_group(0). Ces exemples lisent un fichier local sur un ordinateur ; si le fichier est sur votre téléphone, copiez-le sur un ordinateur et suivez les mêmes étapes.
  • Parquet n’est pas censé contenir de contenu exécutable, mais peut stocker des données arbitraires ou sensibles. L’implémentation et la configuration du lecteur comptent : CVE-2025-46762 décrit une exécution de code dans parquet-avro avec les modèles specific ou reflect. Le modèle generic n’est pas concerné par cette vulnérabilité ; la fiche recommande une mise à niveau vers 1.15.2. Cela n’exclut pas d’autres risques. Le chiffrement modulaire peut laisser des zones en clair et AES CTR seul n’authentifie pas les données.
01

Fichiers Apache Parquet : ouvrir, lire et convertir

L’extension enregistrée est .parquet et le type de média est application/vnd.apache.parquet. Chaque groupe de lignes contient des blocs de colonnes. Les métadonnées en fin de fichier permettent de retrouver les blocs nécessaires ; elles sont suivies de leur longueur sur quatre octets en little-endian et du marqueur final. Les fichiers ordinaires utilisent PAR1, ceux dont le pied est chiffré utilisent PARE. Voir la [description officielle du format](https://parquet.apache.org/docs/file-format/).

Gardez l’original

Lisez le fichier comme table Arrow, puis utilisez table.to_pandas() si nécessaire. Pour convertir Parquet en CSV, exportez ensuite avec un outil compatible CSV. Vérifiez le résultat : des informations propres à l’application, comme un index pandas, peuvent être perdues. pq.write_table(table, 'sortie.parquet') écrit un fichier Parquet. Un index omis lors de la création de la table Arrow ne sera pas restauré lors de la relecture.

02

Comment l’ouvrir

Sur un ordinateur Windows ou Mac disposant de Python et de PyArrow, exécutez import pyarrow.parquet as pq puis table = pq.read_table('fichier.parquet'). table.to_pandas() produit un DataFrame. Pour choisir les colonnes : pq.read_table('fichier.parquet', columns=['colonne']). Pour un groupe de lignes : pq.ParquetFile('fichier.parquet').read_row_group(0). Ces exemples lisent un fichier local sur un ordinateur ; si le fichier est sur votre téléphone, copiez-le sur un ordinateur et suivez les mêmes étapes.

Je veux seulement le consulter

Sur un ordinateur Windows ou Mac disposant de Python et de PyArrow, exécutez import pyarrow.parquet as pq puis table = pq.read_table('fichier.parquet'). table.to_pandas() produit un DataFrame. Pour choisir les colonnes : pq.read_table('fichier.parquet', columns=['colonne']). Pour un groupe de lignes : pq.ParquetFile('fichier.parquet').read_row_group(0). Ces exemples lisent un fichier local sur un ordinateur ; si le fichier est sur votre téléphone, copiez-le sur un ordinateur et suivez les mêmes étapes.

Je dois l’envoyer

Lisez le fichier comme table Arrow, puis utilisez table.to_pandas() si nécessaire. Pour convertir Parquet en CSV, exportez ensuite avec un outil compatible CSV. Vérifiez le résultat : des informations propres à l’application, comme un index pandas, peuvent être perdues. pq.write_table(table, 'sortie.parquet') écrit un fichier Parquet. Un index omis lors de la création de la table Arrow ne sera pas restauré lors de la relecture.

03

Sécurité

Parquet n’est pas censé contenir de contenu exécutable, mais peut stocker des données arbitraires ou sensibles. L’implémentation et la configuration du lecteur comptent : CVE-2025-46762 décrit une exécution de code dans parquet-avro avec les modèles specific ou reflect. Le modèle generic n’est pas concerné par cette vulnérabilité ; la fiche recommande une mise à niveau vers 1.15.2. Cela n’exclut pas d’autres risques. Le chiffrement modulaire peut laisser des zones en clair et AES CTR seul n’authentifie pas les données.

Arrêtez-vous si vous voyez ceci

Expéditeur inconnu, nom qui se termine par deux extensions, contenu qui ne correspond pas à l’extension : vérifiez avant d’ouvrir.

04

La conversion

Lisez le fichier comme table Arrow, puis utilisez table.to_pandas() si nécessaire. Pour convertir Parquet en CSV, exportez ensuite avec un outil compatible CSV. Vérifiez le résultat : des informations propres à l’application, comme un index pandas, peuvent être perdues. pq.write_table(table, 'sortie.parquet') écrit un fichier Parquet. Un index omis lors de la création de la table Arrow ne sera pas restauré lors de la relecture.

Avant de convertir

Convertissez une copie, jamais l’original, puis comparez qualité, métadonnées et mise en page avec le fichier de départ.

05

Questions fréquentes

Qu’est-ce qu’un fichier Parquet et à quoi sert-il ?

C’est un fichier binaire qui stocke des données tabulaires par colonnes. Les groupes de lignes contiennent des blocs de colonnes, ce qui permet à un lecteur compatible de récupérer uniquement les colonnes nécessaires.

Comment lire un fichier Parquet avec Python ?

Avec PyArrow disponible, exécutez import pyarrow.parquet as pq puis table = pq.read_table('fichier.parquet'). Le résultat est une table Arrow ; table.to_pandas() la transforme en DataFrame pandas.

Comment ouvrir un fichier Parquet sous Windows ?

Dans un environnement Python sous Windows disposant de PyArrow, utilisez pyarrow.parquet.read_table('fichier.parquet'). to_pandas() permet ensuite d’obtenir un DataFrame. Le lecteur doit prendre en charge les fonctions utilisées dans le fichier.

Comment ouvrir un fichier Parquet sur Mac ?

Dans un environnement Python sur Mac disposant de PyArrow, utilisez pyarrow.parquet.read_table('fichier.parquet'). Ajoutez columns=['colonne'] pour sélectionner les colonnes. Vérifiez la compatibilité du lecteur avec les fonctions du fichier.

Comment ouvrir un fichier Parquet sur téléphone ?

Copiez le fichier du téléphone sur un ordinateur, puis lisez-le avec Python et PyArrow en utilisant pyarrow.parquet.read_table('fichier.parquet'). Aucune application précise pour téléphone n’est recommandée ici.

Comment résoudre une erreur de compatibilité de lecture Parquet ?

Vérifiez la prise en charge des encodages utilisés et de Data Page V2. Un ancien lecteur peut échouer sur une fonction inconnue. Un type logique non reconnu peut être renvoyé sous son type physique sous-jacent. Utilisez un lecteur compatible.

Faut-il lire toute la table Parquet ou seulement certaines colonnes ?

Lisez toute la table si toutes les colonnes sont nécessaires. Pour quelques champs, utilisez l’argument columns de PyArrow. La lecture de groupes de lignes individuels permet aussi d’éviter une lecture complète.

Comment convertir Parquet en CSV ?

Lisez Parquet avec PyArrow et, si nécessaire, transformez la table avec to_pandas(). Exportez ensuite avec un outil compatible CSV. Vérifiez le résultat : des informations propres à l’application, comme un index pandas, peuvent être perdues.

Pourquoi y a-t-il un index perdu de Parquet vers pandas après enregistrement et relecture ?

Si l’index pandas d’origine n’a pas été conservé lors de la création de la table Arrow, l’écriture puis la lecture de Parquet ne le restaurent pas. Vérifiez le traitement de l’index avant l’enregistrement et comparez le DataFrame relu à l’original.

Est-il sûr d’ouvrir un fichier Parquet ?

L’extension ne suffit pas à le déterminer. Le fichier peut contenir des données sensibles et le lecteur présenter des vulnérabilités. CVE-2025-46762 concerne specific et reflect dans parquet-avro et recommande la version 1.15.2 ; generic n’est pas concerné par cette vulnérabilité précise.

Que vérifier avant de lire un fichier Parquet chiffré ?

Vérifiez que le lecteur prend en charge les fonctions de chiffrement utilisées. Les colonnes et le pied peuvent être protégés séparément, avec d’autres zones en clair. AES CTR seul ne fournit pas d’authentification : le chiffrement n’implique pas toujours une protection complète de l’intégrité.

06

Formats associés

Sources

IANA — application/vnd.apache.parquet · IANA 官方媒体类型登记

Apache Parquet — File Format · Apache Parquet 官方格式文档

Apache Arrow — Reading and Writing Single Files · Apache Arrow 官方使用文档

Apache Parquet — Parquet format versions · Apache Parquet 官方兼容性文档

CVE-2025-46762 · CVE 官方漏洞记录;分配机构为 Apache Software Foundation

Apache Parquet — Modular Encryption · Apache Parquet 官方加密规范