ClickHouse で “Cannot Append Data in Parquet Format” エラーを解消する
DB::Exception: Cannot append data in format Parquet to file, because this format doesn't support appends. (CANNOT_APPEND_TO_FILE)
Parquet フォーマットを使用する File テーブルエンジンのテーブルを作成したとします。
data/default/parquet_test フォルダ内に data.Parquet という名前のファイルが作成されます。さらに別のバッチを insert しようとすると:
engine_file_allow_create_multiple_files 設定を有効にすると、INSERT ごとに新しいファイルを作成するよう ClickHouse に指示できます。有効にすると、insert のたびに次の pattern に従った名前で新しいファイルが作成されます。
data.Parquet -> data.1.Parquet -> data.2.Parquet など:
実際に試してみましょう。2 つのコマンドを parquet.sql という 1 つのファイルにまとめます。
clickhouse-client を使って実行します:
data/default/parquet_test に 2 つのファイルが表示されます (以降の insert ごとに、新しいファイルが 1 つずつ作成されます) 。
engine_file_allow_create_multiple_files 設定は、JSON や ORC など、追記できない他のデータフォーマットにも適用されます。