Passer au contenu principal

Résolution de l’erreur “Cannot Append Data in Parquet Format” dans ClickHouse

Obtenez-vous l’erreur “Cannot append data in format Parquet to file” dans ClickHouse ? En règle générale, l’erreur se présente comme suit : DB::Exception: Cannot append data in format Parquet to file, because this format doesn't support appends. (CANNOT_APPEND_TO_FILE) Supposons que vous créiez une table utilisant le moteur de table File avec le format Parquet.
Vous ne pouvez écrire dans la table qu’une seule fois :
Cela crée un fichier nommé data.Parquet dans le dossier data/default/parquet_test. Si vous essayez ensuite d’insérer un autre batch :
…vous obtenez l’erreur suivante :
Vous ne pouvez pas ajouter de données à des fichiers Parquet dans ClickHouse. En revanche, vous pouvez demander à ClickHouse de créer un nouveau fichier pour chaque INSERT en activant le paramètre engine_file_allow_create_multiple_files. Une fois ce paramètre activé, un nouveau fichier est créé à chaque insertion, avec un nom suivant ce modèle : data.Parquet -> data.1.Parquet -> data.2.Parquet, etc. : Essayons. Nous allons placer nos deux commandes dans un seul fichier nommé parquet.sql :
Exécutez-le avec clickhouse-client :
Et maintenant, vous verrez deux fichiers dans data/default/parquet_test (ainsi qu’un nouveau fichier pour chaque insert suivant).
Le paramètre engine_file_allow_create_multiple_files s’applique à d’autres formats de données qui ne permettent pas l’ajout, comme JSON et ORC.
Dernière modification le 29 juin 2026