JSONのエクスポート
インポートに使用されるほぼすべてのJSON形式は、エクスポートにも使用できます。最も一般的なのはJSONEachRow
です:
または、カラム名をスキップすることでディスクスペースを節約できるJSONCompactEachRow
を使用できます:
データ型を文字列としてオーバーライドする
ClickHouseはデータ型を尊重し、それに応じてJSONを標準に従ってエクスポートします。しかし、すべての値を文字列としてエンコードする必要がある場合は、JSONStringsEachRow形式を使用できます:
これで、hits
の数値カラムは文字列としてエンコードされます。文字列としてのエクスポートは、すべてのJSON*形式でサポートされており、JSONStrings\*
およびJSONCompactStrings\*
形式を探求できます:
データと一緒にメタデータをエクスポートする
一般的なJSON形式は、アプリで人気があり、結果データだけでなくカラムの型やクエリの統計もエクスポートします:
JSONCompact形式は、同じメタデータを表示しますが、データ自体はコンパクトな形式を使用します:
すべての値を文字列としてエンコードするには、JSONStrings
またはJSONCompactStrings
のバリアントを検討してください。
JSONデータと構造をコンパクトにエクスポートする方法
データとその構造を効率的に得るには、JSONCompactEachRowWithNamesAndTypes
形式を使用します:
これにより、カラム名と型の2つのヘッダー行を前置したコンパクトなJSON形式が使用されます。この形式は、別のClickHouseインスタンスや他のアプリにデータを取り込むために使用できます。
JSONをファイルにエクスポートする
エクスポートされたJSONデータをファイルに保存するには、INTO OUTFILE句を使用できます:
ClickHouseは、ほぼ3700万件のレコードをJSONファイルにエクスポートするのにわずか2秒しかかかりません。また、COMPRESSION
句を使用して、オンザフライで圧縮することもできます:
こちらは実行に時間がかかりますが、はるかに小さい圧縮ファイルを生成します: