PostgreSQL のデータを Parquet、CSV、または JSON にエクスポートする方法
clickhouse-local を使えば簡単です。
postgresqltable function を使用してデータを読み取りますINTO OUTFILE _filename_ FORMAT句を使用し、必要な出力フォーマットを指定します
clickhouse-local を使用します。以下の手順でダウンロードしてください。
PostgreSQL を Parquet にエクスポートする
postgresql テーブル関数を使用すると、リモートの PostgreSQL サーバーに保存されているデータに対して SELECT (および INSERT) クエリを実行できます。たとえば、PostgreSQL のテーブルの内容全体を表示するには、次のようにします。
INTO OUTFILE を使ってファイルに書き出せます。作成するファイルのフォーマットは FORMAT で指定します。では、PostgreSQL テーブルの内容全体を取得し、Parquet ファイルに書き出してみましょう。
出力ファイル名の拡張子が
.parquet のため、ClickHouse は Parquet フォーマットを指定していると判断します。したがって、FORMAT Parquet 句は省略しています。PostgreSQL を CSV にエクスポートする
.csv 拡張子を見て、データをカンマ区切り形式で出力します。それ以外は、上記とまったく同じコマンドです。
PostgreSQL を JSON にエクスポートする
ここで終わりではありません。
clickhouse-local を使えば、PostgreSQL からデータを取得して、さまざまな出力フォーマット に送信できます。ClickHouse がファイル名の拡張子から出力フォーマットを判別できない場合や、使用するフォーマットを明示的に指定したい場合は、FOMRAT 句を追加します。PostgreSQL を別のプロセスにストリーム出力する
INTO OUTFILE を使う代わりに、テーブル関数の結果を別のプロセスにストリーム出力できます。以下は構文を示す簡単な例です。Linux の wc -l コマンドを使って行数を数えます。