Passer au contenu principal

Conversion de fichiers Parquet en CSV ou JSON

Vous pouvez utiliser clickhouse-local pour convertir des fichiers entre n’importe lesquels des formats d’entrée et de sortie pris en charge par ClickHouse (soit plus de 70 formats différents !). Dans cet article, nous allons convertir un fichier Parquet dans S3 en fichiers CSV et JSON. Commençons par le commencement. ClickHouse dispose d’un ensemble de fonctions de table qui lisent des fichiers, des bases de données et d’autres ressources, puis convertissent les données sous forme de table. Pour l’illustrer, supposons que nous ayons un fichier Parquet dans S3. Nous utiliserons la fonction de table s3 pour le lire (ClickHouse sait qu’il s’agit d’un fichier Parquet d’après son nom). Mais d’abord, téléchargeons le binaire clickhouse :

Accéder aux données à l’aide d’une fonction de table

Vérifions que nous pouvons lire le fichier en exécutant DESCRIBE sur la table générée par la fonction de table s3 :
Ce fichier contient les prix des biens immobiliers vendus au Royaume-Uni. La réponse ressemble à ceci :
Vous pouvez exécuter n’importe quelle requête sur les données. Par exemple, voyons quelles villes ont le prix moyen des logements le plus élevé :
La réponse ressemble à ceci :

Convertir le fichier Parquet en CSV

Vous pouvez envoyer le résultat de n’importe quelle requête SQL dans un fichier. Récupérons toutes les colonnes de notre fichier Parquet dans S3 et écrivons le résultat dans un nouveau fichier CSV. Comme le fichier de sortie se termine par .csv, ClickHouse sait qu’il doit utiliser le format de sortie CSV :
Vérifions que cela a bien fonctionné :

Convertir le fichier Parquet au format JSON

Pour convertir le fichier Parquet au format JSON, modifiez simplement l’extension du nom du fichier de sortie :
Vérifions que cela a bien fonctionné :

Convertir un CSV en Parquet

Cela fonctionne dans les deux sens : nous pouvons facilement lire le nouveau fichier CSV et le convertir en fichier Parquet. Le fichier local house_prices.csv peut être lu dans ClickHouse à l’aide de la fonction de table file, et ClickHouse écrit le fichier au format Parquet en se basant sur l’extension .parquet du nom de fichier (ou nous aurions pu ajouter la clause FORMAT Parquet) :
Comme nous l’avons vu plus haut, vous pouvez utiliser n’importe lequel des formats d’entrée et de sortie de ClickHouse avec clickhouse local pour convertir facilement des fichiers vers différents formats.
Dernière modification le 2 juillet 2026